Fix Functest Release Notes
[functest.git] / docs / release / release-notes / functest-release.rst
1 .. SPDX-License-Identifier: CC-BY-4.0
2
3 =============================================
4 OPNFV Euphrates 5.1 release note for Functest
5 =============================================
6
7 Abstract
8 ========
9
10 This document contains the release notes of the Functest project.
11
12 OPNFV Euphrates Release
13 =======================
14
15 Functest deals with functional testing of the OPNFV solution.
16 It includes test cases developed within the project, test cases developed in
17 other OPNFV projects and it also integrates test cases from other upstream
18 communities.
19
20 The internal test cases are:
21
22  * connection_check
23  * api_check
24  * snaps_health_check
25  * vping_ssh
26  * vping_userdata
27  * tempest_smoke_serial
28  * refstack_defcore
29  * snaps_smoke
30  * rally_sanity
31  * odl
32  * tempest_full_parallel
33  * rally_full
34  * cloudify_ims
35  * vyos_vrouter
36
37 The OPNFV projects integrated into Functest framework for automation are:
38
39  * barometer
40  * bgpvpn
41  * doctor
42  * domino
43  * fds
44  * odl-sfc
45  * odl-netvirt
46  * parser
47  * promise
48  * orchestra_openims
49  * orchestra_clearwaterims
50
51 Release Data
52 ============
53
54 +--------------------------------------+--------------------------------------+
55 | **Project**                          | functest                             |
56 |                                      |                                      |
57 +--------------------------------------+--------------------------------------+
58 | **Repo/tag**                         | opnfv-5.1.0                          |
59 |                                      |                                      |
60 +--------------------------------------+--------------------------------------+
61 | **Release designation**              | Euphrates 5.1 release                |
62 |                                      |                                      |
63 +--------------------------------------+--------------------------------------+
64 | **Release date**                     | December 15th 2017                   |
65 |                                      |                                      |
66 +--------------------------------------+--------------------------------------+
67 | **Purpose of the delivery**          | Euphrates second release             |
68 |                                      |                                      |
69 +--------------------------------------+--------------------------------------+
70
71 Deliverables
72 ============
73
74 Software
75 --------
76
77  Functest Docker images:
78
79  * https://hub.docker.com/r/opnfv/functest-healthcheck
80  * https://hub.docker.com/r/opnfv/functest-smoke
81  * https://hub.docker.com/r/opnfv/functest-features
82  * https://hub.docker.com/r/opnfv/functest-components
83  * https://hub.docker.com/r/opnfv/functest-vnf
84  * https://hub.docker.com/r/opnfv/functest-parser
85  * https://hub.docker.com/r/opnfv/functest-restapi
86
87  TestAPI Docker image:
88
89  * https://hub.docker.com/r/opnfv/testapi
90
91 Docker tag for Euphrates 5.1 release: opnfv-5.1.0
92 Docker tag for Euphrates with latest bugfixes: euphrates
93
94 Documents
95 ---------
96
97  - Installation/configuration guide: http://docs.opnfv.org/en/stable-euphrates/submodules/functest/docs/testing/user/configguide/index.html
98
99  - User Guide: http://docs.opnfv.org/en/stable-euphrates/submodules/functest/docs/testing/user/userguide/index.html
100
101  - Developer Guide: http://docs.opnfv.org/en/stable-euphrates/submodules/functest/docs/testing/developer/devguide/index.html
102
103  - API Docs: http://artifacts.opnfv.org/functest/docs/index.html
104
105  - Functest Framework presentation: http://testresults.opnfv.org/functest/framework/index.html
106
107 Version change
108 ==============
109
110 Functest now delivers light-weigth Docker images based on Alpine 3.7. The test
111 cases are grouped into several categories or tiers and must be run from the
112 corresponding container. For example, to run the test case healthcheck, the
113 image opnfv/functest-healthcheck shall be used. The tiers and the tests within
114 them are explained in detail in the User Guide.
115
116 The former Ubuntu image is not longer maintained.
117
118 The Parser test case has its own dedicated Docker image since it requires
119 libraries released for OpenStack Pike and Euphrates is based on Ocata.
120
121 The Docker images do not contain OS images (Cirros, Ubuntu, Centos, ..)
122 anymore. A script has been created under the ci directory (download_images.sh)
123 which contains all the needed images for all the tests. This file can be
124 modified by the user since not all the images might be used. It must be
125 executed before starting Functest and attach the needed images as a Docker
126 volume. See Configuration Guide for more information.
127
128 The requirements have been split into 3 files:
129  * requirements.txt : lists all abstract dependencies of the OPNFV packages
130  * test-requirements.txt : lists all abstract dependencies required by Functest
131    Unit Tests
132  * upper-constraints.txt : lists all concrete upstream dependencies required by
133    Functest Docker container
134
135 OPNFV (test-)requirements.txt have been updated according to stable/ocata
136 global-requirements.txt. Functest uses (and completes) stable/ocata
137 upper-constraints.txt in Dockerfiles and tox configuration. The project relies
138 on pbr, which injects requirements into the install_requires, tests_require
139 and/or dependency_links arguments to setup. It also supports conditional
140 dependencies which can be added to the requirements
141 (e.g. dnspython>=1.14.0;python_version=='2.7')
142
143 The way to manage logging has been centralized to a configuration file
144 (logging.ini) which might be modified by the user. By default, the output of
145 executing the test cases is redirected to log files and is not displayed on the
146 console, only result messages and summary tables are displayed.
147
148 The framework has been refactored and all the test cases inherit from a core
149 class TestCase. For Feature projects who develop test cases, 2 sub-classes
150 have been created:
151
152  - Feature: it implements all the needed functions and the developer must only
153    overwrite the method "execute" (e.g. Barometer)
154  - BashFeature: it is used if the third party test case is a shell script. This
155    way, the execution command must be specified in testcases.yaml as the
156    argument (e.g. Domino, Doctor)
157
158 An internal REST API has been introduced in Euphrates. The goal is to trigger
159 Functest operations through an API in addition of the CLI. This could be
160 considered as a first step towards a pseudo micro services approach where the
161 different test projects could expose and consume APIs to the other test
162 projects.
163
164 Euphrates 5.1 improvements
165 ==========================
166
167 * Alpine images are now supported for ARM (arm64).
168 * Added Vyos_router test case.
169 * Updated of Rally 0.9.1 and fixed some bugs in cinder scenarios.
170 * Patch to allow building containers from a gerrit change.
171 * Selection of a subset of SNAPS test cases.
172 * Reorder VNF test cases and adjust timeouts in VNFs.
173
174 Euphrates 5.1 known restrictions/issues
175 =======================================
176
177 +--------------+-----------+----------------------------------------------+
178 | Installer    | Scenario  |  Issue                                       |
179 +==============+===========+==============================================+
180 | fuel@aarch64 | any       |  VNF tier not supported yet.                 |
181 +--------------+-----------+----------------------------------------------+
182 |              |           |  The test cases belonging to the VNF tier    |
183 | any          | any       |  have been only tested on os-nosdn-nofeature |
184 |              |           |  scenarios and baremetal deployments.        |
185 +--------------+-----------+----------------------------------------------+
186 | Joid         | k8        |  Functest does not offer test suites for     |
187 | Compass      |           |  Kubernetes scenarios yet.                   |
188 +--------------+-----------+----------------------------------------------+
189
190 Test and installer/scenario dependencies
191 ========================================
192
193 It is not always possible to run all the test cases on all the scenarios.
194 The scenario dependencies (installer or scenario) are detailed
195 in the different testcases.yaml for each tier:
196
197  * https://git.opnfv.org/functest/tree/docker/healthcheck/testcases.yaml?h=stable/euphrates
198  * https://git.opnfv.org/functest/tree/docker/smoke/testcases.yaml?h=stable/euphrates
199  * https://git.opnfv.org/functest/tree/docker/features/testcases.yaml?h=stable/euphrates
200  * https://git.opnfv.org/functest/tree/docker/components/testcases.yaml?h=stable/euphrates
201  * https://git.opnfv.org/functest/tree/docker/vnf/testcases.yaml?h=stable/euphrates
202  * https://git.opnfv.org/functest/tree/docker/parser/testcases.yaml?h=stable/euphrates
203
204 Test results
205 ============
206
207 The Functest scenario status on December 15, 2017 can be seen on
208 http://testresults.opnfv.org/functest/euphrates/
209
210 Test logs are available in:
211
212  - test results logs from CI: http://artifacts.opnfv.org (within different
213    directories 'logs_functest_X')
214
215  - jenkins logs on CI: https://build.opnfv.org/ci/view/functest/
216
217  - jenkins logs on ARM CI: https://build.opnfv.org/ci/view/armband/
218
219 Open JIRA tickets
220 =================
221
222 +------------------+-----------------------------------------------+
223 |   JIRA           |         Description                           |
224 +==================+===============================================+
225 |                  |                                               |
226 |                  |                                               |
227 +------------------+-----------------------------------------------+
228
229 All the tickets that are not blocking have been fixed or postponed
230 the next release.
231
232 Useful links
233 ============
234
235  - wiki project page: https://wiki.opnfv.org/opnfv_functional_testing
236
237  - wiki Functest Euphrates page: https://wiki.opnfv.org/display/functest/5.+Euphrates
238
239  - Functest repo: https://git.opnfv.org/cgit/functest
240
241  - Functest CI dashboard: https://build.opnfv.org/ci/view/functest/
242
243  - JIRA dashboard: https://jira.opnfv.org/secure/Dashboard.jspa?selectPageId=10611
244
245  - Functest IRC chan: #opnfv-functest
246
247  - Reporting page: http://testresults.opnfv.org/reporting/euphrates.html