ONE/Functional Tests Guide

Jump to: navigation, search


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
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, in the VM do:

cd /vpp
export PLATFORM=vpp
make build

Note: For 17.01 and older versions you need to build VPP lite:

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 Boron tar archive is downloaded:

Install and configure ODL

tar xzf distribution-karaf-0.5.0-Boron.tar.gz

Edit custom properties and change elp policy to "replace"




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

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

sudo ./ --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

Go to tests folder

cd one/tests/data_plane/vpp_lite_topo/

To run all tests do:

sudo ./

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.

For example to run the demo showed at the ODL Summit 2016 use:

sudo WAIT=1 ./tests/