=========================== Testing Your OpenStack Code =========================== ------------ A Quickstart ------------ This is designed to be enough information for you to run your first tests. Detailed information on testing can be found here: https://wiki.openstack.org/wiki/Testing *Install pip*:: $ [apt-get | yum] install python-pip More information on pip here: http://www.pip-installer.org/en/latest/ *Use pip to install tox*:: $ pip install tox Run The Tests ------------- *Navigate to the project's root directory and execute*:: $ tox Note: completing this command may take a long time (depends on system resources) also, you might not see any output until tox is complete. Information about tox can be found here: http://testrun.org/tox/latest/ Run The Tests in One Environment -------------------------------- Tox will run your entire test suite in the environments specified in the project tox.ini:: [tox] envlist = To run the test suite in just one of the environments in envlist execute:: $ tox -e so for example, *run the test suite with the default OS version of Python 3*:: $ tox -e py3 or select a specific version, *run the test suite using Python 3.6*:: $ tox -e py36 Other useful tox options that can be specified when running the test suite are:: -v to increase verbosity of the output, can be repeated up to three times based on the desired verbosity level -r to recreate the virtual environment from scratch Run One Test ------------ To run individual tests with tox: if testr is in tox.ini, for example:: [testenv] includes "python setup.py testr --slowest --testr-args='{posargs}'" run individual tests with the following syntax:: $ tox -e -- path.to.module:Class.test so for example, *run the cpu_limited test in Nova*:: $ tox -e py36 -- nova.tests.test_claims:ClaimTestCase.test_cpu_unlimited if nose is in tox.ini, for example:: [testenv] includes "nosetests {posargs}" run individual tests with the following syntax:: $ tox -e -- --tests path.to.module:Class.test so for example, *run the list test in Glance*:: $ tox -e py36 -- --tests glance.tests.unit.test_auth.py:TestImageRepoProxy.test_list Need More Info? --------------- More information about testr: https://wiki.openstack.org/wiki/Testr More information about tox: https://tox.readthedocs.io/en/latest/ More information about nose: https://nose.readthedocs.org/en/latest/ More information about testing OpenStack code can be found here: https://wiki.openstack.org/wiki/Testing