Integration with pytest-timeout plugin
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Inizia tracciando pytest_forked/init.py, in particolare pytest_runtest_protocol e forked_run_report, attraverso py/_process/forkedfunc.py e il percorso di timeout in pytest_timeout.py. Determina se è possibile preservare il traceback del test sottoposto a wrapping e considera il lavoro necessario affinché un timeout riporti informazioni utili dal test sottoposto a wrapping invece dei soli frame di pytest-forked.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Hi, when trying to add pytest-timeout to troubleshoot a hanging test, I get the following output:
Traceback (most recent call last):
File "/opt/conda/lib/python3.6/site-packages/_pytest/main.py", line 203, in wrap_session
session.exitstatus = doit(config, session) or 0
File "/opt/conda/lib/python3.6/site-packages/_pytest/main.py", line 243, in _main
config.hook.pytest_runtestloop(session=session)
File "/opt/conda/lib/python3.6/site-packages/pluggy/hooks.py", line 289, in __call__
return self._hookexec(self, self.get_hookimpls(), kwargs)
File "/opt/conda/lib/python3.6/site-packages/pluggy/manager.py", line 87, in _hookexec
return self._inner_hookexec(hook, methods, kwargs)
File "/opt/conda/lib/python3.6/site-packages/pluggy/manager.py", line 81, in <lambda>
firstresult=hook.spec.opts.get("firstresult") if hook.spec else False,
File "/opt/conda/lib/python3.6/site-packages/pluggy/callers.py", line 203, in _multicall
gen.send(outcome)
File "/opt/conda/lib/python3.6/site-packages/pluggy/callers.py", line 80, in get_result
raise ex[1].with_traceback(ex[2])
File "/opt/conda/lib/python3.6/site-packages/pluggy/callers.py", line 187, in _multicall
res = hook_impl.function(*args)
File "/opt/conda/lib/python3.6/site-packages/_pytest/main.py", line 264, in pytest_runtestloop
item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
File "/opt/conda/lib/python3.6/site-packages/pluggy/hooks.py", line 289, in __call__
return self._hookexec(self, self.get_hookimpls(), kwargs)
File "/opt/conda/lib/python3.6/site-packages/pluggy/manager.py", line 87, in _hookexec
return self._inner_hookexec(hook, methods, kwargs)
File "/opt/conda/lib/python3.6/site-packages/pluggy/manager.py", line 81, in <lambda>
firstresult=hook.spec.opts.get("firstresult") if hook.spec else False,
File "/opt/conda/lib/python3.6/site-packages/pluggy/callers.py", line 208, in _multicall
return outcome.get_result()
File "/opt/conda/lib/python3.6/site-packages/pluggy/callers.py", line 80, in get_result
raise ex[1].with_traceback(ex[2])
File "/opt/conda/lib/python3.6/site-packages/pluggy/callers.py", line 187, in _multicall
res = hook_impl.function(*args)
File "/opt/conda/lib/python3.6/site-packages/pytest_forked/__init__.py", line 35, in pytest_runtest_protocol
reports = forked_run_report(item)
File "/opt/conda/lib/python3.6/site-packages/pytest_forked/__init__.py", line 56, in forked_run_report
result = ff.waitfinish()
File "/opt/conda/lib/python3.6/site-packages/py/_process/forkedfunc.py", line 82, in waitfinish
pid, systemstatus = waiter(self.pid, 0)
File "/opt/conda/lib/python3.6/site-packages/pytest_timeout.py", line 140, in handler
timeout_sigalrm(item, params.timeout)
File "/opt/conda/lib/python3.6/site-packages/pytest_timeout.py", line 313, in timeout_sigalrm
pytest.fail('Timeout >%ss' % timeout)
File "/opt/conda/lib/python3.6/site-packages/_pytest/outcomes.py", line 113, in fail
raise Failed(msg=msg, pytrace=pytrace)
Failed: Timeout >120.0s
Seems that the traceback includes only pytest-forked information.
Do you know if it's at all possible to get some traceback info from the wrapped test?
Thanks.
- Lingua principale
- Python
- Stelle
- 83
- Fork
- 29
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di pytest-dev/pytest-forked
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
pytest-dev/pytest-forked#106 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 62/100
pytest-dev/pytest-forked#84 ·
-
Fork per subpath Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
pytest-dev/pytest-forked#94 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 30/100
pytest-dev/pytest-forked#88 · 12 commenti ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
pytest-dev/pytest-forked#87 · 1 reazione ·
Tutte le issue di pytest-dev/pytest-forked
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
stephrobert/dsoxlab#238 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
sublimehq/package_control#1780 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
nwg-piotr/nwg-displays#145 ·