pytest-timeout

Skjermbilde programvare:
pytest-timeout
Prog.varedetaljer:
Versjon: 0.3
Last opp dato: 20 Feb 15
Lisens: Gratis
Popularitet: 7

Rating: nan/5 (Total Votes: 0)

pytest-timeout er en plugin for py.test som vil avslutte tester etter en viss timeout. & Nbsp; Når du gjør dette vil du få en bunke dump av alle tråder som kjører på den tiden. Dette er nyttig når f.eks kjører tester under en kontinuerlig integrasjon (CI) server.
Bruk
Installere via:
PIP installere pytest-timeout
og deretter aktivere plugin, enten fra kommandolinjen:
py.test -p timeout
eller mer bekvemt innenfra testmodulen eller conftest.py:
pytest_plugins = 'timeout'
Du kan endre timeout bruker --timeout parameter som setter timeout i sekunder.
Hvordan det fungerer
Dette programtillegget fungerer i én av to måter. Hvis systemet støtter SIGALRM signal en alarm vil bli planlagt Når testene starter og avbrutt når den er ferdig. Hvis alarmen utløper under testen signal handler vil bruke pytest.fail () for å avbryte testen etter å ha dumpet bunken av andre tråder som kjører til standardfeil.
Hvis systemet ikke støtter SIGALRM eller --nosigalrm alternativet ble brukt da en tidtaker tråden vil bli brukt i stedet. Enda en gang, hvis denne timeren ikke blir avbrutt før den utløper den vil dumpe bunken med alle tråder til stderr før avslutter hele py.test prosessen ved hjelp os._exit (1).
Ulempen av SIGALRM metoden er at signalet blir brukt av testen rammeverket. Hvis dette signalet brukes av koden under test må du bruke --nosigalrm alternativet. Begrensningen av timeren tråden er imidlertid den ekstra belastningen av å skape en tråd for hvert utført test og det faktum at etter en timeout hele prosessen er stoppet og ingen flere tester er utført.

Hva er nytt i denne utgaven:.

  • Lagt PYTEST_TIMEOUT miljøvariabelen som en måte å angi tidsavbrudd (lukker problemet # 2)
  • Mer fleksibel markør argument parsing:. Du kan nå spesifisere metoden bruker en posisjonell argument
  • Den plugin er nå aktivert som standard. Det er ikke lenger behov for å pres timeout = 0 i konfigurasjonsfilen eller på kommandolinjen rett og slett slik at en markør ville fungere.

Hva er nytt i versjon 0.2:

  • Legg til en markør for å endre timeout forsinkelse ved hjelp av enpytest .timeout (N) syntaks, takket være Laurant Brack for opprinnelige koden.
  • La timeout markør for å velge timeout metoden ved hjelp av metoden søkeord argument.
  • Gi nytt navn til --nosigalrm alternativ til --method = tråden til fremtidskompatibel støtte for eventlet og gevent. Takk til Ronny Pfannschmidt for tipset.
  • Legg til timeout og timeout_method elementer i konfigurasjonsfilen, slik at du kan aktivere og konfigurere plugin bruker INI-filen. Takk til Holger Krekel og Ronny Pfannschmidt for tipsene.
  • Testet (og fast) for python 2.6, 2.7 og 3.2.

Krav :

  • Python
  • py.test

Lignende programvare

lava-test
lava-test

20 Feb 15

pytest-quickcheck
pytest-quickcheck

14 Apr 15

AceUnit
AceUnit

2 Jun 15

nose-regression
nose-regression

11 May 15

Kommentarer til pytest-timeout

Kommentarer ikke funnet
Legg til kommentar
Slå på bilder!