Rumah > Artikel > pembangunan bahagian belakang > Pengaturcaraan pelayan Python: ujian unit menggunakan unittest
Dengan populariti aplikasi bahagian pelayan Python, ujian telah menjadi sangat penting dan pembangun mesti memastikan kualiti dan kestabilan kod mereka. Ujian unit ialah kaedah ujian berkesan yang boleh membantu pembangun menyemak ketepatan dan kebolehpercayaan kod. Dalam pembangunan sisi pelayan Python, unittest ialah alat berkuasa yang boleh membantu kami melaksanakan ujian automatik, melaporkan ralat dan memastikan kualiti kod.
Pengenalan kepada unittest
Unittest ialah rangka kerja ujian unit yang disertakan dengan bahasa Python dan juga merupakan salah satu alatan yang paling biasa digunakan dalam pembangunan Python. Reka bentuknya diilhamkan oleh JUnit Java dan CppUnit C++, dan mempunyai kelebihan kemudahan penggunaan, ujian yang cekap dan kebolehgunaan semula kod. Unittest menyediakan beberapa rangka kerja dan fungsi asas yang boleh digunakan untuk menulis kod ujian, menjalankan ujian dan menjana laporan ujian Ia digunakan secara meluas dalam pembangunan sisi pelayan Python.
Istilah asas unittest
Sebelum menggunakan unittest untuk pengaturcaraan, kita perlu memahami beberapa konsep asas.
Kes ujian ialah unit asas ujian, yang merangkumi set syarat yang perlu diuji dan satu atau lebih kaedah ujian.
Suit ujian ialah gabungan berbilang kes ujian yang boleh menggabungkan berbilang kes ujian yang berkaitan dan menjalankan kes ujian dalam kelompok.
Pelari ujian ialah objek yang digunakan untuk melaksanakan set ujian, yang boleh melaksanakan ujian secara automatik dan menjana laporan ujian.
Penggunaan unittest
Yang berikut menunjukkan cara menggunakan unittest untuk ujian unit.
Pertama, kita perlu mencipta kelas kes ujian dan mewarisi unittest.TestCase. Dalam kelas ini, kami mentakrifkan satu set kaedah ujian, setiap kaedah sepadan dengan keadaan yang perlu diuji. Sebagai contoh, dalam contoh berikut kami mencipta kelas kes ujian bernama MathTestCase dan mentakrifkan dua kaedah ujian.
import unittest class MathTestCase(unittest.TestCase): def test_add(self): self.assertEqual(1+1, 2) def test_subtract(self): self.assertEqual(2-1, 1)
Dalam kod di atas, test_add() dan test_subtract() menguji keputusan dua operasi masing-masing, dan gunakan kaedah penegasan self.assertEqual() untuk menentukan sama ada hasil yang dijangkakan adalah sama dengan hasil sebenar.
Seterusnya, kita perlu mencipta suite ujian yang mengandungi kelas kes ujian yang kami buat sebelum ini. Kita boleh menggunakan kaedah loadTestsFromTestCase() kelas unittest.TestLoader() untuk mencipta suite ujian automatik.
import unittest class MathTestCase(unittest.TestCase): def test_add(self): self.assertEqual(1+1, 2) def test_subtract(self): self.assertEqual(2-1, 1) if __name__ == '__main__': suite = unittest.TestLoader().loadTestsFromTestCase(MathTestCase)
Selepas kes ujian dibuat, kita perlu menggunakan kaedah run() kelas unittest.TextTestRunner() untuk melaksanakan kes ujian dan keluaran Keputusan ujian.
import unittest class MathTestCase(unittest.TestCase): def test_add(self): self.assertEqual(1+1, 2) def test_subtract(self): self.assertEqual(2-1, 1) if __name__ == '__main__': suite = unittest.TestLoader().loadTestsFromTestCase(MathTestCase) runner = unittest.TextTestRunner() runner.run(suite)
Apabila menjalankan kes ujian, kita dapat melihat bahawa keputusan ujian akan dikeluarkan kepada konsol. Jika ujian lulus, OK akan dipaparkan, jika tidak mesej ralat akan dipaparkan.
.. ---------------------------------------------------------------------- Ran 2 tests in 0.000s OK
Ringkasan
Dalam pengaturcaraan pelayan Python, ujian unit ialah salah satu kaedah penting untuk memastikan kualiti dan kebolehpercayaan kod. Unittest ialah rangka kerja ujian unit Python sendiri, yang mempunyai kelebihan kemudahan penggunaan, ujian yang cekap dan kebolehgunaan semula kod. Artikel ini memperkenalkan terminologi asas, penggunaan dan hasil larian unittest secara terperinci Saya harap pembaca dapat menguasai cara menggunakan unittest untuk ujian unit. Melalui ujian unittest, kami boleh mengeluarkan kod kami dengan lebih yakin, meningkatkan kualiti kod dan kecekapan pembangunan, serta mempercepatkan pembangunan dan lelaran projek.
Atas ialah kandungan terperinci Pengaturcaraan pelayan Python: ujian unit menggunakan unittest. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!