Menguji Pengecualian dalam Fungsi Python dengan Penegasan
Menulis kod teguh selalunya melibatkan pengendalian pengecualian dengan sewajarnya. Memastikan fungsi membuang pengecualian yang dijangkakan adalah penting untuk menguji keupayaan pengaturcaraan pertahanan mereka.
Soalan: Bagaimanakah saya boleh menulis ujian unit yang menegaskan sama ada fungsi Python membuang pengecualian tertentu?
Jawapan: Gunakan kaedah assertRaises daripada modul ujian unit. Kaedah ini mengambil dua hujah: kelas pengecualian yang dijangkakan dan fungsi yang akan digunakan. Jika fungsi gagal membuang pengecualian yang dijangkakan di bawah ujian, ujian akan gagal.
Contoh:
<code class="python">import mymod import unittest class MyTestCase(unittest.TestCase): def test1(self): self.assertRaises(SomeCoolException, mymod.myfunc)</code>
Dalam contoh ini, kaedah ujian test1 menegaskan bahawa fungsi myfunc dari modul mymod membuang pengecualian jenis SomeCoolException apabila dipanggil. Ujian gagal jika pengecualian tidak dilemparkan.
Teknik ini ialah cara ringkas dan berkesan untuk mengesahkan keupayaan pengendalian pengecualian fungsi Python, memastikan ia berkelakuan seperti yang dimaksudkan dalam senario yang berbeza.
Atas ialah kandungan terperinci Bagaimana untuk Menegaskan Lemparan Pengecualian dalam Fungsi Python Menggunakan `assertRaises`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!