X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=docs%2Ftesting%2Fdeveloper%2Fdevguide%2Fposca_guide.rst;h=ae6c248126930fb9cf8dc2a6b5d77e9bb8511fa8;hb=45d371c2a2d89231db9ffa892ce19da8f8b3cfa4;hp=5b2556f8cf83ebbaae5586d9fb8609e07fb1ec87;hpb=aecb9de94d78b3871fbb2b2751f873bf643e27bb;p=bottlenecks.git diff --git a/docs/testing/developer/devguide/posca_guide.rst b/docs/testing/developer/devguide/posca_guide.rst index 5b2556f8..ae6c2481 100644 --- a/docs/testing/developer/devguide/posca_guide.rst +++ b/docs/testing/developer/devguide/posca_guide.rst @@ -38,18 +38,33 @@ Detailed workflow is illutrated below. * https://wiki.opnfv.org/display/bottlenecks + Preinstall Packages ==================== -* Please refer to release notes. +* Docker: https://docs.docker.com/engine/installation/ + * For Ubuntu, please refer to https://docs.docker.com/engine/installation/linux/ubuntu/ + +* Docker-Compose: https://docs.docker.com/compose/ + +.. code-block:: bash + + if [ -d usr/local/bin/docker-compose ]; then + rm -rf usr/local/bin/docker-compose + fi + curl -L https://github.com/docker/compose/releases/download/1.11.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose + chmod +x /usr/local/bin/docker-compose + Run POSCA Locally ================= -POSCA testsuite is hight automated regarding test environment preparation, installing testing tools, excuting tests and show the report/analysis. A few steps are needed to run it locally. +POSCA testsuite is highly automated regarding test environment preparation, installing testing tools, excuting tests and showing the report/analysis. +A few steps are needed to run it locally. It is presumed that a user is using Compass4nfv to deploy OPNFV Danube and the user logins jumper server as root. + Downloading Bottlenecks Software -------------------------------- @@ -58,6 +73,8 @@ Downloading Bottlenecks Software mkdir /home/opnfv cd /home/opnfv git clone https://gerrit.opnfv.org/gerrit/bottlenecks + cd bottlenecks + Preparing Python Virtual Evnironment ------------------------------------ @@ -66,6 +83,7 @@ Preparing Python Virtual Evnironment . pre_virt_env.sh + Excuting Specified Testcase --------------------------- @@ -75,7 +93,8 @@ Bottlencks provide a CLI interface to run the tests, which is one of the most co bottlenecks [testcase run ] [teststory run ] -For the *testcase* command, testcase name should be the same as the name of the test case configuration file located in testsuites/posca/testcase_cfg. +For the *testcase* command, testcase name should be as the same name of the test case configuration file located in testsuites/posca/testcase_cfg. +For stress tests in Danube, *testcase* should be replaced by either *posca_factor_ping* or *posca_factor_system_bandwidth*. For the *teststory* command, a user could specified the test cases to be excuted by defined it in a teststory configuration file located in testsuites/posca/testsuite_story. There is also an example there named *posca_factor_test*. There are also other 2 ways to run test cases and test stories. @@ -83,14 +102,26 @@ The first one is using shell script. .. code-block:: bash - bash run_tests.sh [-h|--help] [-s ] [-c ] + bash run_tests.sh [-h|--help] [-s ] [-c ] The second is using python interpreter. .. code-block:: bash - python testsuites/posca/run_posca.py [testcase ] [teststory ] + docker-compose -f docker/bottleneck-compose/docker-compose.yml up -d + docker pull tutum/influxdb:0.13 + sleep 5 + POSCA_SCRIPT="/home/opnfv/bottlenecks/testsuites/posca" + docker exec bottleneckcompose_bottlenecks_1 python ${POSCA_SCRIPT}/run_posca.py [testcase ] [teststory ] + + +Showing Report +-------------- +Bottlenecks uses ELK to illustrate the testing results. +Asumming IP of the SUT (System Under Test) is denoted as ipaddr, +then the address of Kibana is http://[ipaddr]:5601. One can visit this address to see the illustrations. +Address for elasticsearch is http://[ipaddr]:9200. One can use any Rest Tool to visit the testing data stored in elasticsearch. Cleaning Up Environment ----------------------- @@ -100,9 +131,44 @@ Cleaning Up Environment . rm_virt_env.sh +If you want to clean the dockers that established during the test, you can excute the additional commands below. + +.. code-block:: bash + + docker-compose -f docker/bottleneck-compose/docker-compose.yml down -d + docker ps -a | grep 'influxdb' | awk '{print $1}' | xargs docker rm -f >/dev/stdout + +Or you can just run the following command + +.. code-block:: bash + + bash run_tests.sh --cleanup + +Note that you can also add cleanup parameter when you run a test case. Then environment will be automatically cleaned up when +completing the test. + Run POSCA through Community CI ============================== -* POSCA test cases are runned by OPNFV CI now. See https://build.opnfv.org for more information. +POSCA test cases are runned by OPNFV CI now. See https://build.opnfv.org for details of the building jobs. +Each building job is set up to execute a single test case. The test results/logs will be printed on the web page and +reported automatically to community MongoDB. There are two ways to report the results. + +1. Report testing result by shell script + +.. code-block:: bash + + bash run_tests.sh [-h|--help] [-s ] [-c ] --report + +2. Report testing result by python interpreter + +.. code-block:: bash + + docker-compose -f docker/bottleneck-compose/docker-compose.yml up -d + docker pull tutum/influxdb:0.13 + sleep 5 + REPORT="True" + POSCA_SCRIPT="/home/opnfv/bottlenecks/testsuites/posca" + docker exec bottleneckcompose_bottlenecks_1 python ${POSCA_SCRIPT}/run_posca.py [testcase ] [teststory ] REPORT Test Result Description =======================