How to I display why some tests where skipped while using py.test?
Solution 1:
When you run py.test, you can pass -rsx
to report skipped tests.
From py.test --help
:
-r chars show extra test summary info as specified by chars
(f)ailed, (E)error, (s)skipped, (x)failed, (X)passed.
Also see this part of the documentation about skipping: http://doc.pytest.org/en/latest/skipping.html
Solution 2:
Short answer:
pytest -rs
This will show extra information of skipped tests.
Detailed answer:
To complement @ToddWilson's answer, the following chars have been added: p
and P
(2.9.0), a
(4.1.0) and A
(4.5.0). The detailed information about skipped and xfailed tests is not shown by default in order to avoid cluttering the output. You can use the -r
flag among with the following chars:
- (
f
)ailed - (
E
)rror - (
s
)kipped - (
x
)failed - (
X
)passed - (
p
)assed - (
P
)assed with output - (
a
)ll except passed (p/P) - (
A
)ll.
Warnings are enabled by default, and the default value is fE
.