ONE/Functional Tests Guide

From fd.io
< ONE
Revision as of 16:13, 22 September 2016 by Florin.coras (Talk | contribs)

Jump to: navigation, search

Overview

This shows how to use VPP lite to run the LISP functional tests on an Ubuntu host using namespaces and af_packet interfaces. The LispFlowMapping Map-Server/Resolver in OpenDaylight Beryllium is used as overlay control plane.

Build VPP lite for the first time

Download and install vagrant from here.

Install VirtualBox, or the vagrant plugin for VMware.

git clone https://gerrit.fd.io/r/vpp
cd vpp/build-root/vagrant
vagrant up

Wait for the VM to be provisioned and once it completes, you can access the VM with:

vagrant ssh

To build VPP lite, in the VM do:

cd /vpp
export PLATFORM=vpp_lite
make build
make build-vat

For more details on how to build VPP see the pulling, building, running, hacking and pushing VPP code section.

Setup Vagrant VM

Install bridge-utils and ethtool if needed:

sudo apt-get install bridge-utils ethtool 

Optional, install wireshark.

ODL Map-Server/Resolver

Steps to install and configure ODL, assuming the SR1 tar archive is downloaded:

Install and configure ODL

wget https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.5.0-Boron/distribution-karaf-0.5.0-Boron.tar.gz
tar xzf distribution-karaf-0.5.0-Boron.tar.gz

Edit custom properties and change elp policy to "replace"

./distribution-karaf-0.5.0-Boron/etc/custom.properties

Run ODL

./distribution-karaf-0.5.0-Boron/bin/karaf

To install LispFlowMapping Map-Server/Resolver, in the karaf console type:

feature:install odl-lispflowmapping-msmr

Run the ONE functional tests

Clone the one repo in the vagrant VM:

cd ~
git clone https://gerrit.fd.io/r/one

If running the whole test suite, execute the run.sh script and specify configuration method like:

sudo ./run.sh --config-method cli|vat

Alternatively, if running a single test, execute the desired script and choose one of 'cli' or 'vat' as configuration method:

sudo CFG_METHOD=cli|vat ./tests/<test_case>.sh

Supported methods are vat and cli and default is vat.

For step-by-step test execution you can directly pass WAIT parameter to the test script as follows:

sudo WAIT=1 ./tests/<test_case>.sh

Run the ONE functional tests with VPP 16.09

Clone the one repo in the vagrant VM:

cd ~
git clone https://gerrit.fd.io/r/one

Go to tests folder

cd one/tests/data_plane/vpp_lite_topo/

To run all tests do:

sudo ./run.sh

To run one test do:

sudo ./tests/test_*.sh

To run a test step-by-step, edit the test file in ./tests/test_*.sh and add to the test function call, typically the last line in the script, "wait" as a parameter.