-
Notifications
You must be signed in to change notification settings - Fork 707
Functional_Tests_Guide
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.
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.
Install bridge-utils and ethtool if needed:
sudo apt-get install bridge-utils ethtool
Optional, install wireshark.
Steps to install and configure ODL, assuming the Boron 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
Clone the one repo in the vagrant VM:
cd ~
git clone
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
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 ./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.
For example to run the demo showed at the ODL Summit 2016 use:
sudo WAIT=1 ./tests/test_smr_rtr_disjoint.sh