See section on environment variables for details.
-cat openstack.creds::
+cat env_file::
export OS_AUTH_URL=XXX
export OS_USER_DOMAIN_NAME=XXX
images/CentOS-7-aarch64-GenericCloud.qcow2
images/CentOS-7-aarch64-GenericCloud.qcow2.xz
images/CentOS-7-x86_64-GenericCloud.qcow2
- images/cirros-0.3.5-x86_64-disk.img
- images/cirros-0.3.5-x86_64-lxc.tar.gz
+ images/cirros-0.4.0-x86_64-disk.img
+ images/cirros-0.4.0-x86_64-lxc.tar.gz
images/cirros-d161201-aarch64-disk.img
images/cirros-d161201-aarch64-initramfs
images/cirros-d161201-aarch64-kernel
images/ubuntu-16.04-server-cloudimg-amd64-disk1.img
images/vyos-1.1.7.img
-
Testing healthcheck suite
--------------------------
Run healthcheck suite::
sudo docker run --env-file env \
- -v $(pwd)/openstack.creds:/home/opnfv/functest/conf/openstack.creds \
- -v $(pwd)/images:/home/opnfv/functest/images \
+ -v $(pwd)/openstack.creds:/home/opnfv/functest/conf/env_file \
+ -v $(pwd)/images:/home/opnfv/functest/images \
opnfv/functest-healthcheck
Results shall be displayed as follows::
+----------------------------+------------------+---------------------+------------------+----------------+
| TEST CASE | PROJECT | TIER | DURATION | RESULT |
+----------------------------+------------------+---------------------+------------------+----------------+
- | connection_check | functest | healthcheck | 00:02 | PASS |
- | api_check | functest | healthcheck | 04:57 | PASS |
- | snaps_health_check | functest | healthcheck | 00:51 | PASS |
+ | connection_check | functest | healthcheck | 00:06 | PASS |
+ | api_check | functest | healthcheck | 06:52 | PASS |
+ | snaps_health_check | functest | healthcheck | 00:42 | PASS |
+----------------------------+------------------+---------------------+------------------+----------------+
NOTE: the duration is a reference and it might vary depending on your SUT.
Run smoke suite::
sudo docker run --env-file env \
- -v $(pwd)/openstack.creds:/home/opnfv/functest/conf/openstack.creds \
- -v $(pwd)/images:/home/opnfv/functest/images \
+ -v $(pwd)/openstack.creds:/home/opnfv/functest/conf/env_file \
+ -v $(pwd)/images:/home/opnfv/functest/images \
opnfv/functest-smoke
Results shall be displayed as follows::
+------------------------------+------------------+---------------+------------------+----------------+
| TEST CASE | PROJECT | TIER | DURATION | RESULT |
+------------------------------+------------------+---------------+------------------+----------------+
- | vping_ssh | functest | smoke | 01:19 | PASS |
- | vping_userdata | functest | smoke | 01:56 | PASS |
- | tempest_smoke_serial | functest | smoke | 26:30 | PASS |
- | rally_sanity | functest | smoke | 19:42 | PASS |
- | refstack_defcore | functest | smoke | 22:00 | PASS |
- | snaps_smoke | functest | smoke | 41:14 | PASS |
- | odl | functest | smoke | 00:16 | PASS |
+ | vping_ssh | functest | smoke | 00:45 | PASS |
+ | vping_userdata | functest | smoke | 00:36 | PASS |
+ | tempest_smoke_serial | functest | smoke | 14:04 | PASS |
+ | rally_sanity | functest | smoke | 23:59 | PASS |
+ | refstack_defcore | functest | smoke | 14:37 | FAIL |
+ | snaps_smoke | functest | smoke | 42:09 | PASS |
+ | odl | functest | smoke | 00:00 | SKIP |
| odl_netvirt | functest | smoke | 00:00 | SKIP |
- | fds | functest | smoke | 00:00 | SKIP |
+------------------------------+------------------+---------------+------------------+----------------+
Note: if the scenario does not support some tests, they are indicated as SKIP.
See User guide for details.
Run features suite::
sudo docker run --env-file env \
- -v $(pwd)/openstack.creds:/home/opnfv/functest/conf/openstack.creds \
- -v $(pwd)/images:/home/opnfv/functest/images \
+ -v $(pwd)/openstack.creds:/home/opnfv/functest/conf/env_file \
+ -v $(pwd)/images:/home/opnfv/functest/images \
opnfv/functest-features
Results shall be displayed as follows::
- +---------------------------+--------------------------+------------------+------------------+----------------+
- | TEST CASE | PROJECT | TIER | DURATION | RESULT |
- +---------------------------+--------------------------+------------------+------------------+----------------+
- | promise | promise | features | 00:00 | SKIP |
- | bgpvpn | sdnvpn | features | 00:00 | SKIP |
- | security_scan | securityscanning | features | 00:00 | SKIP |
- | functest-odl-sfc | sfc | features | 00:00 | SKIP |
- | domino-multinode | domino | features | 00:00 | SKIP |
- | barometercollectd | barometer | features | 00:00 | SKIP |
- +---------------------------+--------------------------+------------------+------------------+----------------+
+ +-----------------------------+------------------------+------------------+------------------+----------------+
+ | TEST CASE | PROJECT | TIER | DURATION | RESULT |
+ +-----------------------------+------------------------+------------------+------------------+----------------+
+ | doctor-notification | doctor | features | 00:00 | SKIP |
+ | bgpvpn | sdnvpn | features | 00:00 | SKIP |
+ | functest-odl-sfc | sfc | features | 00:00 | SKIP |
+ | barometercollectd | barometer | features | 00:00 | SKIP |
+ | fds | fastdatastacks | features | 00:00 | SKIP |
+ +-----------------------------+------------------------+------------------+------------------+----------------+
Note: if the scenario does not support some tests, they are indicated as SKIP.
See User guide for details.
Run components suite::
sudo docker run --env-file env \
- -v $(pwd)/openstack.creds:/home/opnfv/functest/conf/openstack.creds \
- -v $(pwd)/images:/home/opnfv/functest/images \
+ -v $(pwd)/openstack.creds:/home/opnfv/functest/conf/env_file \
+ -v $(pwd)/images:/home/opnfv/functest/images \
opnfv/functest-components
Results shall be displayed as follows::
+-------------------------------+------------------+--------------------+------------------+----------------+
| TEST CASE | PROJECT | TIER | DURATION | RESULT |
+-------------------------------+------------------+--------------------+------------------+----------------+
- | tempest_full_parallel | functest | components | 102:48 | PASS |
- | rally_full | functest | components | 160:58 | PASS |
+ | tempest_full_parallel | functest | components | 52:42 | PASS |
+ | rally_full | functest | components | 114:22 | PASS |
+-------------------------------+------------------+--------------------+------------------+----------------+
Testing vnf suite
Run vnf suite::
sudo docker run --env-file env \
- -v $(pwd)/openstack.creds:/home/opnfv/functest/conf/openstack.creds \
- -v $(pwd)/images:/home/opnfv/functest/images \
+ -v $(pwd)/openstack.creds:/home/opnfv/functest/conf/env_file \
+ -v $(pwd)/images:/home/opnfv/functest/images \
opnfv/functest-vnf
Results shall be displayed as follows::
- +---------------------------------+------------------+--------------+------------------+----------------+
- | TEST CASE | PROJECT | TIER | DURATION | RESULT |
- +---------------------------------+------------------+--------------+------------------+----------------+
- | cloudify_ims | functest | vnf | 21:25 | PASS |
- | orchestra_openims | functest | vnf | 11:02 | FAIL |
- | orchestra_clearwaterims | functest | vnf | 09:13 | FAIL |
- +---------------------------------+------------------+--------------+------------------+----------------+
+ +---------------------------------+-------------------+--------------+------------------+----------------+
+ | TEST CASE | PROJECT | TIER | DURATION | RESULT |
+ +---------------------------------+-------------------+--------------+------------------+----------------+
+ | cloudify_ims | functest | vnf | 28:49 | FAIL |
+ | vyos_vrouter | functest | vnf | 27:57 | FAIL |
+ | juju_epc | functest | vnf | 55:03 | PASS |
+ | orchestra_openims | orchestra | vnf | 00:00 | SKIP |
+ | orchestra_clearwaterims | orchestra | vnf | 00:00 | SKIP |
+ +---------------------------------+-------------------+--------------+------------------+----------------+
Environment variables
* NODE_NAME = <Test POD Name>
* BUILD_TAG = <Jenkins Build Tag>
- * CI_DEBUG = <DebugTraceValue>
where:
which are independently pushed to the results database
from different Jenkins jobs.
DO NOT USE THIS OPTION IN MANUAL TEST SCENARIOS.
- * <DebugTraceValue> = "true" or "false"
- Default = "false", if not specified
- If "true" is specified, then additional debug trace
- text can be sent to the test results file / log files
- and also to the standard console output.
Openstack credentials
OpenStack credentials are mandatory and must be provided to Functest.
When running the command "functest env prepare", the framework will
automatically look for the Openstack credentials file
-"/home/opnfv/functest/conf/openstack.creds" and will exit with
+"/home/opnfv/functest/conf/env_file" and will exit with
error if it is not present or is empty.
There are 2 ways to provide that file:
* by using a Docker volume with -v option when creating the Docker container.
This is referred to in docker documentation as "Bind Mounting".
See the usage of this parameter in the following chapter.
- * or creating manually the file '/home/opnfv/functest/conf/openstack.creds'
+ * or creating manually the file '/home/opnfv/functest/conf/env_file'
inside the running container and pasting the credentials in it. Consult
your installer guide for further details. This is however not
instructed in this document.
includes two main directories:
* The **conf** directory stores configuration files (e.g. the
- OpenStack creds are stored in path '/home/opnfv/functest/conf/openstack.creds'),
+ OpenStack creds are stored in path '/home/opnfv/functest/conf/env_file'),
* the **results** directory stores some temporary result log files
src and repos directories are used to host third party code used for the tests.
| |-- models.py
| `-- swagger
|-- ci
- │ |-- check_deployment.py
- │ |-- config_aarch64_patch.yaml
- │ |-- config_functest.yaml
- │ |-- config_patch.yaml
- │ |-- download_images.sh
- │ |-- logging.ini
- │ |-- rally_aarch64_patch.conf
- │ |-- run_tests.py
- │ |-- testcases.yaml
- │ |-- tier_builder.py
- │ |-- tier_handler.py
+ │ |-- check_deployment.py
+ │ |-- config_aarch64_patch.yaml
+ │ |-- config_functest.yaml
+ │ |-- config_patch.yaml
+ │ |-- download_images.sh
+ │ |-- logging.ini
+ │ |-- rally_aarch64_patch.conf
+ │ |-- run_tests.py
+ │ |-- testcases.yaml
+ │ |-- tier_builder.py
+ │ |-- tier_handler.py
|-- cli
- │ |-- cli_base.py
- │ |-- commands
- │ │ |-- cli_env.py
- │ │ |-- cli_os.py
- │ │ |-- cli_testcase.py
- │ │ |-- cli_tier.py
- │ |-- functest-complete.sh
+ │ |-- cli_base.py
+ │ |-- commands
+ │ │ |-- cli_env.py
+ │ │ |-- cli_os.py
+ │ │ |-- cli_testcase.py
+ │ │ |-- cli_tier.py
+ │ |-- functest-complete.sh
|-- core
- │ |-- feature.py
- │ |-- robotframework.py
- │ |-- testcase.py
- │ |-- unit.py
- │ |-- vnf.py
+ │ |-- feature.py
+ │ |-- robotframework.py
+ │ |-- testcase.py
+ │ |-- unit.py
+ │ |-- vnf.py
|-- energy
- │ |-- energy.py
+ │ |-- energy.py
|-- opnfv_tests
- │ `-- openstack
- │ |-- rally
- │ |-- refstack_client
- │ |-- snaps
- │ |-- tempest
- │ |-- vping
- │ `-- sdn
- │ │ `-- odl
- │ `-- vnf
- │ |-- ims
- │ `-- router
+ │ `-- openstack
+ │ |-- rally
+ │ |-- refstack_client
+ │ |-- snaps
+ │ |-- tempest
+ │ |-- vping
+ │ `-- sdn
+ │ │ `-- odl
+ │ `-- vnf
+ │ |-- ims
+ │ `-- router
|-- tests
- │ `-- unit
- │ |-- ci
- │ |-- cli
- │ |-- core
- │ |-- energy
- │ |-- features
- │ |-- odl
- │ |-- openstack
- │ |-- opnfv_tests
- │ |-- test_utils.py
- │ |-- utils
- │ `-- vnf
+ │ `-- unit
+ │ |-- ci
+ │ |-- cli
+ │ |-- core
+ │ |-- energy
+ │ |-- features
+ │ |-- odl
+ │ |-- openstack
+ │ |-- opnfv_tests
+ │ |-- test_utils.py
+ │ |-- utils
+ │ `-- vnf
|-- utils
| |-- config.py
| |-- constants.py
Once the credentials are there inside the container, they should be
sourced before running any Openstack commands::
- source /home/opnfv/functest/conf/openstack.creds
+ source /home/opnfv/functest/conf/env_file
After this, try to run any OpenStack command to see if you get any
output, for instance::
'no_proxy' environment variable are set correctly::
# Make double sure that the 'no_proxy=...' line in the
- # 'openstack.creds' file is commented out first. Otherwise, the
+ # 'env_file' file is commented out first. Otherwise, the
# values set into the 'no_proxy' environment variable below will
# be ovewrwritten, each time the command
- # 'source ~/functest/conf/openstack.creds' is issued.
+ # 'source ~/functest/conf/env_file' is issued.
cd ~/functest/conf/
- sed -i 's/export no_proxy/#export no_proxy/' openstack.creds
- source ./openstack.creds
+ sed -i 's/export no_proxy/#export no_proxy/' env_file
+ source ./env_file
# Next calculate some IP addresses for which http_proxy
# usage should be excluded:
.. _`Proxy`: https://docs.docker.com/engine/admin/systemd/#http-proxy
.. _`Install Docker on CentOS`: https://docs.docker.com/engine/installation/linux/centos/
.. _`Functest User Guide`: http://docs.opnfv.org/en/stable-danube/submodules/functest/docs/testing/user/userguide/index.html
-.. _`images/CentOS-7-x86_64-GenericCloud.qcow2` http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img
-.. _`images/cirros-0.3.5-x86_64-disk.img` https://cloud-images.ubuntu.com/releases/14.04/release/ubuntu-14.04-server-cloudimg-amd64-disk1.img
-.. _`images/ubuntu-14.04-server-cloudimg-amd64-disk1.img` https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2
+.. _`images/CentOS-7-x86_64-GenericCloud.qcow2`: https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2
+.. _`images/cirros-0.4.0-x86_64-disk.img`: http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img
+.. _`images/ubuntu-14.04-server-cloudimg-amd64-disk1.img`: https://cloud-images.ubuntu.com/releases/14.04/release/ubuntu-14.04-server-cloudimg-amd64-disk1.img