DTest

Sagteware kiekie:
DTest
Sagteware besonderhede:
Weergawe: 0.5.0
Upload datum: 11 May 15
Ontwikkelaar: Kevin L. Mitchell
Lisensie: Gratis
Populariteit: 8

Rating: nan/5 (Total Votes: 0)

DTest is 'n toets raamwerk, soortgelyk aan die standaard unittest pakket wat deur Python. Die waarde toe te voeg vir DTest, is egter dat die toets uitvoering is gestruktureerde, deur die gebruik van die eventlet pakket. Die DTest pakket bied ook die konsep van "dependencies" tussen toetse en toets wedstryde - dus die "D" in "DTest" - wat verseker dat die toetse nie hardloop totdat die bypassende stel toets wedstryde voltooi het, en dat die afbreek toets wedstryde nie totdat al die gepaardgaande toetse voltooi het. Afhanklikhede kan ook gebruik word om te verseker dat die toetse wat die beskikbaarheid van sekere funksies nie hardloop as die toetse van daardie spesifieke funksies misluk.
die skryf van toetse
Die eenvoudigste toets programme eenvoudige funksies met name wat begin met "toets" geleë in Python bron lêers wie se name ook begin met 'n "toets." Dit is nie eens nodig om 'n gedeelte van die DTest raamwerk te voer. As die toetse word versamel in klasse egter of die gebruik van die meer gevorderde funksies van DTest verlang, 'n eenvoudige vanaf dtest invoer * is nodig. Dit maak die klas beskikbaar DTestCase - wat moet uitgebrei word deur alle klasse met toetse - sowel as sodanig ontwerpers asskip ennottest.
Toetse kan uitgevoer word met behulp van die standaard Python Assert verklaring; egter 'n aantal van nut roetines is beskikbaar in die dtest.util module (ook veilig vir die invoer *). Baie van hierdie program roetines name soortgelyk aan die metodes van unittest.TestCase - bv dtest.util.assert_dict_equal () is soortgelyk aan unittest.TestCase.assertDictEqual ().
Toets Fixtures
Die DTest raamwerk ondersteun toets wedstryde - opgestel en afbreek funksies - by die klas, module, en die pakket vlak. Pakket-vlak wedstryde bestaan ​​van funksies vernoem Setup () en tear down () vervat in "__init__.py" lêers; Net so, module-vlak wedstryde bestaan ​​van funksies Samed Setup () en tear down () binne modules wat toets funksies en klasse van die toets metodes. Aan die klas vlak, kan klasse setUpClass () en tearDownClass () klas metodes (of statiese metodes), wat kan verrig opgestel en afbreek vir elke klas bevat. In alle gevalle, is die funksies en die setUpClass () metode Setup () uitgevoer word voordat enige van die toetse binne dieselfde omvang; Net so, is na al die toetse op 'n gegewe omvang voltrek die ooreenstemmende tearDownClass () metode en tear down funksies () uitgevoer word.
Die DTest raamwerk ondersteun ook per-toets toerusting () en tear down () funksies of metodes wat loop voor en na elke geassosieer toets. Vir klasse met toetse, elke toets het outomaties die opstel van () en tear down () metodes van die klas wat verband hou met hulle; egter vir alle toetse, hierdie wedstryde kan uitdruklik (of geneutraliseer word van die klas verstek). Oorweeg die volgende voorbeeld:
istest
def test_something ():
& Nbsp; # toets iets hier
& Nbsp; pass
@ Test_something.setUp
def something_setup ():
& Nbsp; # Kry alles opgestel gereed om te gaan ...
& Nbsp; pass
@ Test_something.tearDown
def something_teardown ():
& Nbsp; # skoon te maak na onsself
& Nbsp; pass
In hierdie voorbeeld, 'n DTest versierder (behalwenottest) is nodig voor test_something (); hier gebruik onsistest, maar enige ander beskikbare DTest versierder kan hier gebruik word. Dit maak die @ test_something.setUp en @ test_something.tearDown ontwerpers beskikbaar. (Vir iets analoog in die standaard Python, check die ingeboudeproperty versierder.)
Running Toetse
Hardloop toetse met behulp van die DTest raamwerk is redelik reguit vorentoe. A script genoem aanloop dtests beskikbaar is. By verstek, is die huidige gids geskandeer vir alle modules of pakkette wie se name begin met "toets"; die search recurses ook af deur al die pakkette. ('N "pakket" word gedefinieer as 'n gids met "__init__.py".) Sodra alle toetse ontdek, is hulle dan uitgevoer word, en die resultate van die toetse wat aan 'n standaard uitset.
Verskeie command-line opsies is beskikbaar vir die beheer van die gedrag van run-dtests. Byvoorbeeld, die "--no-skip" opsie sal loop-dtests laat alle toetse, selfs diegene versier met dieskip versierder hardloop, en die "d" opsie veroorsaak hardloop-dtests om 'n spesifieke gids soek, eerder as die huidige gids. Vir 'n volledige lys van opsies, gebruik die "h" of "help 'n opsie nie.
Hardloop hardloop-dtests uit die opdrag lyn is nie die enigste manier om toetse uit te voer, maar. Die aanloop dtests script is 'n baie eenvoudige script wat command-line opsies (met behulp van die gebou is deur die OptionParser dtest.optparser () funksie) ontleed, vat die opsies in 'n stel van argumente navraag (met behulp van dtest.opts_to_args ()), dan verby die navraag argumente na die dtest.main () funksie. Gebruikers kan hierdie funksies gebruik om dieselfde funksie met die gebruiker-spesifieke uitbreidings, soos die verskaffing van 'n alternatiewe DTestOutput byvoorbeeld om te bepaal hoe toetsuitslae vertoon word, of die verskaffing van 'n alternatiewe metode vir die beheer van wat toetse oorgeslaan bou. . Sien die dokumentasie snare vir hierdie funksies en klasse vir meer inligting

Vereistes :

  • Python

Soortgelyke sagteware

lava-serial
lava-serial

15 Apr 15

mockfs
mockfs

11 May 15

noselog
noselog

20 Feb 15

Kommentaar te DTest

Kommentaar nie gevind
Kommentaar te lewer
Draai op die foto!