1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3 .. (c) Huawei Technologies Co.,Ltd and others.
5 ****************************
6 Test-scheduler User Guide
7 ****************************
10 Test-scheduler Introduction
11 ==============================
13 Test scheduler aims to schedule the testing process on NFV(Network
14 Function Virtualizaion) platform or MSA(Microservice Architecture)
15 application.By creating a testcase, you can implements a testing
16 process integrates and schedules the other testing frameworks and tools.
17 You can also create a testsuite which contains several testcases, and run
18 all the testcases at a time.
24 * Docker: https://docs.docker.com/engine/installation/
25 * For Ubuntu, please refer to https://docs.docker.com/engine/installation/linux/ubuntu/
27 * Docker-Compose: https://docs.docker.com/compose/
31 if [ -d usr/local/bin/docker-compose ]; then
32 rm -rf usr/local/bin/docker-compose
34 curl -L https://github.com/docker/compose/releases/download/1.11.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
35 chmod +x /usr/local/bin/docker-compose
41 There are a few steps to do.
44 Download Bottlenecks Software
45 -----------------------------
50 git clone https://gerrit.opnfv.org/gerrit/bottlenecks
51 cd bottlenecks/test-scheduler
54 Build And Run Docker Containers
55 -------------------------------
64 build.sh is used to build the images, and run.sh is use to
65 run the containers based on the images.
66 If you are not the root user, you need to use 'sudo', like:
75 Otherwise there will be a problem of "Permission Denied".
76 The second command takes approximately 1h to finish(
77 so need some patience :) ), and the latter one just takes a few minutes.
79 You can use command the check whether all the containers are in running.
85 if the output contains 6 containers as below, then the project
90 * conductor_conductor-server_1
91 * conductor_conductor-ui_1
92 * conductor_dynomite_1
93 * conductor_elasticsearch_1
95 Sometimes, the command execution fails, and you need to read the sections:
96 *(Optional)Commands Explanation* ,
97 *(Optional) Build And Run Containers Seperately* to solve it.
102 You can visit the web pages via the url: http://your-host-ip:5311/.
104 You can do these operations:
108 * execute a single test case
109 * execute several chosen test cases
110 * execute a single test suite
114 Cleaning Up Environment
115 -----------------------
123 (Optional)Commands Explanation
124 ------------------------------
126 The directory(**docker**) contains the shell scripts which are used
127 to build this project(**test-scheduler**) as a dockerized application.
128 Built by these scripts, the dockerized application will contain
129 6 containers(1 + 1 + 4). They can be divided as three components:
131 * 1 server container: server component of **test-scheduler**.
132 * 1 webUI container: ui component of **test-scheduler**.
133 * a group of 4 containers of Conductor.
135 Correspondingly, there are three subdirectories in the current
136 directory(**docker**):
138 * server: contains scirpts of running server container.
139 * ui: contains scirpts of running ui container.
140 * plugin: contains scirpts of running Conductor containers.
142 The three subdirectories contains scripts respectively.The scripts
143 (in one subdirectory) are used to build image and start container
144 for the single component.
146 Essentially, the **build.sh** and **run.sh** (in the directory(**docker**))
147 call the subdirectory scripts to build all three components.
150 (Optional) Build And Run Containers Seperately
151 ----------------------------------------------
153 If you run the containers successfully, you can skip this section.
154 As said in *Build And Run Docker Containers*, build step will need about 1h to
155 finish.But it sometime will failed due to the network, and the rebuild will
156 take a great time cost.So we can build and run the containers seperately
157 according to the three subdirectories(**server**, **ui**, **plugin**).The
158 steps are similar to *Build And Run Docker Containers*.
160 *IMPORTANT: There are relationships in these components(some need to be
161 created before other).So you can only build the components below in the
162 order:* **plugin** -> **server** -> **ui** .
164 * enter the subdirectory(**$dir** stands for **server**, **ui**, **plugin**).
170 * build the docker images.
176 * run the docker containers.