Tolong jelaskan mengenai Teknik dari Pengujian unit

Pengujian uni ini umumnya otomatis, tapi mungkin masih dilakukan secara manual. IEEE tidak menganjurkan salah satunya dibandingkan yang lain. Tujuanpengujian unit ini adalah untuk mengisolasi suatu unit dan memvalidasi kebenarannya. Pendekatan manual dari pengujian unit dapat menggunakan dokumen yang berisi perintah langkah demi langkah. Namun ini dapat dilakukan dengan efisien dengan otomatisasi, dan memungkinkan banyak manfaat yang tercantum dalam artikel ini. Sebaliknya, jika tidak direncanakan dengan hati-hati, kasus pengujian unit yang ceroboh dapat dieksekusi sebagai kasus uji integrasi yang melibatkan banyak komponen-komponen perangkat lunak, dan dengan demikian menghalangi pencapaian kebanyakan tujuan yang ditetapkan untuk pengujian unit, atau malah menggagalkan semuanya.

Untuk sepenuhnya merealisasikan efek isolasi saat menggunakan pendekatan otomatis, unit atau badan kode yang diuji dieksekusi di dalam kerangka kerja di luar lingkungan alamiahnya. Dengan kata lain, unit tersebut dieksekusi di luar produk atau konteks tempat unit tersebut diciptakan. Pengujian dengan cara terisolasi seperti ini mengungkapkan ketergantungan antara kode dalam unit yang sedang diuji dan unit-unit lain atau ruang data dalam produk. Ketergantungan ini kemudian dapat dihilangkan.

Dengan menggunakan kerangka kerja otomatisasi, pengembang mengkodekan kriteria, atau hasil yang diketahui benar, ke dalam uji untuk memeriksa kebenaran unit tersebut. Dalam eksekusi kasus uji, kerangka kerja mencatat uji yang gagal melewati kriteria apa pun. Banyak kerangka kerja juga akan menandai secara otomatis kasus uji yang gagal ini dan melaporkannya dalam rangkuman. Tergantung kepada parahnya kegagalan yang terjadi, kerangka kerja mungkin akan berhenti melakukan uji selanjutnya.

Karena itu, pengujian unit secara tradisional adalah pemotivasi pemrogram untuk menciptakan kode yang independen dan kohesif. Praktik ini mempromosikan kebiasaan yang sehat dalam pengembangan perangkat lunak. Pola desain, pengujian unit, dan refaktorisasi sering berjalan bersama-sama sehingga akhirnya muncul solusi terbaik.