Did a quick 2.3.1 with some fixes: - fix issue202 - regression with fixture functions/funcarg factories: using "self" with class-level fixtures is now safe again and works as in 2.2.4. Thanks to Eduard Schettino for the quick bug report.
- disable pexpect pytest self tests on Freebsd - thanks Koob for the quick reporting - fix/improve interactive docs with --markers I am planning to do further quick regression-fixing minor 2.3.* releases if neccessary - not going to announce each of them, though. So make sure you have the newest version with e. g. "pip install -U pytest" and keep the bug reports flowing :) best, holger Changes between 2.3.0 and 2.3.1 ----------------------------------- - fix issue202 - fix regression: using "self" from fixture functions now works as expected (it's the same "self" instance that a test method which uses the fixture sees) - skip pexpect using tests (test_pdb.py mostly) on freebsd* systems due to pexpect not supporting it properly (hanging) - link to web pages from --markers output which provides help for pytest.mark.* usage. On Fri, Oct 19, 2012 at 09:44 +0000, holger krekel wrote: > pytest-2.3: improved fixtures / better unittest integration > ============================================================================= > > pytest-2.3 comes with many major improvements for fixture/funcarg management > and parametrized testing in Python. It is now easier, more efficient and > more predicatable to re-run the same tests with different fixture > instances. Also, you can directly declare the caching "scope" of > fixtures so that dependent tests throughout your whole test suite can > re-use database or other expensive fixture objects with ease. Lastly, > it's possible for fixture functions (formerly known as funcarg > factories) to use other fixtures, allowing for a completely modular and > re-useable fixture design. > > For detailed info and tutorial-style examples, see: > > http://pytest.org/latest/fixture.html > > Moreover, there is now support for using pytest fixtures/funcargs with > unittest-style suites, see here for examples: > > http://pytest.org/latest/unittest.html > > Besides, more unittest-test suites are now expected to "simply work" > with pytest. > > All changes are backward compatible and you should be able to continue > to run your test suites and 3rd party plugins that worked with > pytest-2.2.4. > > If you are interested in the precise reasoning (including examples) of > the pytest-2.3 fixture evolution, please consult > http://pytest.org/latest/funcarg_compare.html > > For general info on installation and getting started: > > http://pytest.org/latest/getting-started.html > > Docs and PDF access as usual at: > > http://pytest.org > > and more details for those already in the knowing of pytest can be found > in the CHANGELOG below. > > Particular thanks for this release go to Floris Bruynooghe, Alex Okrushko > Carl Meyer, Ronny Pfannschmidt, Benjamin Peterson and Alex Gaynor for helping > to get the new features right and well integrated. Ronny and Floris > also helped to fix a number of bugs and yet more people helped by > providing bug reports. > > have fun, > holger krekel > > > Changes between 2.2.4 and 2.3.0 > ----------------------------------- > > - fix issue202 - better automatic names for parametrized test functions > - fix issue139 - introduce @pytest.fixture which allows direct scoping > and parametrization of funcarg factories. Introduce new @pytest.setup > marker to allow the writing of setup functions which accept funcargs. > - fix issue198 - conftest fixtures were not found on windows32 in some > circumstances with nested directory structures due to path manipulation > issues > - fix issue193 skip test functions with were parametrized with empty > parameter sets > - fix python3.3 compat, mostly reporting bits that previously depended > on dict ordering > - introduce re-ordering of tests by resource and parametrization setup > which takes precedence to the usual file-ordering > - fix issue185 monkeypatching time.time does not cause pytest to fail > - fix issue172 duplicate call of pytest.setup-decoratored setup_module > functions > - fix junitxml=path construction so that if tests change the > current working directory and the path is a relative path > it is constructed correctly from the original current working dir. > - fix "python setup.py test" example to cause a proper "errno" return > - fix issue165 - fix broken doc links and mention stackoverflow for FAQ > - catch unicode-issues when writing failure representations > to terminal to prevent the whole session from crashing > - fix xfail/skip confusion: a skip-mark or an imperative pytest.skip > will now take precedence before xfail-markers because we > can't determine xfail/xpass status in case of a skip. see also: > > http://stackoverflow.com/questions/11105828/in-py-test-when-i-explicitly-skip-a-test-that-is-marked-as-xfail-how-can-i-get > > - always report installed 3rd party plugins in the header of a test run > > - fix issue160: a failing setup of an xfail-marked tests should > be reported as xfail (not xpass) > > - fix issue128: show captured output when capsys/capfd are used > > - fix issue179: propperly show the dependency chain of factories > > - pluginmanager.register(...) now raises ValueError if the > plugin has been already registered or the name is taken > > - fix issue159: improve http://pytest.org/latest/faq.html > especially with respect to the "magic" history, also mention > pytest-django, trial and unittest integration. > > - make request.keywords and node.keywords writable. All descendant > collection nodes will see keyword values. Keywords are dictionaries > containing markers and other info. > > - fix issue 178: xml binary escapes are now wrapped in py.xml.raw > > - fix issue 176: correctly catch the builtin AssertionError > even when we replaced AssertionError with a subclass on the > python level > > - factory discovery no longer fails with magic global callables > that provide no sane __code__ object (mock.call for example) > > - fix issue 182: testdir.inprocess_run now considers passed plugins > > - fix issue 188: ensure sys.exc_info is clear on python2 > before calling into a test > > - fix issue 191: add unittest TestCase runTest method support > - fix issue 156: monkeypatch correctly handles class level descriptors > > - reporting refinements: > > - pytest_report_header now receives a "startdir" so that > you can use startdir.bestrelpath(yourpath) to show > nice relative path > > - allow plugins to implement both pytest_report_header and > pytest_sessionstart (sessionstart is invoked first). > > - don't show deselected reason line if there is none > > - py.test -vv will show all of assert comparisations instead of truncating > > _______________________________________________ > py-dev mailing list > py-dev@codespeak.net > http://codespeak.net/mailman/listinfo/py-dev > _______________________________________________ py-dev mailing list py-dev@codespeak.net http://codespeak.net/mailman/listinfo/py-dev