DTest Python tərəfindən hazırlanmışdır standart unittest paketi oxşar test çərçivəsində edir. DTest üçün dəyər əlavə, lakin eventlet paketi istifadə edərək, yivli ki test icra edir. Beləliklə, "DTest" və "D" - - DTest paketi də testlər və test qurğular arasında "bağımlılıkları" anlayışı təmin uyğun test qurğular başa qurmaq qədər test run deyil ki, təmin, və ki, bütün əlaqədar testlər başa qədər test qurğular çalışmıyor sökmək. Dependencies də xüsusi funksionallığı test uğursuz əgər müəyyən funksionallığı mövcudluğu tələb test run deyil ki, təmin etmək üçün istifadə edilə bilər.
Yazı Testlər
sadə test proqramları adları ilə də başlayacaq Python mənbə faylları yerləşən "test" ilə başlayan adları ilə sadə funksiyaları "test". Bu DTest çərçivəsində hər hansı bir hissəsini idxal hətta lazım deyil. Testlər dərsləri toplanmışdır əgər DTest daha inkişaf etmiş xüsusiyyətləri istifadə istədiyiniz halda, lakin, və ya, dtest idxal * bir sadə lazımdır. Bu mövcud DTestCase sinif edir -skip vənottest, eləcə də bu cür bəzəyi - bütün testlər olan dərsləri uzadıla olan.
Testlər standart Python irəli sürən şərh istifadə edilə bilər; Lakin, kommunal routines bir sıra dtest.util modulu (idxal * üçün də təhlükəsiz) mövcuddur. Bu kommunal routines çox unittest.TestCase üsulları oxşar adlar var - məsələn,) (dtest.util.assert_dict_equal () unittest.TestCase.assertDictEqual eyni deyil.
Test qurğular
Qurmaq və funksiyaları sökmək - - DTest çərçivə test qurğular dəstəkləyir sinif modulu, və bağlama səviyyəsində. Paket səviyyəli qurğular "__init__.py" faylları daxilində olan quraşdırma adına funksiyaları () və demontaj () ibarətdir; eyni, modul səviyyəli qurğular funksiyaları test funksiyaları və test üsulları dərsləri ehtiva edən modulları ərzində samed Setup () və demontaj () ibarətdir. Sinif səviyyədə siniflər setUpClass () və qurmaq və hər bir sinfi üçün sökmək yerinə yetirə biləcəksiniz tearDownClass () sinif üsulları (və ya statik üsulları), ola bilər. Bütün hallarda, quraşdırma () funksiyaları və setUpClass () metodu eyni çərçivəsində testlər hər hansı əvvəl icra olunur; eyni bir əhatə dairəsi bütün testlər icra etdikdən sonra, müvafiq tearDownClass () metodu və demontaj () funksiyaları icra olunur.
DTest çərçivəsində də başına test quraşdırma () və demontaj () əvvəl və hər bağlı test sonra run funksiyaları və ya üsulları dəstəkləyir. Testlər ehtiva siniflər üçün, hər bir test avtomatik quraşdırma () və demontaj () onlarla bağlı sinif üsulları var; Lakin, bütün testlər üçün, bu qurğular açıq şəkildə müəyyən edilə bilər (və ya sinif default aradan). Aşağıdakı misal düşünün:
istest
def test_something ():
& Nbsp; burada # Test bir şey
& Nbsp; pass
@ Test_something.setUp
def something_setup ():
& Nbsp; # hər şey getmək üçün hazır qurmaq alın ...
& Nbsp; pass
@ Test_something.tearDown
def something_teardown ():
& Nbsp; # təmizlənməsi özümüz sonra
& Nbsp; pass
Bu misal olaraq, bir DTest decorator (nottest başqa) test_something əvvəlki zəruridir (); buradaistest istifadə, lakin hər hansı digər mövcud DTest decorator burada istifadə edilə bilər. Bu @ test_something.setUp və @ test_something.tearDown bəzəyi təmin edir. (Standart Python analoji bir şey üçün, daxili @ mülkiyyət decorator oldu.)
Running Testlər
DTest çərçivəsində istifadə testlər çalışan kifayət qədər düz irəli edir. Run-dtests adlı script mövcuddur. Mənim cari olaraq, cari kataloq adları "test" ilə başlayan bütün modulları və ya paketləri üçün skanerdən edilir; Axtarış də bütün paketləri vasitəsilə aşağı recurses. Onlar icra, sonra bütün testlər aşkar (A "paket". "__init__.py" Olan bir qovluq kimi müəyyən edilir) və testlər nəticəsində standart çıxış atılan.
Bir neçə komanda-line variantları run-dtests davranış nəzarət üçün mövcuddur. Məsələn, seçim bütün testlər,skip decorator ilə bəzədilmiş hətta çalıştırmak üçün run-dtests səbəb olacaq "---no keçmək" və "d" seçimi daha çox xüsusi kataloq axtarış run-dtests səbəb olur cari kataloq. Variantları tam siyahısı üçün, "h" və ya "help" et istifadə edin.
Skript satırı run-dtests çalışan, lakin test run üçün yeganə yol deyil. run-dtests script (dtest.optparser () funksiyası ilə inşa OptionParser istifadə edərək) command-line variantları çözümler bir çox sadə script edir, sonra (() dtest.opts_to_args istifadə) söz dəlilləri bir sıra o variantları çevirir dtest.main () funksiyası bu söz dəlilləri keçir. İstifadəçilər bu cür test nəticələri göstərilir necə nəzarət etmək üçün bir alternativ DTestOutput instansiya təmin və ya testlər atlandı olan nəzarət üçün alternativ üsulu təmin kimi istifadəçi xüsusi uzantıları ilə eyni funksionallığı qurmaq üçün bu funksiyaları istifadə edə bilərsiniz. . Daha ətraflı məlumat üçün bu funksiyaların və siniflər üçün sənədlər strings bax
tələblər
- Python
Şərhlər tapılmadı