6c358e72ea
Add the ability for Zuul to accept inputs from multiple trigger sources simultaneously. Pipelines are associated with exactly one trigger, which must now be named in the configuration file. Co-Authored-By: Monty Taylor <mordred@inaugust.com> Change-Id: Ief2b31a7b8d85d30817f2747c1e2635f71ea24b9
93 lines
2.1 KiB
ReStructuredText
93 lines
2.1 KiB
ReStructuredText
===========================
|
|
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 = <list of available environments>
|
|
|
|
To run the test suite in just one of the environments in envlist execute::
|
|
|
|
tox -e <env>
|
|
so for example, *run the test suite in py26*::
|
|
|
|
tox -e py26
|
|
|
|
Run One Test
|
|
------------
|
|
|
|
To run individual tests with tox::
|
|
|
|
tox -e <env> -- path.to.module.Class.test
|
|
|
|
For example, to *run the basic Zuul test*::
|
|
|
|
tox -e py27 -- tests.test_scheduler.TestScheduler.test_jobs_launched
|
|
|
|
To *run one test in the foreground* (after previously having run tox
|
|
to set up the virtualenv)::
|
|
|
|
.tox/py27/bin/python -m testtools.run tests.test_scheduler.TestScheduler.test_jobs_launched
|
|
|
|
List Failing Tests
|
|
------------------
|
|
|
|
.tox/py27/bin/activate
|
|
testr failing --list
|
|
|
|
Hanging Tests
|
|
-------------
|
|
|
|
The following will run each test in turn and print the name of the
|
|
test as it is run::
|
|
|
|
. .tox/py27/bin/activate
|
|
testr run --subunit | subunit2pyunit
|
|
|
|
You can compare the output of that to::
|
|
|
|
python -m testtools.run discover --list
|
|
|
|
Need More Info?
|
|
---------------
|
|
|
|
More information about testr: https://wiki.openstack.org/wiki/Testr
|
|
|
|
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
|