tempest/README.rst
nayna-patel ddb489cfe5 fix for Bug1078481
Change-Id: I9b730abae07cf52b0ff4fd7b74e91cc4948630f5
2012-11-20 00:09:43 +00:00

78 lines
3.1 KiB
ReStructuredText

::
Tempest - The OpenStack Integration Test Suite
==============================================
This is a set of integration tests to be run against a live cluster.
Quickstart
----------
To run Tempest, you first need to create a configuration file that
will tell Tempest where to find the various OpenStack services and
other testing behavior switches.
The easiest way to create a configuration file is to copy the sample
one in the ``etc/`` directory ::
$> cd $TEMPEST_ROOT_DIR
$> cp etc/tempest.conf.sample etc/tempest.conf
After that, open up the ``etc/tempest.conf`` file and edit the
configuration variables to match valid data in your environment.
This includes your Keystone endpoint, a valid user and credentials,
and reference data to be used in testing.
.. note::
If you have a running devstack environment, look at the
environment variables in your ``devstack/localrc`` file.
The ADMIN_PASSWORD variable should match the api_key value
in the tempest.conf [nova] configuration section. In addition,
you will need to get the UUID identifier of the image that
devstack uploaded and set the image_ref value in the [environment]
section in the tempest.conf to that image UUID.
In addition, the ``<devstack-repo>/tools/configure_tempest.sh`` script can
also be used to generate a tempest.conf based on your devstack's rc files.
TEMPEST_DIR variable points to location /opt/stack/temptest. Update this
variable if the location is different..
Tempest is not tied to any single test runner, but Nose been the most commonly
used tool. After setting up your configuration file, you can execute
the set of Tempest tests by using ``nosetests`` ::
$> nosetests tempest
To run one single test ::
$> nosetests -sv tempest.tests.compute.servers.test_server_actions.py:
ServerActionsTestJSON.test_rebuild_nonexistent_server
Configuration
-------------
At present, there are three sections to be configured: nova, environment,
and image. The nova section includes information about your Keystone endpoint,
as well as valid credentials for a user. It also contains logical timeouts
for certain actions. The environment section contains reference data to be
used when testing the Compute portion of OpenStack, as well as feature flags
for tests that may or may not work based on your hypervisor or current
environment. Lastly, the image section contains credentials and endpoints for
the Glance image service.
Common Issues
-------------
Tempest was originally designed to primarily run against a full OpenStack
deployment. Due to that focus, some issues may occur when running Tempest
against devstack.
Running Tempest, especially in parallel, against a devstack instance may
cause requests to be rate limited, which will cause unexpected failures.
Given the number of requests Tempest can make against a cluster, rate limiting
should be disabled for all test accounts.
Additionally, devstack only provides a single image which Nova can use.
For the moment, the best solution is to provide the same image uuid for
both image_ref and image_ref_alt. Tempest will skip tests as needed if it
detects that both images are the same.