zaqar/tests/functional
Flavio Percoco 34f1d68f2e Use format instead of % for string formatting
As part of keeping Marconi forward compatible, this change replaces
the usage of % for string formatting with .format.

Change-Id: Ie2b1c95f4527339953aa57cceb9b39b0988bef26
2013-09-10 15:49:43 +02:00
..
wsgi Use format instead of % for string formatting 2013-09-10 15:49:43 +02:00
__init__.py Pull actual tests out of marconi/tests 2013-09-06 10:56:41 +02:00
README.rst Move functional tests into wsgi/v1 2013-09-10 11:47:40 +02:00

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.wsgi.v1.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