py.test/pylib 1.1.0: Python3, Jython, advanced skipping, cleanups …¶
Features:
compatible to Python3 (single py2/py3 source), easy to install
conditional skipping: skip/xfail based on platform/dependencies
generalized marking: mark tests one a whole-class or whole-module basis
Fixes:
code reduction and “de-magification” (e.g. 23 KLoc -> 11 KLOC)
distribute testing requires the now separately released execnet package
funcarg-setup/caching, “same-name” test modules now cause an exlicit error
de-cluttered reporting options, –report for skipped/xfail details
Compatibilities
1.1.0 should allow running test code that already worked well with 1.0.2 plus some more due to improved unittest/nose compatibility.
More information: http://pytest.org
thanks and have fun,
holger (http://twitter.com/hpk42)
Changelog 1.0.2 -> 1.1.0¶
remove py.rest tool and internal namespace - it was never really advertised and can still be used with the old release if needed. If there is interest it could be revived into its own tool i guess.
fix issue48 and issue59: raise an Error if the module from an imported test file does not seem to come from the filepath - avoids “same-name” confusion that has been reported repeatedly
merged Ronny’s nose-compatibility hacks: now nose-style setup_module() and setup() functions are supported
introduce generalized py.test.mark function marking
reshuffle / refine command line grouping
deprecate parser.addgroup in favour of getgroup which creates option group
add –report command line option that allows to control showing of skipped/xfailed sections
generalized skipping: a new way to mark python functions with skipif or xfail at function, class and modules level based on platform or sys-module attributes.
extend py.test.mark decorator to allow for positional args
introduce and test “py.cleanup -d” to remove empty directories
fix issue #59 - robustify unittest test collection
make bpython/help interaction work by adding an __all__ attribute to ApiModule, cleanup initpkg
use MIT license for pylib, add some contributors
remove py.execnet code and substitute all usages with ‘execnet’ proper
fix issue50 - cached_setup now caches more to expectations for test functions with multiple arguments.
merge Jarko’s fixes, issue #45 and #46
add the ability to specify a path for py.lookup to search in
fix a funcarg cached_setup bug probably only occuring in distributed testing and “module” scope with teardown.
many fixes and changes for making the code base python3 compatible, many thanks to Benjamin Peterson for helping with this.
consolidate builtins implementation to be compatible with >=2.3, add helpers to ease keeping 2 and 3k compatible code
deprecate py.compat.doctest|subprocess|textwrap|optparse
deprecate py.magic.autopath, remove py/magic directory
move pytest assertion handling to py/code and a pytest_assertion plugin, add “–no-assert” option, deprecate py.magic namespaces in favour of (less) py.code ones.
consolidate and cleanup py/code classes and files
cleanup py/misc, move tests to bin-for-dist
introduce delattr/delitem/delenv methods to py.test’s monkeypatch funcarg
consolidate py.log implementation, remove old approach.
introduce py.io.TextIO and py.io.BytesIO for distinguishing between text/unicode and byte-streams (uses underlying standard lib io.* if available)
make py.unittest_convert helper script available which converts “unittest.py” style files into the simpler assert/direct-test-classes py.test/nosetests style. The script was written by Laura Creighton.
simplified internal localpath implementation