Saya berdiskusi dengan manajer pengujian tentang peran unit dan pengujian integrasi. Dia meminta agar para pengembang melaporkan apa yang telah diuji unit dan integrasi mereka serta caranya. Perspektif saya adalah bahwa pengujian unit dan integrasi adalah bagian dari proses pengembangan, bukan proses pengujian. Di luar semantik yang saya maksud adalah bahwa tes unit dan integrasi tidak boleh dimasukkan dalam laporan pengujian dan penguji sistem tidak boleh khawatir tentang mereka. Alasan saya didasarkan pada dua hal.
Tes unit dan integrasi direncanakan dan dilakukan terhadap antarmuka dan kontrak, selalu. Terlepas dari apakah Anda menggunakan kontrak formal, Anda masih menguji apa misalnya metode yang seharusnya dilakukan, yaitu kontrak.
Dalam pengujian integrasi Anda menguji antarmuka antara dua modul yang berbeda. Antarmuka dan kontrak menentukan kapan tes lulus. Tetapi Anda selalu menguji bagian terbatas dari keseluruhan sistem. Pengujian sistem di sisi lain direncanakan dan dilakukan terhadap spesifikasi sistem. Spesifikasi menentukan kapan tes lulus.
Saya tidak melihat nilai apa pun dalam mengomunikasikan luas dan dalamnya unit dan tes integrasi ke tester (sistem). Misalkan saya menulis laporan yang mencantumkan jenis tes unit apa yang dilakukan pada kelas lapisan bisnis tertentu. Apa yang harus dia ambil dari itu?
Menilai apa yang harus dan tidak boleh diuji dari itu adalah kesimpulan yang salah karena sistem mungkin masih tidak berfungsi seperti yang diminta spesifikasi meskipun semua unit dan tes integrasi lulus.
Ini mungkin tampak seperti diskusi akademis yang tidak berguna, tetapi jika Anda bekerja di lingkungan yang sangat formal seperti saya, itu sebenarnya penting dalam menentukan bagaimana kita melakukan sesuatu. Lagi pula, apakah aku benar-benar salah?