diff options
author | Alexander Fadeev <fadeevab.com@gmail.com> | 2023-01-27 19:32:32 +0200 |
---|---|---|
committer | Alexander Fadeev <fadeevab.com@gmail.com> | 2023-02-25 02:01:07 +0200 |
commit | 49ba1bc33aeeee88e8d81eef818d3c857fb3b505 (patch) | |
tree | 33e2f197cef393b3ffd34d7e29c05374fd263ec1 /doc | |
parent | 5de745c2bc3aa82049424b9c3e8744cda53a4c74 (diff) | |
download | swift-49ba1bc33aeeee88e8d81eef818d3c857fb3b505.tar.gz |
Present `pytest` steps in development guidelines
Explain how to prepare venv with `tox devenv`
Closes-Bug: #2003984
Change-Id: Idc536034a36646de9c1880c8d0bc0a387b130ac2
Diffstat (limited to 'doc')
-rw-r--r-- | doc/source/development_guidelines.rst | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/doc/source/development_guidelines.rst b/doc/source/development_guidelines.rst index 6fdf7c507..8db586b46 100644 --- a/doc/source/development_guidelines.rst +++ b/doc/source/development_guidelines.rst @@ -46,12 +46,39 @@ To execute the tests: tox +To run a selected subset of unit tests with ``pytest``: + +* Create a virtual environment with ``tox``:: + + tox devenv -e py3 .env + +.. note:: + Alternatively, here are the steps of manual preparation of the virtual environment:: + + virtualenv .env + source .env/bin/activate + pip3 install -r requirements.txt -r test-requirements.txt -c py36-constraints.txt + pip3 install -e . + deactivate + +* Activate the virtual environment:: + + source .env/bin/activate + +* Run some unit tests, for example:: + + pytest test/unit/common/middleware/crypto + +* Run all unit tests:: + + pytest test/unit + .. note:: If you installed using ``cd ~/swift; sudo python setup.py develop``, you may need to do ``cd ~/swift; sudo chown -R ${USER}:${USER} swift.egg-info`` prior to running ``tox``. -* By default ``tox`` will run all of the unit test and pep8 checks listed in +* By default ``tox`` will run **all of the unit test** and pep8 checks listed in the ``tox.ini`` file ``envlist`` option. A subset of the test environments can be specified on the ``tox`` command line or by setting the ``TOXENV`` environment variable. For example, to run only the pep8 checks and python2.7 @@ -63,6 +90,10 @@ To execute the tests: TOXENV=py27,pep8 tox + To run unit tests with python3.8:: + + tox -e py38 + .. note:: As of ``tox`` version 2.0.0, most environment variables are not automatically passed to the test environment. Swift's ``tox.ini`` overrides this default |