zaqar/tests/functional
Flavio Percoco 53733f344e Make X-Project-ID a required header
We decided to make X-Project-ID a required header for every request. If
not present, a 400 error should be raised.

Partially-Implements: blueprint api-v1.1-header-changes
Change-Id: I6c6c21585e9a738ff7c0f74ce6a284229ebec2aa
2014-09-02 20:55:18 +02:00
..
wsgi Make X-Project-ID a required header 2014-09-02 20:55:18 +02:00
__init__.py Pull actual tests out of marconi/tests 2013-09-06 10:56:41 +02:00
README.rst Rename Marconi to Zaqar 2014-08-04 10:36:50 +02:00

Zaqar Functional Tests

Zaqar's functional tests treat Zaqar 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 Zaqar server. Refer to the Zaqar README on how to run Zaqar locally, or simply use an existing server.

  2. Change $ZAQAR_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 Zaqar server. Refer to the Zaqar README on how to run Zaqar 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 tests/etc directory

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

  5. Now, to run the system tests, simply use the nosetests commands, e.g.:

    Run all test suites: :

    nosetests -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