Menurut pendapat saya, kasus uji unit itu sendiri berfungsi sebagai dokumentasi untuk kode. Perusahaan saya ingin saya menulis komentar java doc terperinci di atas unit test unit. Apakah perlu melakukannya? Apakah Anda menulis komentar seperti itu?
Menurut pendapat saya, kasus uji unit itu sendiri berfungsi sebagai dokumentasi untuk kode. Perusahaan saya ingin saya menulis komentar java doc terperinci di atas unit test unit. Apakah perlu melakukannya? Apakah Anda menulis komentar seperti itu?
Jawaban:
Apa yang saya lakukan adalah komentar JAVADOC:
kelas, yang menunjukkan kelas mana yang diuji unit (meskipun itu harus saya jelas karena praktik terbaik pada subjek itu menunjukkan bahwa nama kasus uji harus nama kelas + "Tes" atau + "TestCase"). Ini dilakukan dengan menggunakan komentar JAVADOC {@link XXXClass}
metode, yang menunjukkan metode mana yang diuji ({@link XXXClass # method1}). Kadang-kadang saya perlu memiliki beberapa metode pengujian untuk satu metode kelas untuk menguji semua jalur dengan benar. Ketika itu terjadi, saya menulis satu baris tambahan yang menyatakan jalur apa yang saya uji di dalam (tapi saya tidak pernah menyimpang dari konvensi satu baris saya)
Terlepas dari itu, tidak ada komentar lain. Untuk menarik perhatian mereka di tempat lain mungkin Anda bisa menggunakan sesuatu seperti Cobertura untuk menghasilkan grafik cakupan kode yang cantik dan membuatnya bahagia :-)
Catatan tambahan: Saya merujuk pada kasus uji unit, jika kita berbicara tentang kasus uji integrasi, maka satu atau dua baris lagi untuk menjelaskan apa yang sedang terjadi mungkin memang diperlukan ...
Persyaratan dokumentasi untuk kode apa pun sepenuhnya tercakup dalam jawaban atas pertanyaan ini: Bos saya menginginkan penjelasan bahasa Inggris baris-demi-baris yang dikisahkan dari kode kami
Sebagai ringkasan jawaban yang akan Anda lihat di sana, "Itu tergantung pada situasi Anda". Ada kasus di mana itu masuk akal (dan didorong), dan lain-lain di mana itu adalah buang-buang waktu Anda.
Komentar Javadoc dapat diekstraksi dan diformat dalam dokumen referensi yang terpisah, unit test tidak bisa. Juga, ingatlah bahwa apa yang Anda tulis dengan kata-kata bisa berbeda dari kode yang sebenarnya, dan biasanya Anda menggambarkan dengan kata-kata perilaku yang sebenarnya diharapkan. Salah satu cara untuk menemukan bug adalah membandingkan dokumentasi dengan kode aktual, jika mereka tidak cocok - itu adalah bug (di salah satu dari mereka, dan kadang-kadang - keduanya).
Tes unit adalah untuk pengujian, bukan untuk dokumentasi. Menggunakan unit test sebagai dokumentasi salah dan tidak boleh dilakukan.