OpenStack based test automation framework. Based on OpenCAFE engine
Go to file
Daryl Walleck ecaa272277 Removes hard-coded underscore from generated names
* Removes the hard coded underscore from rand_name as it can cause
  unintended and unavoidable problems (server hostnames in this case)

Change-Id: Id20e59fd4c1c76ca9f930b1b763d9a489ee7fe9c
2014-10-13 17:26:10 -05:00
cloudcafe Removes hard-coded underscore from generated names 2014-10-13 17:26:10 -05:00
configs Sample configuration file for networking 2014-09-21 17:04:18 -05:00
metatests Merge "Neutron LBaaS: LoadBalancer Behaviors" 2014-09-08 15:02:26 +00:00
.gitignore Add DS_Store to gitignore 2014-01-28 08:05:59 -06:00
.gitreview Added .gitreview 2013-04-01 02:24:14 -05:00
HISTORY.rst Initial Commit 2013-03-30 14:48:37 -05:00
LICENSE Initial Commit 2013-03-30 14:48:37 -05:00
MANIFEST.in Refactor to support changes made in engine config overhaul 2013-09-06 13:54:03 -05:00
README.md Fixes up a few minor things in README.md 2014-05-04 22:43:09 -05:00
pip-requires Adding subnet behavior methods for IPv6 2014-10-13 12:25:48 -05:00
run_tests.sh Added a script to run the existing unit tests. 2013-12-06 10:07:12 -06:00
setup.py Removes distutils code, old aliases, and bad url from setup.py 2014-05-22 14:05:01 -05:00
test-requirements.txt Moving httpretty to the test-requirements.txt file because it's 2014-01-30 11:39:16 -06:00
unittest.engine.config Refactor to support changes made in engine config overhaul 2013-09-06 13:54:03 -05:00

README.md

CloudCAFE, An Open CAFE Implementation for OpenStack

   _ _ _
  ( `   )_
 (    )   `)  _
(____(__.___`)__)

    ( (
       ) )
    .........
    |       |___
    |       |_  |
    |  :-)  |_| |
    |       |___|
    |_______|
=== CloudCAFE ===
= An Open CAFE Implementation =

CloudCAFE is an implementation of the Open CAFE Framework specifically designed to test deployed versions of OpenStack. It is built using the Open CAFE Core.

Supported Operating Systems

CloudCAFE has been developed primarily in Linux and Mac environments, however it supports installation and execution on Windows.

Installation

CloudCAFE can be installed with pip from the git repository after it is cloned to a local machine.

  • First follow the README instructions to install Open CAFE Core.
  • Clone this repository to your local machine.
  • CD to the cloned cloudcafe repository directory.
  • Run pip install . --upgrade so that pip will auto-install all other dependencies.

Configuration

CloudCAFE works in tandem with the Open CAFE Core cafe-runner. This installation of CloudCAFE includes a reference configuration for each of the CloudCAFE supported OpenStack products. Configurations will be installed to <USER_HOME>/.cloudcafe/configs/<PRODUCT>.

To use CloudCAFE you will need to create/install your own configurations based on the reference configs pointing to your deployment of OpenStack.

At this stage you will have the Open CAFE Core engine and the CloudCAFE Framework implementation. From this point you are ready to:

  1. Write entirely new tests using the CloudCAFE Framework,

    or...

  2. Install the CloudRoast Test Repository, an open source body of OpenStack automated tests written with CloudCAFE that can be executed or extended.

Logging

CloudCAFE leverages the logging capabilities of the CAFE Core engine. If tests are executed with the built-in cafe-runner, runtime logs will be output to <USER_HOME>/.cloudcafe/logs/<PRODUCT>/<CONFIGURATION>/<TIME_STAMP>. In addition, tests built from the built-in CAFE unittest driver will generate csv statistics files in <USER_HOME>/.cloudcafe/logs/<PRODUCT>/<CONFIGURATION>/statistics for each and ever execution of each and every test case that provides metrics of execution over time for elapsed time, pass/fail rates, etc.

Basic CloudCAFE Package Anatomy

Below is a short description of the top level CloudCAFE Packages.

  • cloudcafe
    This is the root package for all things CloudCAFE.

  • common
    Contains modules that extend the CAFE Core engine specific to OpenStack. This is the primary namespace for tools, data generators, common reporting classes, etc.

  • identity
    OpenStack Identity Service plug-in based on CAFE Core extensions.

  • compute
    OpenStack Compute plug-in based on CAFE Core extensions.

  • blockstorage
    OpenStack Block Storage plug-in based on CAFE Core extensions.

  • objectstorage
    OpenStack Object Storage plug-in based on CAFE Core extensions.