DTest

Software screenshot:
DTest
Software informatie:
Versie: 0.5.0
Upload datum: 11 May 15
Ontwikkelaar: Kevin L. Mitchell
Licentie: Gratis
Populariteit: 8

Rating: nan/5 (Total Votes: 0)

Dtest een toetsingskader, vergelijkbaar met de standaard unittest pakket geboden door Python. De toegevoegde waarde van Dtest echter dat testuitvoering is geschroefd, door het gebruik van de eventlet pakket. De Dtest pakket voorziet ook in het concept van de "afhankelijkheid" tussen de tests en test fixtures - dus de "D" in "Dtest" - die ervoor zorgen dat de tests niet lopen totdat de huisstijl testschema armaturen hebben afgerond, en dat de tear down-test fixtures niet lopen totdat alle bijbehorende tests zijn voltooid. Afhankelijkheden kunnen ook worden gebruikt om te waarborgen dat de tests beschikbaar moeten bepaalde functies niet uitgevoerd als de tests die specifieke functionaliteit falen.
Writing Tests
De eenvoudigste testprogramma's zijn eenvoudige functies met namen die beginnen met "test", gelegen in Python bronbestanden waarvan de naam ook beginnen met "test". Het is zelfs niet nodig om een ​​deel van de Dtest kader te importeren. Als tests worden verzameld in de klassen, echter, of als het gebruik van de meer geavanceerde functies van Dtest gewenst is, een eenvoudige uit Dtest import * is noodzakelijk. Deze beschikking stelt de klasse DTestCase - dat moet worden uitgebreid door alle klassen bevatten testen - als zodanig decorateurs alsskip ennottest.
Tests kunnen worden uitgevoerd met behulp van de standaard Python beweren statement; Echter, een aantal hulpprogramma routines zijn beschikbaar in de dtest.util module (ook veilig voor import *). Veel van deze routines nut hebben namen Soortgelijke werkwijzen unittest.TestCase - bijvoorbeeld dtest.util.assert_dict_equal () is analoog aan unittest.TestCase.assertDictEqual ().
Test Inrichtingen
De Dtest framework ondersteunt-test fixtures - opzetten en afbreken functies - in de klas, module en pakket niveau. Package-niveau armaturen bestaan ​​uit functies genaamd Instellingen () en demontage () opgenomen in "__init__.py" bestanden; evenzo module-level armaturen bestaan ​​uit functies samed Instellingen () en demontage () binnen modules bevatten testen functies en klassen van testmethoden. Op de klasse niveau kan klassen setUpClass () en tearDownClass () methoden van de klasse (of statische methoden), die kunnen voeren opzetten en afbreken voor elke klasse bevatten. In alle gevallen worden de functies en de setUpClass () methode setup () uitgevoerd voor een van de tests binnen dezelfde strekking; Evenzo worden na alle tests op een bepaalde omvang hebben uitgevoerd, de bijbehorende tearDownClass () methode en demontage functies () uitgevoerd.
De Dtest framework ondersteunt ook per-testopstelling () en demontage () functies of methoden, die worden uitgevoerd vóór en na elk geassocieerd te testen. Voor de klassen met testen, elke test heeft automatisch de Instellingen () en demontage () van de klasse in verband met hen; Voor alle tests, deze armaturen kunnen expliciet (of overschreven de standaardleveranciersklasse). Neem het volgende voorbeeld:
istest
def test_something ():
& Nbsp; # Test hier iets
& Nbsp; pas
@ Test_something.setUp
def something_setup ():
& Nbsp; # Krijg alles opgericht klaar om te gaan ...
& Nbsp; pas
@ Test_something.tearDown
def something_teardown ():
& Nbsp; # Opruimen na onszelf
& Nbsp; pas
In dit voorbeeld werd een Dtest decorateur (behalvenottest) dient voorafgaande test_something (); Hier gebruikten weistest, maar andere beschikbare Dtest decorating kunnen hier worden gebruikt. Dit maakt de @ test_something.setUp en @ test_something.tearDown decorateurs beschikbaar. (Voor iets analoog in de standaard Python, check out de ingebouwdeproperty decorateur.)
Running Tests
Uitvoeren van tests met behulp van de Dtest kader is redelijk rechttoe-rechtaan. Een script genaamd run-dtests beschikbaar. Standaard wordt de huidige directory gescand op alle modules of pakketten waarvan de naam begint met "test"; de zoektocht recurses ook omlaag door alle pakketten. (A "package" wordt gedefinieerd als een directory met "__init__.py".) Als alle tests gevonden heeft, wordt uitgevoerd, en de resultaten van de proeven uitgestraalde standaard output.
Verschillende command-line opties zijn beschikbaar voor het regelen van het gedrag van de run-dtests. Bijvoorbeeld, de "--no-skip" optie run-dtests veroorzaken alle proeven, zelfs die versierd met deskip decorateur uitgevoerd en de '-d' optie laat run-dtests een bepaalde directory te zoeken, in plaats van de huidige directory. Voor een volledige lijst van opties, gebruik dan de "h" of "--help" optie.
Hardlopen run-dtests vanaf de opdrachtregel is niet de enige manier om de tests uit te voeren, echter. De run-dtests script is een zeer eenvoudig script dat command-line opties (met de OptionParser gebouwd door de dtest.optparser () functie) ontleedt, zet die opties in een reeks argumenten trefwoord (met dtest.opts_to_args ()), dan geeft de keyword argumenten om de dtest.main () functie. Gebruikers kunnen deze functies dezelfde functionaliteit met gebruikersspecifieke uitbreidingen, zoals het verschaffen van een alternatieve DTestOutput bijvoorbeeld om te bepalen hoe de testresultaten worden weergegeven, of het verschaffen van een alternatieve werkwijze voor het besturen welke testen worden overgeslagen gebouwd. . Zie de documentatie snaren voor deze functies en klassen voor meer informatie

Eisen

  • Python

Vergelijkbare software

codemetre
codemetre

11 May 15

PytestFramework
PytestFramework

20 Feb 15

pinocchio
pinocchio

14 Apr 15

Reacties op DTest

Reacties niet gevonden
Commentaar toe te voegen
Zet op de beelden!