101 lines
3.7 KiB
ReStructuredText
101 lines
3.7 KiB
ReStructuredText
pytest-2.7.0: fixes, features, speed improvements
|
|
===========================================================================
|
|
|
|
pytest is a mature Python testing tool with more than 1100 tests
|
|
against itself, passing on many different interpreters and platforms.
|
|
This release is supposed to be drop-in compatible to 2.6.X.
|
|
|
|
See below for the changes and see docs at:
|
|
|
|
http://pytest.org
|
|
|
|
As usual, you can upgrade from pypi via::
|
|
|
|
pip install -U pytest
|
|
|
|
Thanks to all who contributed, among them:
|
|
|
|
Anatoly Bubenkoff
|
|
Floris Bruynooghe
|
|
Brianna Laugher
|
|
Eric Siegerman
|
|
Daniel Hahler
|
|
Charles Cloud
|
|
Tom Viner
|
|
Holger Peters
|
|
Ldiary Translations
|
|
almarklein
|
|
|
|
have fun,
|
|
holger krekel
|
|
|
|
2.7.0 (compared to 2.6.4)
|
|
-----------------------------
|
|
|
|
- fix issue435: make reload() work when assert rewriting is active.
|
|
Thanks Daniel Hahler.
|
|
|
|
- fix issue616: conftest.py files and their contained fixtures are now
|
|
properly considered for visibility, independently from the exact
|
|
current working directory and test arguments that are used.
|
|
Many thanks to Eric Siegerman and his PR235 which contains
|
|
systematic tests for conftest visibility and now passes.
|
|
This change also introduces the concept of a ``rootdir`` which
|
|
is printed as a new pytest header and documented in the pytest
|
|
customize web page.
|
|
|
|
- change reporting of "diverted" tests, i.e. tests that are collected
|
|
in one file but actually come from another (e.g. when tests in a test class
|
|
come from a base class in a different file). We now show the nodeid
|
|
and indicate via a postfix the other file.
|
|
|
|
- add ability to set command line options by environment variable PYTEST_ADDOPTS.
|
|
|
|
- added documentation on the new pytest-dev teams on bitbucket and
|
|
github. See https://pytest.org/en/stable/contributing.html .
|
|
Thanks to Anatoly for pushing and initial work on this.
|
|
|
|
- fix issue650: new option ``--docttest-ignore-import-errors`` which
|
|
will turn import errors in doctests into skips. Thanks Charles Cloud
|
|
for the complete PR.
|
|
|
|
- fix issue655: work around different ways that cause python2/3
|
|
to leak sys.exc_info into fixtures/tests causing failures in 3rd party code
|
|
|
|
- fix issue615: assertion rewriting did not correctly escape % signs
|
|
when formatting boolean operations, which tripped over mixing
|
|
booleans with modulo operators. Thanks to Tom Viner for the report,
|
|
triaging and fix.
|
|
|
|
- implement issue351: add ability to specify parametrize ids as a callable
|
|
to generate custom test ids. Thanks Brianna Laugher for the idea and
|
|
implementation.
|
|
|
|
- introduce and document new hookwrapper mechanism useful for plugins
|
|
which want to wrap the execution of certain hooks for their purposes.
|
|
This supersedes the undocumented ``__multicall__`` protocol which
|
|
pytest itself and some external plugins use. Note that pytest-2.8
|
|
is scheduled to drop supporting the old ``__multicall__``
|
|
and only support the hookwrapper protocol.
|
|
|
|
- majorly speed up invocation of plugin hooks
|
|
|
|
- use hookwrapper mechanism in builtin pytest plugins.
|
|
|
|
- add a doctest ini option for doctest flags, thanks Holger Peters.
|
|
|
|
- add note to docs that if you want to mark a parameter and the
|
|
parameter is a callable, you also need to pass in a reason to disambiguate
|
|
it from the "decorator" case. Thanks Tom Viner.
|
|
|
|
- "python_classes" and "python_functions" options now support glob-patterns
|
|
for test discovery, as discussed in issue600. Thanks Ldiary Translations.
|
|
|
|
- allow to override parametrized fixtures with non-parametrized ones and vice versa (bubenkoff).
|
|
|
|
- fix issue463: raise specific error for 'parameterize' misspelling (pfctdayelise).
|
|
|
|
- On failure, the ``sys.last_value``, ``sys.last_type`` and
|
|
``sys.last_traceback`` are set, so that a user can inspect the error
|
|
via postmortem debugging (almarklein).
|