Testing and result upload client for refstack
Go to file
cdiep 586313852f Add instruction to run a short test to validate the setup.
Update README with instruction to run a short test to validate
the setup before running a full API test.

Change-Id: I35ebc8b3875602bf41d5b8af243311bc98a41f1e
2015-01-30 10:35:28 -08:00
doc Initial documentation dump 2014-09-11 18:17:20 -04:00
refstack_client Merge "Remove upload as default behavior after testing" 2015-01-28 21:27:47 +00:00
.gitignore Added the actual post request to upload 2015-01-12 22:53:23 -08:00
.gitreview Update the README file. 2014-07-30 18:20:53 -07:00
.testr.conf Replace setup_ubuntu_env.sh to universal script 2014-10-13 20:59:04 +00:00
LICENSE First Commit 2014-07-10 11:48:59 -07:00
README.rst Add instruction to run a short test to validate the setup. 2015-01-30 10:35:28 -08:00
refstack-client Add ability to upload test results 2014-10-26 18:03:43 -07:00
requirements.txt Setup_env script should install Tempest from tag 2014-12-12 14:10:13 +02:00
setup_env Setup_env script should install Tempest from tag 2014-12-12 14:10:13 +02:00
setup.cfg Rename refstack-client to refstack_client 2014-09-23 15:17:17 +03:00
setup.py First Commit 2014-07-10 11:48:59 -07:00
test-requirements.txt Updating tests results format according to spec 2015-01-15 19:51:10 +02:00
tox.ini Change returncode checking to file checking 2015-01-07 10:54:55 -08:00

refstack-client

refstack-client is a command line utility that allows you to execute Tempest test runs based on configurations you specify. When finished running Tempest it sends the passed test data back to the Refstack API server.

Environment setup

We've created an "easy button" for Ubuntu, Centos, RHEL and openSuSe.

  1. Make sure you have git installed

  2. Get the refstack client: git clone https://github.com/stackforge/refstack-client

  3. Go into the refstack-client directory: cd refstack-client

  4. Run the "easy button" setup: ./setup_env

    Options:

    a. -t option allows to specify tag in Tempest repository which will be installed. By default, Tempest from last tag release will be used.

Usage

  1. Prepare a tempest configuration file that is customized to your cloud environment.

  2. Go into the refstack-client directory.

    cd ~/refstack-client

  3. Source to use the correct Python environment.

    source .venv/bin/activate

  4. Validate your setup by running a short test.

    ./refstack-client test -c <Path of the tempest configuration file to use>

    -vv -t "tempest.api.identity.admin.test_roles"

  5. Run a full API test set.

    ./refstack-client test -c <Path of the tempest configuration file to use> -vv

    Note:

    1. Adding -v option will show the summary output.
    2. Adding -vv option will show the Tempest test result output.
    3. Adding -t option will only test a particular test case or a test group. This option can be used for quick verification of the target test cases (i.e. -t "tempest.api.identity.admin.test_roles").
    4. Adding --upload option will have your test results be uploaded to the default Refstack API server or the server specified by --url.
    5. Adding --url option will allow you to change where test results should be uploaded.

    Upload:

    If you previously ran a test with refstack-client without the --upload option, you can upload your results to a Refstack API server by using the following command:

    ./refstack-client upload <Path of results file>

    The results file is a JSON file generated by refstack-client when a test has completed. This is saved in .tempest/.testrepository. When you use the 'upload' command, you can also override the Refstack API server uploaded to with the --url option.

Tempest Hacking

By default, refstack-client installs Tempest into the .tempest directory. If you're interested in working with Tempest directly for debugging or configuration, you can activate a working Tempest environment by switching to that directory and using the installed dependencies.

  1. cd .tempest
  2. run tempest with ./run_tempest.sh -V or source ./.venv/bin/activate and run tests manually with testr.

This will make the entire Tempest environment available for you to run, including the run_tempest script and testr.