zaqar/tests/functional/README.rst
Flaper Fesp 80157e6a4a Run functional tests under tox
This patch allows to run functional tests under tox, however, they are
disabled by default. In order to run tests with tox, it is necessary to
enable them by modifying the functional-tests.conf and setting run_tests
to True.

This patch also merged both test files in a single one
(test-requirements.txt)

blueprint refactor-system-tests

Change-Id: Iba440b12653cf9ee1454022830107a06b8a7bea9
2013-09-10 11:39:51 +02:00

1.9 KiB

Marconi Functional Tests ====================

Marconi's functional tests treat Marconi as a black box. In other words, the API calls attempt to simulate an actual user. Unlike unit tests, the functional tests do not use mockendpoints.

Running functional tests (With Tox)

  1. Setup a Marconi server. Refer to the Marconi README on how to run Marconi locally, or simply use an existing server.

  2. Change $MARCONI_TESTS_CONFIGS_DIR/functional-tests.conf and set run_tests to True.

  3. Run tests. :

    $ tox
  4. Filter tests. :

    $ tox -- --tests tests.functional.test_messages
  5. Run tests for specific environments. :

    $ tox -epy27,pep8

Running the Functional Tests (Without Tox)

  1. Setup a Marconi server. Refer to the Marconi README on how to run Marconi locally, or simply use an existing server.

  2. Install functional tests dependencies. :

    pip install -r requirements.txt
    pip install -r test-requirements.txt
  3. cd to the marconi/tests/functional directory

  4. Copy marconi/tests/etc/functional-tests.conf-sample to one of the following locations:

    ~/.marconi/functional-tests.conf
    /etc/marconi/functional-tests.conf
  5. Update the config file to point to the Marconi server you want to run the tests against

  6. If leaving keystone auth enabled, update system-tests.conf with a valid set of credentials.

  7. Now, to run the sytem tests, simply use the nosetests commands, e.g.:

    Run all test suites: :

    nosetests --tests tests.functional -v

Adding New Tests

  1. Add test case to an appropriate test case file: :

    queue/test_queue.py
    messages/test_messages.py
    claim/test_claims.py