Jump to: navigation, search


Revision as of 22:24, 18 June 2013 by Anteaya (talk | contribs) (Testing OpenStack Projects)

Testing OpenStack Projects

Unit tests are available for each project, and testing also involves installing and running OpenStack Compute or Object Store and reporting any oddities you see.

It is suggested you install tox [1] with pip [2].

`[apt-get | yum] install python-pip`

`pip install tox` (`pip install --upgrade tox` - upgrades tox)

Sample tox.ini file https://github.com/openstack/nova/blob/master/tox.ini

There will be a tox.ini file in the root directory of every project.

Within the tox.ini file you might see any of the following envlist options:


envlist = py26,py27,py33,pep8,pylint

or others.

Tempest also has integration tests.

Running Swift Tests

Swift has functional tests, functional nose tests, and unit tests available in the source in the test directory. At Rackspace we test several environments including a staging area with 36 storage nodes.

Running Nova Tests

As a prerequisite to running tests for OpenStack Compute (Nova), redis must be installed and running.

To run tests, run the run_tests.sh script in the Nova source code directory. Nose tests in Nova will not work in the Austin release but will work in the Bexar release. Look at ./test/functionalnosetests/swift_testing.py for an explanation on how the test script decides whether functional tests are skipped or not based on the availability of configuration information.

If the tests are successfully running, you see a series of periods (.). Typically the tests take just a minute or two to run. If there is an Error, you see an E. When errors occur, check either /var/log/syslog or /var/log/messages to see if there are any errors in those logs.