Releases: nicoddemus/pytest
4.99.11
4.99.5
4.3.0
Testing pushing release notes
4.2.1
pytest 4.2.1 (2019-02-12)
Bug Fixes
- #2895: The
pytest_report_collectionfinish
hook now is also called with
--collect-only
. - #3899: Do not
raiseUsageError
when an imported package has a
pytest_plugins.py
child module. - #4347: Fix
output capturing when using pdb++ with recursive debugging. - #4592: Fix
handling ofcollect_ignore
via parentconftest.py
. - #4700: Fix
regression wheresetUpClass
would always be called in subclasses
even if all tests were skipped by aunittest.skip()
decorator
applied in the subclass. - #4739: Fix
parametrize(... ids=<function>)
when the function returns
non-strings. - #4745:
Fix/improve collection of args when passing in__init__.py
and a
test file. - #4770:
more_itertools
is now constrained to <6.0.0 when required for
Python 2.7 compatibility. - #526: Fix
"ValueError: Plugin already registered" exceptions when running in
build directories that symlink to actual source.
Improved Documentation
- #3899: Add note
toplugins.rst
thatpytest_plugins
should not be used as a name
for a user module containing plugins. - #4324: Document
how to useraises
anddoes_not_raise
to write parametrized tests
with conditional raises. - #4709: Document
how to customize test failure messages when usingpytest.warns
.
Trivial/Internal Changes
- #4741: Some
verbosity related attributes of the TerminalReporter plugin are now
read only properties.
4.2.0
pytest 4.2.0 (2019-01-30)
Features
-
#3094: Classic
xunit-style
functions and methods now obey the scope of autouse fixtures.This fixes a number of surprising issues like
setup_method
being
called before session-scoped autouse fixtures (see
#517 for an
example). -
#4627: Display
a message at the end of the test session when running under Python
2.7 and 3.4 that pytest 5.0 will no longer support those Python
versions. -
#4660: The
number of selected tests now are also displayed when the-k
or
-m
flags are used. -
#4688:
pytest_report_teststatus
hook now can also receive aconfig
parameter. -
#4691:
pytest_terminal_summary
hook now can also receive aconfig
parameter.
Bug Fixes
-
#3547:
--junitxml
can emit XML compatible with Jenkins xUnit.
junit_family
INI option acceptslegacy|xunit1
, which produces
old style output, andxunit2
that conforms more strictly to
https://github.com/jenkinsci/xunit-plugin/blob/xunit-2.3.2/src/main/resources/org/jenkinsci/plugins/xunit/types/model/xsd/junit-10.xsd -
#4280: Improve
quitting from pdb, especially with--trace
.Using
q[quit]
afterpdb.set_trace()
will quit pytest also. -
#4402: Warning
summary now groups warnings by message instead of by test id.This makes the output more compact and better conveys the general
idea of how much code is actually generating warnings, instead of
how many tests call that code. -
#4536:
monkeypatch.delattr
handles class descriptors like
staticmethod
/classmethod
. -
#4649: Restore
marks being considered keywords for keyword expressions. -
#4653:
tmp_path
fixture and other related ones provides resolved path
(a.k.a real path) -
#4667:
pytest_terminal_summary
uses result from
pytest_report_teststatus
hook, rather than hardcoded strings. -
#4669:
Correctly handleunittest.SkipTest
exception containing non-ascii
characters on Python 2. -
#4680: Ensure
thetmpdir
and thetmp_path
fixtures are the same folder. -
#4681: Ensure
tmp_path
is always a real path.
Trivial/Internal Changes
-
#4643: Use
a.item()
instead of the deprecatednp.asscalar(a)
in
pytest.approx
.np.asscalar
has been
deprecated
innumpy 1.16.
. -
#4657: Copy
saferepr from pylib -
#4668: The
verbose word for expected failures in the teststatus report changes
fromxfail
toXFAIL
to be consistent with other test outcomes.
4.1.1
pytest 4.1.1 (2019-01-12)
Bug Fixes
- #2256: Show
full repr withassert a==b
and-vv
. - #3456: Extend
Doctest-modules to ignore mock objects. - #4617: Fixed
pytest.warns
bug when context manager is reused (e.g. multiple
parametrization). - #4631: Don't
rewrite assertion when__getattr__
is broken
Improved Documentation
- #3375: Document
that usingsetup.cfg
may crash other tools or cause hard to track
down problems because it uses a different parser thanpytest.ini
ortox.ini
files.
Trivial/Internal Changes
- #4602:
Uninstallhypothesis
in regen tox env.