blob: 663d4c3fb6d664d3679ebe7ee19d8ac73ca49485 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
==============
Testing Doctor
==============
You have two options to test Doctor functions with the script developed
for doctor CI.
You need to install OpenStack and other OPNFV components except Doctor Sample
Inspector, Sample Monitor and Sample Consumer, as these will be launched in
this script. You are encouraged to use OPNFV official installers, but you can
also deploy all components with other installers such as devstack or manual
operation. In those cases, the versions of all components shall be matched with
the versions of them in OPNFV specific release.
Run Test Script
===============
Doctor project has own testing script under `doctor/doctor_tests`_. This test script
can be used for functional testing agained an OPNFV deployment.
.. _doctor/doctor_tests: https://git.opnfv.org/doctor/tree/doctor_tests
Before running this script, make sure OpenStack env parameters are set properly
(See e.g. `OpenStackClient Configuration`_), so that Doctor Inspector can operate
OpenStack services.
.. _OpenStackClient Configuration: https://docs.openstack.org/python-openstackclient/latest/configuration/index.html
Doctor now supports different test cases and for that you might want to
export TEST_CASE with different values:
.. code-block:: bash
#Fault management (default)
export TEST_CASE='fault_management'
#Maintenance (requires 3 compute nodes)
export TEST_CASE='maintenance'
#Use Fenix in maintenance testing instead of sample admin_tool
export ADMIN_TOOL_TYPE='fenix'
#Run both tests cases
export TEST_CASE='all'
Run Python Test Script
~~~~~~~~~~~~~~~~~~~~~~
You can run the python script as follows:
.. code-block:: bash
git clone https://gerrit.opnfv.org/gerrit/doctor
cd doctor && tox
You can see all the configurations with default values in sample configuration
file `doctor.sample.conf`_. And you can also modify the file to meet your
environment and then run the test.
.. _doctor.sample.conf: https://git.opnfv.org/doctor/tree/etc/doctor.sample.conf
In OPNFV Apex jumphost you can run Doctor testing as follows using tox:
.. code-block:: bash
source overcloudrc
export INSTALLER_IP=${INSTALLER_IP}
export INSTALLER_TYPE=${INSTALLER_TYPE}
git clone https://gerrit.opnfv.org/gerrit/doctor
cd doctor
sudo -E tox
Run Functest Suite
==================
Functest supports Doctor testing by triggering the test script above in a
Functest container. You can run the Doctor test with the following steps:
.. code-block:: bash
DOCKER_TAG=latest
docker pull docker.io/opnfv/functest-features:${DOCKER_TAG}
docker run --privileged=true -id \
-e INSTALLER_TYPE=${INSTALLER_TYPE} \
-e INSTALLER_IP=${INSTALLER_IP} \
-e INSPECTOR_TYPE=sample \
docker.io/opnfv/functest-features:${DOCKER_TAG} /bin/bash
docker exec <container_id> functest testcase run doctor-notification
See `Functest Userguide`_ for more information.
.. _Functest Userguide: :doc:`<functest:testing/user/userguide>`
For testing with stable version, change DOCKER_TAG to 'stable' or other release
tag identifier.
Tips
====
|