DTest egy tesztelési keretrendszer, hasonlóan a standard unittest csomag által nyújtott Python. Az értéknövelt számára DTest, azonban az, hogy tesztvégrehajtási menetelt, használata révén a eventlet csomagot. A DTest csomagot is kínál a "függőségek" közötti vizsgálatok és vizsgálati berendezési tárgyak - így a "D" a "DTest" -, amelyek biztosítják, hogy a tesztek nem futnak, amíg a megfelelő felállított teszt mérkőzések befejezte, és hogy a lerombolja teszt berendezési tárgyak nem fut, amíg az összes kapcsolódó tesztek befejezése. Függőségek is lehet használni annak érdekében, hogy olyan vizsgálatot a rendelkezésre álló bizonyos funkciók nem fut, ha a vizsgálatok azt az adott funkciót nem.
írás tesztek
A legegyszerűbb teszt programok egyszerű funkciókat kezdődő nevek "teszt" található Python forrás fájlokat, akiknek a neve is kezdődik a "teszt". Még csak nem is szükséges, hogy importált részét DTest keret. Ha a tesztek gyűjtik osztályok azonban, vagy ha használja a fejlettebb funkciók a DTest van szükség, egy egyszerű re dtest import * szükséges. Ez teszi elérhetővé a DTestCase osztály - amelyet ki kellene terjeszteni minden osztályt tartalmazó tesztek -, valamint az ilyen lakberendezők, mintskip ésnottest.
Vizsgálatok végezhetők a szabványos Python érvényesíteni nyilatkozatot; azonban számos segédprogram rutinok állnak a dtest.util modul (is biztonságos az import *). Sok ilyen hasznosság rutinok neveket hasonló módszereket unittest.TestCase - pl dtest.util.assert_dict_equal () analóg unittest.TestCase.assertDictEqual ().
Test mérkőzések
A DTest keret támogatja teszt mérkőzések - hozzanak létre, és lerombolja funkciók - a class, modul, és a csomag szinten. Csomag szintű berendezési tárgyak állnak funkciók elemzi setup () és tearDown () található "__init__.py" fájlokat; Hasonlóképpen, modul-szintű berendezési tárgyak állnak funkciók samed setup () és tearDown () belül modulok tartalmazó vizsgálati függvényeket és osztályokat a vizsgálati módszerek. Az osztály szintjén, osztályok tartalmazhatnak setUpClass () és tearDownClass () osztály módszerek (vagy statikus metódus), ami végezhet létre, és lerombolja az egyes osztályokra. Minden esetben a setup () függvényt és a setUpClass () metódus végrehajtása előtt a tesztek körön belül; Hasonlóképpen, miután minden vizsgálat egy adott hatálya cselekedtem, a megfelelő tearDownClass () metódus és tearDown () függvények végrehajtása.
A DTest keret is támogatja per-összeállítással () és tearDown () függvények vagy módszerek, melyek futnak előtt és után minden kapcsolódó teszt. Mert osztályok tartalmazó tesztek, minden teszt automatikusan van a setup () és tearDown () metódus az osztály együtt; azonban az összes vizsgálathoz, ezek a szerelvények is explicit módon beállítható (vagy felülbírálja az osztály alapértelmezett). Tekintsük a következő példát:
istest
def test_something ():
& Nbsp; # Test itt valami
& Nbsp; menetben
@ Test_something.setUp
def something_setup ():
& Nbsp; # Get mindent létre kész ...
& Nbsp; menetben
@ Test_something.tearDown
def something_teardown ():
& Nbsp; # megtisztítása után magunkat
& Nbsp; menetben
Ebben a példában egy DTest dekoratőr (kivévenottest) szükséges megelőző test_something (); itt használtistest, de bármely más rendelkezésre álló DTest berendezõ lehetne használni itt. Ez teszi a @ test_something.setUp és @ test_something.tearDown lakberendezők elérhető. (Valami hasonló a normál Python, nézd meg a beépítettproperty dekoratőr.)
üzemeltetési vizsgálatokra
A tesztek futtatása az DTest keret meglehetősen egyenesen előre. A szkript, run-dtests elérhető. Alapértelmezésben az aktuális könyvtár beolvasása az összes modul, illetve csomagokat, akiknek a neve kezdődik "teszt"; A keresés is recurses végig az összes csomagot. (A "csomag" a meghatározás szerint olyan könyvtár, amely "__init__.py".) Ha minden teszt fedeznek fel, ők majd végre, és a vizsgálatok eredményei kibocsátott szabványos kimenetre.
Számos parancssori opciók állnak rendelkezésre szabályozására viselkedését run-dtests. Például a "-no-kihagyó" opció hatására fut-dtests futtatni teszteket, még azok is díszítik askip dekoratőr, és a "-d" beállítás hatására fut-dtests keresni egy adott könyvtár helyett Az aktuális könyvtárban. A teljes lista a lehetőségek, használja a "-h" vagy "--help" opciót.
Futás fut-dtests a parancssorból nem az egyetlen módja annak, hogy a vizsgálatok elvégzését, de. A run-dtests script egy nagyon egyszerű script, ami értelmezi parancssori (a OptionParser által épített dtest.optparser () függvény), átalakítja azokat a lehetőségeket egy sor kulcsszó érvek (a dtest.opts_to_args ()), majd halad azoknak kulcsszó érvek a dtest.main () függvény. A felhasználók használhatják ezt a funkciót, hogy létrejöjjön az azonos funkcionalitást a felhasználó egyedi kiterjesztések, mint amely egy alternatív DTestOutput például ellenőrizni, hogy a vizsgálati eredmények jelennek meg, vagy azt más módját szabályozására, amelyek tesztek kimaradnak. Lásd a dokumentációt húrok ezek a funkciók és osztályok további információkért.
követelmények :
- Python
Hozzászólás nem található