Doctest adalah metode pengujian sederhana namun berguna untuk program Python. Dibandingkan dengan pengujian unit , doctest tidak memerlukan skrip independen untuk menulis kasus pengujian. Kasus uji hanya dapat ditulis dalam informasi dokumen (konten dalam tanda kutip ganda tunggal / ganda) dari fungsi Python. Kemudian kasus ini dapat menguji fungsinya dengan menggunakan doctestmodul.
The doctestpencarian modul untuk potongan teks yang terlihat seperti sesi Python interaktif, dan kemudian mengeksekusi mereka sesi untuk memverifikasi bahwa mereka bekerja persis seperti yang ditunjukkan. ( dokumen python )
Mari gunakan doctest untuk abs()fungsi yang salah :
Hasilnya adalah sebagai berikut:
Seperti yang ditunjukkan contoh di atas, doctest benar-benar cara yang nyaman dan sederhana untuk menguji fungsi tersebut.
Singkatnya, hanya ada 3 langkah:
doctestmodul impordoctest.testmod()untuk menjalankan doctestJika semua kasus uji lulus, tidak doctestakan mencetak apa pun.
Di dalam doctest.testmod, ada parameter penting yang disebut verbose.
Ini disetel ke Falsesecara default, yang berarti bahwa saat menjalankan pengujian, hanya kasus yang gagal yang akan menampilkan informasi terperinci. Jika Anda ingin mendapatkan informasi lengkap dari setiap kasus, cukup setel ke True.
if __name__ == '__main__':
doctest.testmod(verbose=True)
Sebenarnya, kita tidak perlu menulis if __name__ == '__main__':blok itu. Kami dapat menjalankan doctest langsung di terminal:
$ python -m doctest wrong_abs.py
$ python -m doctest -v wrong_abs.py
Terkadang, bisa sedikit berantakan jika kita meletakkan komentar dan kasus uji di bawah fungsinya. Jangan khawatir, kami dapat menempatkan semua kasus pengujian ke file independen dan tetap menjalankan doctest dengan sempurna.
Misalnya, mari buat file bernama test_cases.txtdan letakkan kasus uji "gaya doctest" ke dalamnya:
Kemudian jalankan doctest dengan perintah ini:
python -m doctest test_cases.txt
Doctest adalah metode pengujian yang mudah digunakan untuk program Python. Menggunakan teknik ini dengan baik dapat membantu Anda mendapatkan kode bebas bug.
Terima kasih sudah membaca.
Posting terkait:
Enam Teknik Debugging untuk Pemrogram PythonTutorial Python Lainnya:
Tutorial Ultimate Python (Terus Memperbarui)
Saat Anda membuat permintaan ke facebook.com, komputer Anda mencari nama domain untuk menerjemahkan nama domain tersebut menjadi alamat IP sehingga komputer Anda dapat membuat koneksi tersebut.
Anda pasti pernah mendengar tentang semua plugin ChatGPT baru yang kuat seperti Browser, Code Interpreter, dll. Namun ada masalah, akses ke plugin terbatas pada daftar tunggu sehingga banyak yang tidak memiliki akses ke sana.
Di dunia yang saling terhubung saat ini, ancaman serangan dunia maya lebih umum dari sebelumnya. Penjahat dunia maya dan aktor negara terus-menerus berusaha mengeksploitasi kerentanan dan mencuri data berharga, yang menimbulkan risiko signifikan bagi organisasi dari semua ukuran.
“Dia akan melindungiku saat aku dalam bahaya. Dia akan menyembunyikan saya di tendanya.
Ketika Anda tumbuh dewasa, Anda cenderung diberi tahu bahwa dunia adalah apa adanya dan hidup Anda hanya untuk menjalani hidup Anda di dunia, tidak pernah mempertaruhkan hidup Anda, ikuti saja jalan yang ditetapkan dan pada akhirnya mati, dan cobalah untuk tidak melakukannya. hancurkan tembok terlalu banyak. Tapi itu kehidupan yang sangat terbatas.
“Hai Siri, mainkan Me Dive oleh Olivia Dean.” Saat itu Mei 2021 ketika saya memulai magang di Future Academy Africa di Akure, Nigeria.