Python

Tutorial Pengujian Unit Python

Tutorial Pengujian Unit Python

Pengujian unit adalah metode pengujian yang digunakan dalam rekayasa perangkat lunak untuk unit individual dari kode apa pun. Pengguna dapat melakukan tes individu untuk menentukan status sumber dan seberapa banyak kode yang cocok untuk digunakan. Dengan cara ini pengguna dapat menguji kualitas kode.

Pengujian dilakukan setelah proses pengembangan selesai. Pengguna juga dapat memulai pengujian saat skrip pengujian akan diverifikasi berdasarkan kriteria pengujian. Pengembang diharapkan untuk menulis jenis kode sumber secara manual. Secara umum, menulis kode pengujian unit secara manual adalah tugas yang sibuk tetapi dengan Python, hal itu dilakukan menggunakan fungsi bawaan yang disebut unittest.

Tes unit

Pengujian dengan Python dilakukan oleh kerangka kerja unittest. Pengujian unit juga membuat kode aman dan mudah digunakan di masa mendatang. Pengguna biasanya tidak dapat memprediksi kasus ini tetapi dapat dengan mudah mengatasinya. Unittest dapat berupa keseluruhan modul, fungsi tertentu, dan seluruh antarmuka (kelas/modul).

Cara menulis tes unit untuk kode Anda?

Untuk menulis pengujian unit untuk kode Anda, selalu mulai dengan unit terkecil yang dapat diuji dari seluruh kode Anda kemudian pindah lebih jauh ke unit lain. Dengan cara ini Anda akan memeriksa bagaimana unit terkecil yang dipilih berinteraksi untuk membangun pengujian unit secara keseluruhan.

Kerangka pengujian unit Python dibentuk dengan mempertimbangkan Java Junit. Ini memiliki fitur yang sama seperti pengujian unit dilakukan dalam berbagai jenis bahasa lainnya. Kerangka kerja pengujian unit di Python membantu dalam pengujian otomatisasi, pengaturan berbagi, agregasi banyak pengujian menjadi satu set besar, dan pengujian independen

Contoh:

Sekarang, dalam contoh, kami memeriksa kode untuk mengetahui jumlah dalam kode Python menggunakan fungsi sum(). Jawaban untuk penjumlahan ini harus 12, yang mana yang benar.

>>> assert sum([2, 4, 6]) == 12, "Harus sama dengan 12"

Di sisi lain, jika kita mencoba untuk menulis nilai output yang salah, dimana sum() salah, hasilnya akan gagal. Ini akan mengembalikan AssertionError. Output yang kami nyatakan salah yaitu 12, dan output aktual harus 6 oleh karena itu, ia mengembalikan kesalahan ini.

>>> assert sum([2, 2, 2]) == 12, "Harus sama dengan 12"

Sekarang, alih-alih menguji REPL, kami akan memasukkan file Python baru dan menamainya test_sum.py

>> def testValue_sum():
menegaskan jumlah([2, 4, 6]) == 12, "Harus sama dengan 12"
jika __name__ == "__main__":
testValue_sum()
print("Semuanya telah lulus dengan benar")

Setelah menulis test case, Anda dapat mengakses direktori yang memiliki test_sum.py, lalu ketik:

$ python test_sum.py

Keluaran:

Nilai output, ketika mirip dengan yang ditampilkan, akan menyetujui nilai yang benar.

Mari kita buat file lain untuk .py untuk menguji jumlah. Contoh seperti yang ditampilkan dalam kode dan dapat digunakan sebagai contoh dengan menyalin:

def testValue_sum():
menegaskan jumlah([2, 4, 6]) == 12, "Harus sama dengan 12"
def testValue_sum_tuple():
menegaskan jumlah((1, 1, 1)) == 6, "Harus sama dengan 6"
jika __name__ == "__main__":
testValue_sum()
testValue_sum_tuple()
print("Semuanya telah lulus dengan benar")

Kali ini kita akan kembali menamai filenya test_sum.py 

