## Nosetest plugin for test dependencies.
Normally tests should not depend on each other - and it should be avoided as long as possible. Optimally each test should be able to run in isolation.
However there might be rare cases or special circumstances where one would want this. For example if having very slow integration tests where redoing what test A did just to run test B would simply be too costly. Or temporarily while testing or debugging. It’s also possible that one wants some test to run first as ‘smoke tests’ such that the rest can be skipped if those tests fail.
The current implementation allows marking tests with the @depends decorator where it can be declared if the test needs to run before or after some other specific test(s).
There is also support for skipping tests based on the dependency results, thus if test B depends on test A and test A fails then B will be skipped with the reason that A failed.
Nosedep also supports running the necessary dependencies for a single test, thus if you specify to run only test B and test B depends on A; then A will run before B to satisfy that dependency.
Note that ‘before’ dependencies are treated as soft. A soft dependency will only affect the test ordering, not force inclusion. For example if we have:
def test_a: pass @depends(before=test_a) def test_b: pass
and run all tests they would run in the order b,a. If you specify to run only either one of them only that test would run. However changing it to:
@depends(after=test_b) def test_a: pass def test_b: pass
would affect the case when you specify to run only test a, since it would have to run test b first to specify the ‘after’ dependency since it’s a ‘hard’ dependency.
Finally there is prioritization support. Each test can be given an integer priority and the tests will run in order from lowest to highest. Dependencies take precedence so in total the ordering will be:
All tests with a priority lower or equal to the default that are not part of any dependency chain ordered first by priority then by name.
Dependency groups in order, while each dependency group is internally ordered the same as point 1.
All tests with priority higher than the default that are not part of any dependency chain ordered first by priority then by name.
Default priority if not specified is 50.
Note: Currently no support for Python 2.6 and 3.2. Should work for 2.7 and 3.3+.
## Info
[](https://pypi.python.org/pypi/nosedep) [](https://landscape.io/github/Zitrax/nose-dep/master) [](https://travis-ci.org/Zitrax/nose-dep) [](https://coveralls.io/github/Zitrax/nose-dep?branch=master)
Metadata
Release files for nosedep 0.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| nosedep-0.7.tar.gz | 11.6 kB | Without provenance | Details for nosedep-0.7.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| nosedep-0.7-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details for nosedep-0.7-py2.py3-none-any.whl |
Total release size: 21.3 kB
Release files / nosedep-0.7.tar.gz
| Download URL | nosedep-0.7.tar.gz |
|---|---|
| Size | 11.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
17a90329efeb571976e4c2a9598672a57313ebdeadb70c85687127feec34de3d
|
|
BLAKE2b-256 checksum How to use checksums |
547b46328d9041971f84f9fb5a341a4b2eab3f4f7c94ec4c206b3ebf4317bc3c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.10.0 pkginfo/1.2.1 requests/2.18.4 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.19.5 CPython/3.6.6
|
Release files / nosedep-0.7-py2.py3-none-any.whl
| Download URL | nosedep-0.7-py2.py3-none-any.whl |
|---|---|
| Size | 9.7 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
1477d29aa61854bb05f782a84077280ab24183d557dc56071943548a506bcbf2
|
|
BLAKE2b-256 checksum How to use checksums |
ed947d026802854064195402e74ec8a0efcd71179df6388bada5658ae94db7d3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.10.0 pkginfo/1.2.1 requests/2.18.4 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.19.5 CPython/3.6.6
|
Security for nosedep 0.7
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.