1. OPNFV Colorado1.0 release note for Functest

1.1. Abstract

This document describes the release note of Functest project.

1.2. License

OPNFV Colorado release note for Functest Docs (c) by Morgan Richomme (Orange)

OPNFV Colorado release note for Functest Docs are licensed under a Creative Commons Attribution 4.0 International License. You should have received a copy of the license along with this. If not, see <http://creativecommons.org/licenses/by/4.0/>.

1.3. Version history

Date Ver. Author Comment
2016-08-17 1.0.0 Morgan Richomme (Orange) Functest for C release

1.4. OPNFV Colorado Release

Functest deals with functional testing of the OPNFV solution. It includes test cases developed within the project and test cases developed in other OPNFV projects and other upstream communities.

The internal test cases are:

  • healthcheck
  • vPing ssh
  • vPing userdata
  • Tempest Smoke Serial
  • Rally Sanity
  • ODL
  • Tempest full parallel
  • Rally full
  • vIMS

The OPNFV projects integrated into Functest framework for automation are:

  • bgpvpn
  • Copper
  • Doctor
  • Domino
  • Moon
  • Multisite
  • ONOSFW
  • ONOS-sfc
  • ODL-sfc
  • Parser
  • Promise
  • Security scan

The validation of a scenario requires a subset of these tests depending on the installer and the scenario.

The 3 last internal test cases (tempest full parallel, Rally full and vIMS) are not considered for scenario validation.

1.5. Release Data

Project functest
Repo/tag colorado.1.0
Release designation Colorado base release
Release date September 22 2016
Purpose of the delivery Colorado base release

1.6. Deliverables

1.6.1. Software

  • The Functest Docker image: * TODO link *
  • The testapi Docker image: * TODO link *

1.6.2. Documents

  • Installation/configuration guide: * TODO link *
  • User Guide: * TODO link *
  • Developer Guide: * TODO link *

1.7. Version change

1.7.1. Feature evolution

  • refactoring of ODL functional tests (with upstream modifications)
  • refactoring of testapi (update, swagger documentation, dockerization)
  • jenkins logs improvement
  • update integration of Doctor, Promise and SDNVPN projects
  • split Tempest and rally into 2 different tests: smoke and full
  • vIMS test suite integration
  • adoption of Kibana for dashboarding

1.7.2. New features

  • Functest CLI to prepare and run the tests
  • creation of the healthcheck test case
  • support new scenarios (ocl, odl_l2-sfc, onos-sfc, lxd, moon, multisite)
  • integration of new OPNFV feature projects (copper, domino, multisite,

moon, parser, onos-sfc, odl-sfc, security scan)

  • introduction of test tiers in functest framework
  • automatic reporting
  • introduction of a jenkins summary table
  • support of ARM architecture

1.8. Scenario Matrix

For Colorado 1.0, Functest was tested on the following scenarios (if not precised, the scenario is a na scenario):

Scenario Apex Compass Fuel Joid
nosdn X X X X
odl_l2 X X X X
odl_l3 X X X  
onos X X X X
ocl   X    
ovs-noha (dpdk)     X  
kvm-noha     X  
odl_l2-bgpvpn X   X  
odl_l2-sfc     X  
onos-sfc X X X X
odl_l2-moon   X    
multisite        
lxd       X

Functest defines a scenario scoring based on the sum of the unitary test cases run in CI. The scoring method is described in https://wiki.opnfv.org/pages/viewpage.action?pageId=6828617

In Colorado, the functional tests have been sliced in different categories:

Category Description
healthcheck Basic OpenStack commands
smoke vPings, Tempest and rally smoke tests
sdn_suites Specific SDN feature tests
features OPNFV feature project functional test suites
openstack Advanced, long duration OpenStack tests (Tempest and Rally full suite). Each test may last several hours
vnf Complex scenarios dealing with orchestration, VNF deployment and tests (e.g. vIMS)

For the scenario validation, we consider only the categories healthcheck, smoke, sdn_suites and features. These tests are run systematically in the CI daily loops.

Success criteria have been defined for these test cases, they can be PASS/FAIl or a success rate may be declared (100%, > 90%) All the criteria, as well as the test dependencies are declared in the ci/testcases.yaml file.

  • TODO scoring table *

The reporting pages can be found at:

1.9. Colorado known restrictions/issues

Installer Scenario Issue
any onos-* vPing userdata and Tempest cases related to metadata service excluded from onos scenarios https://gerrit.opnfv.org/gerrit/#/c/18729/
any odl_l3-* Tempest cases related to using floating IP addresses fail because of a known ODL bug. vPing_ssh test case is excluded for the same reason. https://jira.opnfv.org/browse/APEX-112 https://jira.opnfv.org/browse/FUNCTEST-445
apex/fuel *-bgpvpn vPing_ssh (floating ips not supported) and vIMS excluded. Some Tempest cases related to floating ips also excluded. Some performance issues have been detected in this scenario (i.e. BGPVPN extension enabled) when running commands against the OpenStack APIs, thus Rally sanity test case has been disabled. Performance issues seem to be connected to the ODL version. It is planned to reintroduce Rally sanity in Colorado 2.0 with the adoption of ODL Boron release.
compass moon First ODL test FAILS because ODL/Openstack federation done in moon is partial. Only MD-SAL is federated (not AD-SAL)
fuel any TestServerBasicOps test case skipped https://gerrit.opnfv.org/gerrit/#/c/19635/
fuel kvm vPing_ssh and vIMS excluded (metadata related scenarios)
fuel multisite random errors running multisite. A known bug in keystone mitaka, due to which memcache raises exception and keystone becomes unresponsive bugs.launchpad.net/keystone/+bug/1600394 workaround consists in restarting memcache on server
joid any Tempest cases related to object storage excluded https://gerrit.opnfv.org/gerrit/#/c/17871/
joid domino Domino tests are skipped in CI. However the test case can be run by manually setting IS_IPandKEY_CONFIGURED=true after manually setting properly the IP addresses of the 3 Controller nodes in the configuration file /repos/domino/tests/run_multinode.sh

1.10. Test and installer/scenario dependencies

It is not always possible to run all the test cases on all the scenarios. The following table details the dependencies of the test cases per scenario. The scenario dependencies (installer or scenario) are detailed in https://git.opnfv.org/cgit/functest/tree/ci/testcases.yaml

1.11. Test results

Test results are available in:

1.12. Open JIRA tickets

JIRA Description