--- /dev/null
+===========================\r
+OPNFV functional test guide\r
+===========================\r
+\r
+The goal of this document consists in describing how to run functional tests on OPNFV solution and how to automate these tests.\r
+\r
+For release 1, several test cases have been selected:\r
+ * Rally Bench test suite\r
+ * Tempest tes suite\r
+ * OpenDaylight test suite\r
+ * vPing\r
+ * vIMS\r
+ \r
+\r
+.. _prereqs:\r
+\r
+-------------\r
+Prerequisites\r
+-------------\r
+We assume that an OPNFV solution has been installed (System Under Test). \r
+For release 1, the tools needed for functional testing are not part of the installer and are not automatically installed.\r
+\r
+.. _pharos: https://wiki.opnfv.org/pharos\r
+ \r
+It is recommended to install the tools on the jump host server as defined in the Pharos project.\r
+\r
+.. _installation:\r
+\r
+------------\r
+Installation\r
+------------\r
+\r
+Rally bench test suite\r
+======================\r
+\r
+Create or enter a folder where you want to check out the tool repos. Follow `Rally installation procedure`_.\r
+\r
+.. _`Rally installation procedure`: https://rally.readthedocs.org/en/latest/tutorial/step_0_installation.html\r
+\r
+\r
+Tempest\r
+=======\r
+\r
+It is possible to use Rally to perform Tempest tests. See `tempest installation guide using Rally`_.\r
+\r
+.. _`tempest installation guide using Rally`: https://www.mirantis.com/blog/rally-openstack-tempest-testing-made-simpler/ \r
+\r
+OpenDaylight \r
+============\r
+\r
+vPing\r
+=====\r
+\r
+vIMS\r
+====\r
+\r
+\r
+.. _manualtest:\r
+\r
+--------------\r
+Manual testing\r
+--------------\r
+\r
+Rally\r
+=====\r
+Check your deployment::\r
+\r
+ # rally deployment check\r
+ keystone endpoints are valid and following service are available:\r
+ +-------------+-----------+------------+\r
+ | Services | Type | Status |\r
+ +-----------+-------------+------------+\r
+ | cinder | volume | Available |\r
+ | cinderv2 | volumev2 | Available |\r
+ | glance | image | Available |\r
+ | keystone | identity | Available | \r
+ | neutron | network | Available |\r
+ | nova | compute | Available |\r
+ | nova_ec2 | compute_ec2 | Available |\r
+ | novav3 | computev3 | Available |\r
+ +-----------+-------------+------------+\r
+\r
+Create a new opnfv scenario directory and run test suite::\r
+\r
+ # cd ~/rally/samples/tasks/scenario/\r
+ # mkdir opnfv \r
+ # wget http://git.opnfv.org/.. <TODO>\r
+ # rally task start --abort-on-sla-failure ./opnfv.json\r
+\r
+Tempest\r
+=======\r
+\r
+If we consider running Tempest suite with Rally::\r
+\r
+ # rally verify start\r
+ # rally verify list\r
+\r
+\r
+\r
+\r
+OpenDaylight \r
+============\r
+\r
+vPing\r
+=====\r
+\r
+vIMS\r
+====\r
+\r
+\r
+.. _automatictest:\r
+\r
+------------------\r
+Testing Automation\r
+------------------\r
+\r
+Connection of your platform\r
+===========================\r
+If you want to add your platform to the community automation, you need to declare your machine as a Jenkins slave.\r
+ * Send a mail to OPNFV LF Helpdesk (opnfv-helpdesk@rt.linuxfoundation.org)\r
+ * Create a local user jenkins on your machine\r
+ * wget http://mirrors.jenkins-ci.org/war/1.599/jenkins.war\r
+ * Extract contents, find the file named slave.jar and copy it to somewhere which jenkins user created in first step can access.\r
+ * Create a directory /home/jenkins/opnfv_slave_root\r
+ * check the java version (>1.7.0_75)\r
+ * Contact Linux Foundation to manage authentication of your server \r
+ * A key/token will be produced. Establish connection towards OPNFV Jenkins by using below command: java -jar slave.jar -jnlpUrl https://build.opnfv.org/ci/computer/<slave_name>/slave-agent.jnlp -secret <token>\r
+\r
+Continuous integration scripts\r
+==============================\r
+\r
+.. _references:\r
+\r
+----------\r
+References\r
+----------\r
+\r
+OPNFV main site: opnfvmain_.\r
+\r
+OPNFV functional test page: opnfvfunctest_.\r
+\r
+IRC support chan: #opnfv-testperf\r
+\r
+.. _opnfvmain: http://www.opnfv.org\r
+.. _opnfvfunctest: https://wiki.opnfv.org/opnfv_functional_testing\r