Blok kode pertama benar, sedangkan blok kode kedua salah dan memiliki kesalahan, sehingga output kami akan kembali sama.

Sekarang, kita akan kembali ke direktori proyek, tempat kita menyimpan saved .file py, dan kemudian uji file menggunakan perintah berikut:

$ python test_sum.py

Keluaran:

Kali ini karena kode input mengalami kesalahan,  diharapkan untuk mengembalikan kesalahan Pernyataan sebagai tanggapan.

Contoh penggunaan unittest:

Persyaratan unittest adalah bahwa pengguna dapat menempatkan pengujian mereka ke dalam kelas sebagai metode yang berbeda, pengguna dapat menggunakan serangkaian metode pernyataan, dan kelas TestCase dapat digunakan sebagai pengganti pernyataan pernyataan.

Pengguna dapat mengonversi contoh yang dibahas di paruh sebelumnya menjadi kasus uji unit.

Pertama, impor perpustakaan unitest. Selanjutnya, Anda perlu membuat TestSum dari kelas yang berbeda.

Buat file baru untuk kode yang dibahas di bawah ini:

impor unittest
kelas TestSum (tes unit.Kasus cobaan):
def testValue_sum(sendiri):
diri.assertEqual(sum([2, 4, 6]), 12, "Harus sama dengan 12")
def testValue_sum_tuple(mandiri):
diri.assertEqual(sum((1, 1, 1)), 6, "Harus sama dengan 6")
jika __name__ == '__main__':
unittest.utama()

Setelah Anda menjalankan perintah ini, output memiliki titik. Ini berarti sukses dan F berarti gagal.

Jadi, kita sukses dan satu lagi gagal.

Keluaran:

Menulis Tes Pertama:

Buat folder proyek baru dan kemudian buat folder baru, kami akan menyebutnya sum_file. Di dalamnya, buat file dan beri nama, __init__.py.  Buat folder proyek seperti ini:

proyek/

jumlah_file/
__init__.py

Maka Anda perlu membuka my_sum/__init__.py dan buat fungsi baru sum(). Ini akan dapat diubah (daftar, Tuple, atau set) untuk menambahkan banyak nilai:

jumlah def(arg):
total_ValueCalculated = 0
untuk val di arg:
total_ValueCalculated += nilai
kembalikan total_ValueCalculated

Selanjutnya, Anda perlu membuat uji mengajukan. Mulailah dengan menulis tes, dan buat file tes bernama file tes.py. Untuk mengimpor aplikasi, dan harus diuji, letakkan file file tes.py di atas folder paket Anda. Berikut ini adalah tampilan keseluruhan direktori Anda:

proyek/

jumlah_file/
__init__.py
|
file tes.py

Seperti yang dibahas sebelumnya untuk menguji kode, Anda dapat menggunakan perintah berikut di jendela terminal/ baris perintah:

$ python -m uji unittest

Kesimpulan

Artikel ini membahas proses pengujian unit dengan Python. Pengujian adalah salah satu fitur yang berguna dari rekayasa perangkat lunak yang mampu membagi kode menjadi potongan-potongan yang lebih kecil, dan kemudian mencobanya satu per satu. Pengguna juga dapat mengkompilasi seluruh sampel uji/kode unit menjadi satu koleksi besar. Unittest adalah salah satu fungsi yang digunakan dalam Python untuk memudahkan penggunaan pengujian.

Cara Menampilkan Overlay OSD di Aplikasi dan Game Linux Layar Penuh
Memainkan game layar penuh atau menggunakan aplikasi dalam mode layar penuh bebas gangguan dapat memutus Anda dari informasi sistem yang relevan yang ...
5 Kartu Tangkap Game Teratas
Kita semua telah melihat dan menyukai gameplay streaming di YouTube. PewDiePie, Jakesepticye, dan Markiplier hanyalah beberapa pemain top yang telah m...
Cara Mengembangkan Game di Linux
Satu dekade yang lalu, tidak banyak pengguna Linux yang memprediksi bahwa sistem operasi favorit mereka suatu hari nanti akan menjadi platform game po...