TestSoftware¶
Legacy Wiki Page
This page was migrated from the old MoinMoin-based wiki. Information may be outdated or no longer applicable. For current documentation, see python.org.
Complete Taxonomy¶
Please visit the PythonTestingToolsTaxonomy for a much more complete list of test tools of all kinds.
Software¶
UnitTest in the standard library (http://docs.python.org/lib/module-unittest.html)
StatementCoverage This module runs your code, then produces a report on how many statements were executed, and which ones were not. Use it to ensure your unit tests test everything.
McCabe-like Python Cyclomatic Complexity analysis tools are available at http://journyx.com/curt/complexity.html. They’re written in Perl, but read and analyze only Python code. Complexity is bad, this will help you simplify code - especially code you didn’t write.
zope.testing provides a powerful test runner that supports test discovery and a wide range of options to control how tests are run and results reported.
nose is “a discovery-based unittest extension” that generally also supports PyTest functionality.
Best Practices¶
Discussion¶
Sprouted out by http://formencode.org/docs/DataTest/TODO.html.
What I need is a layered test system like
test suit
with fast/normal/detailed mode
with known failing tests excluded
test package to group related tests with preset parameters
individual test
with options like log details
with ability to flex parameters, extend options etc.
test utilities
fuzzy difference
different logging/reporting/visualization helpers
with output capture capability
– MikeRovner 2004-02-27 19:25:32