[Pytest-commit] Issue #527: Show reason for skips in verbose mode on the terminal (hpk42/pytest)
Daniel Hahler
issues-reply at bitbucket.org
Wed Jun 11 22:46:41 CEST 2014
New issue 527: Show reason for skips in verbose mode on the terminal
https://bitbucket.org/hpk42/pytest/issue/527/show-reason-for-skips-in-verbose-mode-on
Daniel Hahler:
I have seen py.test adding extra information to tests being skipped, but could not get it to work with a test which pytest_django runs via pytester.runpytest, and which is using `pytest.skip('Test skipped since no Django settings is present.')`.
It looks like terminal.pytest_runtest_logreport has no support for printing the `longrepr` of the report?!
What worked in the end was using `-r s` to have a report about the skip(s).
I would have expected to get the reason for the skipping with `-vv` or `-vvv` already.
venv/src/pytest_django/bin/python venv/src/pytest_django/lib/python2.7/site-packages/pytest.py --basetemp=/tmp/pytest-123/testdir/test_sqlite_in_memory_used0/runpytest-0 --tb=short -vv /tmp/pytest-123/testdir/test_sqlite_in_memory_used0 -s
========================================================================== test session starts ===========================================================================
platform linux2 -- Python 2.7.6 -- py-1.4.20 -- pytest-2.5.2 -- venv/src/pytest_django/bin/python
plugins: ipdb, xdist, django
collected 1 items
../../../../../../tmp/pytest-123/testdir/test_sqlite_in_memory_used0/tpkg/test_the_test.py:5: test_a > venv/src/pytest_django/pytest_django/lazy_
django.py(14)skip_if_no_django()
13 import ipdb; ipdb.set_trace()
---> 14 pytest.skip('Test skipped since no Django settings is present.')
15
ipdb> c
> venv/src/pytest_django/lib/python2.7/site-packages/_pytest/terminal.py(185)pytest_runtest_logreport()
184 import ipdb; ipdb.set_trace()
--> 185 if self.verbosity <= 0:
186 if not hasattr(rep, 'node') and self.showfspath:
ipdb> l
180 self._tests_ran = True
181 if not letter and not word:
182 # probably passed setup/teardown
183 return
184 import ipdb; ipdb.set_trace()
--> 185 if self.verbosity <= 0:
186 if not hasattr(rep, 'node') and self.showfspath:
187 self.write_fspath_result(rep.fspath, letter)
188 else:
189 self._tw.write(letter)
190 else:
btw: it might be useful to have an option to display a report for all cases, basically a shortcut for `-r fEsxXw`.
More information about the pytest-commit
mailing list