A compact version of the documentation library.
[opnfvdocs.git] / docs / platformoverview / testcasesframework.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3 .. (c) OPNFV, Huawei
4
5 =================
6 Testing ecosystem
7 =================
8
9 Testing is a key area and also a challenge for OPNFV in order to be able to
10 verify and validate the platform we are creating.
11
12 This is a complex task as we have to test the integration of the components,
13 the functionality we are creating and using and we have to verify
14 that the platform is suitable for telecom applications.
15 We do testing in an automated fashion by using several test tools and frameworks in our CI/CD pipeline.
16
17 This chapter gives an overview about our testing tools and activities.
18
19
20 Release verification
21 ====================
22
23 OPNFV releases the target platform together with the deployment tools in a set of scenarios
24 that provides choices regarding the deployed components and the available features.
25 The scenarios and the provided functionality are tested automatically in the CI/CD pipeline
26 mentioned above and they are considered to be ready for release after
27 at least 4 successful consecutive iterations.
28
29 The functional testing and the platform validation are divided between two projects called Functest and Yardstick.
30
31 Functest
32 --------
33
34 Functest provides a functional testing framework along with a set of test suites
35 and test cases that test and verify OPNFV platform functionality.
36 The scope of Functest and relevant test cases can be found in its
37 `user guide <http://artifacts.opnfv.org/functest/brahmaputra/docs/userguide/userguide.pdf>`_.
38
39 In Brahmaputra, Functest is focusing on OpenStack and SDN controllers deployment testing.
40 Its testing framework combines a number of testing tools
41 to verify the key components of the OPNFV platform are running successfully.
42 For example, Rally and Tempest are integrated for OpenStack basic functional testing and benchmark,
43 Robot is used for ODL testing, and Teston is integrated for ONOS testing.
44 Besides these, Functest also includes tests by deploying candidate VNFs such as vPing and vIMS, and testing their basic functionality.
45
46 Yardstick
47 ---------
48
49 Yardstick is a testing project for verifying the infrastructure compliance when running VNF applications.
50 Yardstick can benchmark a number of characteristics/performance vectors about the infrastructure,
51 that makes it become a useful pre-deployment NFVI testing tools.
52
53 Yardstick is also a flexible testing framework supporting OPNFV feature testing by the various projects in OPNFV.
54 Projects can plug in their test cases for specific features easily.
55
56 The detail of Yardstick project can be found in the
57 `yardstick user guide <http://artifacts.opnfv.org/yardstick/brahmaputra/user_guides_framework/user_guides_framework.pdf>`_.
58
59 There are two types of test cases in Yardstick: Yardstick generic test cases and OPNFV feature test cases.
60 Yardstick generic test cases include basic characteristics benchmarking in compute/storage/network area.
61 OPNFV feature test cases include basic telecom feature testing from OPNFV projects,
62 for example nfv-kvm, sfc, ipv6, Parser, Availability and SDN VPN.
63
64 All of the Yardstick test cases are listed on
65 `<http://artifacts.opnfv.org/yardstick/brahmaputra/docs/configguide_yardstick_testcases/03-list-of-tcs.html>`_.
66
67
68 Additional Testing
69 ==================
70
71 Besides the test suites and cases for release verification, there are some additional testing
72 for specific feature or characteristics on OPNFV platform.
73 These testing framework and test cases may include some specific needs,
74 such as extended measurements, or additional testing stimuli, or tests which cause disturbances on the environment.
75 These additional testing can provide a more complete evaluation about OPNFV platform deployment.
76
77 Qtip
78 ----
79
80 Qtip is a performance benchmark testing project by using a "Bottom-Up" approach
81 in characterizing and benchmarking OPNFV platform.
82 Qtip aims to benchmark the performance of components for a quantitative analysis and doesn't deal with validation of the platform.
83
84 In Brahmaputra, Qtip develops a flexible framework,
85 adds a number of test cases covering compute/storage/network area,
86 and compares these benchmarks on a bare metal machine vs a VM.
87 These contrastive result can be used to evaluate the performance of these components on the OPNFV platform basically.
88
89 VSPERF
90 ------
91
92 VSPERF will develop a generic and architecture agnostic vSwitch testing framework and associated tests,
93 that will serve as a basis for validating the suitability of different vSwitch implementations
94 in a Telco NFV deployment environment.
95 The output of this project will be utilized as part of OPNFV Platform and VNF level testing and validation.
96
97 Bottlenecks
98 -----------
99
100 Bottlenecks will provide a framework to find system bottlenecks
101 by testing and verifying OPNFV infrastructure in a staging environment before committing it to a production environment.
102 The Bottlenecks framework can not only find specific system limitations and bottlenecks,
103 but also the root cause of these bottlenecks.
104
105 In Brahmaputra, Bottlenecks includes two test cases:
106 rubbos and vstf. These test cases are executed on OPNFV community pods,
107 and test result report are visible on the community testing dashboard.
108
109
110