Fixtures

Programinė įranga Screenshot:
Fixtures
Programinė detalės:
Versija: 0.3.14
Įkėlimo datą: 14 Apr 15
Kūrėjas: Robert Collins
Licencija: Nemokamai
Populiarumas: 75

Rating: 5.0/5 (Total Votes: 2)

Šviestuvai yra įrankis, kuris apibrėžia Python sutartį dėl pakartotinio Valstija / paramos logika, visų pirma vieneto bandymai & nbsp;. Pagalbininkas ir pritaikymas logika yra įtrauktas, kad būtų lengva rašyti savo armatūra per armatūra sutartį. Klijai kodas yra numatyta, kad daro naudojant armatūra, atitinkančius Šviestuvai sutartį unittest suderinamų bandymų atvejus paprasta ir važiuoti tiesiai į priekį.
Kodėl Šviestuvai
Standartinė Python unittest.py suteikia neturi akivaizdaus metodą priėmimo ir pakartotinai būklę, reikalingą bandymo atveju, išskyrus pridedant metodą bandymo klasėje. Tai svarstyklės blogai - sudėtingi pagalbininkas funkcijos dauginamąja iki bandymo klasių hierarchija yra taisyklingos formos, kai tai daroma. Tyčiojasi, o puiki priemonė nėra pati to išvengti (ir pagalbininkai tyčiotis sudėtingus dalykus gali kauptis taip pat, jei ant bandymo klasės).
Apibrėžiant vienodą sutartį, kurioje pagalbininkai turi ne priklausomybę nuo bandymo klasės Leidžiame visi nuolatiniai kodas higienos veikla vyktų iškreips įtaka būdamas klasių hierarchija, kuri yra modeliavimo visiškai skirtingas dalykas - tai yra tai, ką pagalbininkai ant TestCase kentėti nuo.
Apie Šviestuvai
Tvirtinimo sudaro apie valstybę. Kiekvienas šviestuvas turi atributus ant jo, kurie yra būdingi laikiklio. Pavyzdžiui, šviestuvas, vaizduojantis katalogas, kad gali būti naudojami laikinų failų gali turėti atributo 'kelio'.
kūrimas Šviestuvai
Minimaliai, poklasis įrangos, nustatyti sąrankos inicijuoti savo būseną ir suplanuoti for cleanup, kai valymas yra vadinamas ir baigsite:
>>> Import unittest
>>> import armatūra
>>> Klasės NoddyFixture (fixtures.Fixture):
... Def setup (si):
... Super (NoddyFixture, savarankiškai) .setUp ()
... Self.frobnozzle = 42
... Self.addCleanup (delattr, savarankiškai, "frobnozzle)
Tai bus inicijuoti frobnozzle kai setup vadinamas ir kai valymas yra vadinamas atsikratyti frobnozzle atributas.
Yra pritaikyti funkciją arba funkcijų pora į Šviestuvai pagalbininkas. jis iškelia iš fn_result funkciją rezultato:
>>> Import os.path
>>> Import shutil
>>> Import tempfile
>>> Def setup_function ():
... Grįžti tempfile.mkdtemp ()
>>> Def teardown_function (rungtynių):
... Shutil.rmtree (rungtynių)
>>> Rungtynių = fixtures.FunctionFixture (setup_function, teardown_function)
>>> Fixture.setUp ()
>>> Print os.path.isdir (fixture.fn_result)
Tiesa
>>> Fixture.cleanUp ()
Tvirtinimo API
Aukščiau pateiktame pavyzdyje pristato kai laikiklio API. Tam, kad būtų galima išvalyti po šviestuvas buvo naudojamas, visi armatūra apibrėžti CLEANUP metodą, kuris turėtų būti vadinamas, kai šviestuvas yra baigtas su.
Kadangi jos gražus, kad būtų galima sukurti tam tikrą rinkinį susijusių armatūra iš anksto juos naudojant, armatūra, taip pat turi nustatyti sąrankos metodą, kuris turėtų būti vadinamas prieš bandant juos naudoti.
Vienas bendras noras su armatūra, kurios yra brangu sukurti yra panaudoti juos daugelyje bandymų atvejus; remti ši bazė įtaisas taip pat apibrėžia naujo, kuria raginama self.cleanUp (); self.setUp (). Šviestuvai, kad gali efektyviau save daugkartinio turėtų pakeisti šį metodą. Tai gali būti naudojama su daugeliu bandymų valstybės per tokius dalykus kaip testresources, setUpClass arba setUpModule.
Naudodami rungtynių su bandymo galite rankiniu būdu skambinti sąrankos ir valymas metodus. Daugiau patogu, nors tai naudoti pridedamą klijus iš fixtures.TestWithFixtures pranešimas, kuris yra Mixin apibrėžiantį useFixture (kupranugaris atveju, nes unittest yra kupranugaris atveju visoje) metodą. Ji kreipsis Setup laikiklio, skambinkite self.addCleanup (rungtynių tvarkaraščius) suplanuoti valymas ir grąžinti detalę. Tai leidžia vieną rašo:
>>> import testtools
>>> Import unittest
Atkreipkite dėmesį, kad mes naudojame testtools TestCase čia, nes mes turime garantuoti TestCase.addCleanup metodą.
& Nbsp; >>> klasės NoddyTest (testtools.TestCase, fixtures.TestWithFixtures):
& Nbsp; ... Def test_example (si):
& Nbsp; ... rungtynių = self.useFixture (NoddyFixture ())
& Nbsp; ... self.assertEqual (42 fixture.frobnozzle)
& Nbsp; >>> rezultatas = unittest.TestResult ()
& Nbsp;. >>> _ = NoddyTest (test_example) paleisti (rezultatas)
& Nbsp; >>> print result.wasSuccessful ()
& Nbsp; Tiesa
Šviestuvai įgyvendinti kontekstinį protokolą, kad jūs taip pat galite naudoti detalę kaip kontekstinio vadybininkas:
>>> Su fixtures.FunctionFixture (setup_function, teardown_function), kaip įtaisų:
... Spausdinimo os.path.isdir (fixture.fn_result)
Tiesa

Reikalavimai :

  • Python

Panaši programinė įranga

Linux Test Project
Linux Test Project

12 May 15

PMD
PMD

9 Dec 15

expecter
expecter

20 Feb 15

Kita programinė įranga kūrėjas Robert Collins

Komentarai Fixtures

Komentarai nerastas
Pridėti komentarą
Pasukite ant paveikslėlio!