Skip to content

A tiny package to ease the creation of test steps with shared intermediate results/state.

License

Notifications You must be signed in to change notification settings

smarie/python-pytest-steps

Folders and files

NameName
Last commit message
Last commit date

Latest commit

0f4f580 · Jan 8, 2019
Jan 7, 2019
Jan 8, 2019
Jan 8, 2019
Jul 27, 2018
Nov 21, 2018
Jul 27, 2018
Nov 7, 2018
Jul 27, 2018
Dec 17, 2018

Repository files navigation

pytest-steps

Create step-wise / incremental tests in pytest.

Build Status Tests Status codecov Documentation PyPI

This is the readme for developers. The documentation for users is available here: https://smarie.github.io/python-pytest-steps/

Want to contribute ?

Contributions are welcome ! Simply fork this project on github, commit your contributions, and create pull requests.

Here is a non-exhaustive list of interesting open topics: https://github.com/smarie/python-pytest-steps/issues

Running the tests

This project uses pytest.

pytest -v pytest_steps/tests/

You may need to install requirements for setup beforehand, using

pip install -r ci_tools/requirements-test.txt

Packaging

This project uses setuptools_scm to synchronise the version number. Therefore the following command should be used for development snapshots as well as official releases:

python setup.py egg_info bdist_wheel rotate -m.whl -k3

You may need to install requirements for setup beforehand, using

pip install -r ci_tools/requirements-setup.txt

Generating the documentation page

This project uses mkdocs to generate its documentation page. Therefore building a local copy of the doc page may be done using:

mkdocs build -f docs/mkdocs.yml

You may need to install requirements for doc beforehand, using

pip install -r ci_tools/requirements-doc.txt

Generating the test reports

The following commands generate the html test report and the associated badge.

pytest --junitxml=junit.xml -v pytest_steps/tests/
ant -f ci_tools/generate-junit-html.xml
python ci_tools/generate-junit-badge.py

PyPI Releasing memo

This project is now automatically deployed to PyPI when a tag is created. Anyway, for manual deployment we can use:

twine upload dist/* -r pypitest
twine upload dist/*

Merging pull requests with edits - memo

Ax explained in github ('get commandline instructions'):

git checkout -b <git_name>-<feature_branch> master
git pull https://github.com/<git_name>/python-pytest-steps.git <feature_branch> --no-commit --ff-only

if the second step does not work, do a normal auto-merge (do not use rebase!):

git pull https://github.com/<git_name>/python-pytest-steps.git <feature_branch> --no-commit

Finally review the changes, possibly perform some modifications, and commit.