- Berfokus pada usaha verifikasi pada unit terkecil dari disain software.
- Jalur kendali yang penting dites untuk menemukan errors, terbatas pada modul tersebut.
- Berorientasi white box
- Tahapan dapat dilakukan secara paralel pada banyak komponen.
- Tes data antar modul dibutuhkan sebelum inisialisasi tes lainnya.
- Pemilihan jalur eksekusi testing adalah tugas yang esensial selama unit test.
- Test cases harus didisain untuk mencakup kesalahan dari komputasi yang salah, komparasi yang tak benar atau alur kendali yang tak tepat.
- Kesalahan komputasi yang umum terjadi:
- Komparasi dan alur kendali merupakan satu kesatuan. Biasanya perubahan alur kendali terjadi setelah komparasi.
- Test case harus mencakup kesalahan:
- Operator logika dan prioritas yang tak benar
- Kemungkinan persamaan jika kesalahan presisi, menjadikan hasil dari persamaan tidak sebagaimana yang diharapkan.
- Kesalahan komparasi antar variabel.
- Terminasi loop yang tidak konsisten atau tidak semestinya.
- Kegagalan keluar bilamana konflik iterasi terjadi.
- Modifikasi variabel loop yang tidak semestinya.
- Disain yang baik meliputi kondisi kesalahan yang diantisipasi dan jalur penanganan kesalahan diset.Pendekatan ini disebut sebagai antibugging oleh Yourdon [YOU75].
- Kesalahan potensial yang harus dites saat evaluasi penanganan kesalahan:
- Setelah kode dikembangkan, dan diverifikasi terhadap tingkat disain komponen bersangkutan, disain test case dari unit test dimulai.
- Drivers dan stubs menimbulkan biaya overhead.
- Bila drivers dan stubs cukup sederhana, overhead yang sebenarnya menjadi relatif rendah.
- Unit testing disederhanakan bila suatu komponen didisain dengan kohesi tinggi.
Stubs : Merupakan program kecil di mana tercakup prosedur/fungsi yang akan dipanggil oleh unit/modul program yang sedang di uji.
Dengan stub data dan kondisi yang di berikan kepada unit/modul program dapat di atur sesuai dengan kebutuhan pengujian.