The CORD Automated Tester Suite is an extensible end-to-end system test suite targeting CORD PODs. Here we set it up for single-node CORD .
https://github.com/open-cloud/openstack-cluster-setup
wget https://raw.githubusercontent.com/open-cloud/openstack-cluster-setup/master/scripts/single-node-pod.sh
bash single-node-pod.sh [-t] [-e]
-t
option will start XOS, bring up a vSG, install a test client, and run a simple E2E test.-e
option will add the ExampleService to XOS (and test it if -t
is also specified).$ git clone https://github.com/opencord/cord-tester.git $ cd cord-tester/src/test/setup/ $ sudo ./cord-test.py -h usage: cord-test.py [-h] {run,list,build,cleanup} ... Cord Tester positional arguments: {run,list,build,cleanup} run Run cord tester list List test cases build Build cord test container images cleanup Cleanup test containers optional arguments: -h, --help show this help message and exit $ sudo ./cord-test.py run -h usage: cord-test.py run [-h] [-t TEST_TYPE] [-o ONOS] [-r] [-q] [-a APP] [-p] [-e TEST_CONTROLLER] [-k] [-s] [-u {test,quagga,radius,all}] optional arguments: -h, --help show this help message and exit -t TEST_TYPE, --test-type TEST_TYPE Specify test type or test case to run -o ONOS, --onos ONOS ONOS container image -q, --quagga Provision quagga container for vrouter -a APP, --app APP Cord ONOS app filename -p, --olt Use OLT config -e TEST_CONTROLLER, --test-controller TEST_CONTROLLER External test controller ip for Onos and/or radius server. Eg: 10.0.0.2/10.0.0.3 to specify ONOS and Radius ip to connect -r SERVER, --server SERVER ip:port address to connect for cord test server for container requests -k, --keep Keep test container after tests -s, --start-switch Start OVS when running under OLT config -u {test,quagga,radius,all}, --update {test,quagga,radius,all} Update cord tester container images. Eg: --update=quagga to rebuild quagga image. --update=radius to rebuild radius server image. --update=test to rebuild cord test image.(Default) --update=all to rebuild all cord tester images. -n NUM_CONTAINERS, --num-containers NUM_CONTAINERS Specify number of test containers to spawn for tests $ sudo ./cord-test.py list -h usage: cord-test.py list [-h] [-t TEST] optional arguments: -h, --help show this help message and exit -t TEST, --test TEST Specify test type to list test cases. Eg: -t tls to list tls test cases. -t tls-dhcp-vrouter to list tls,dhcp and vrouter test cases. -t all to list all test cases. sudo ./cord-test.py build -h usage: cord-test.py build [-h] {quagga,radius,test,all} positional arguments: {quagga,radius,test,all} optional arguments: -h, --help show this help message and exit ## Setup prerequisites $ sudo ./prerequisites.sh --cord ## Build container images $ sudo ./cord-test.py build test ## Initiate a setup for test $ sudo ./cord-test.py setup --olt -e 192.168.122.110/172.17.0.2 192.168.122.110 : ONOS running on compute node 192.168.122.110 172.17.0.2 : ONOS accessible radius server. ## Once above steps are done $ sudo docker attach cord-tester1 $ cd /root/test/src/test/cordSubscriber $ nosetests -v cordSubscriberTest.py
This would run a CORD Subscriber channel surfing tests and do a get to google.com. Channel jump test does channel surfing by joining/leaving random channels and validation .
olt_config.json specifies the subscriber and test container configuration.
* For cleanup
$ sudo ./cord-test.py cleanup --olt
$ sudo pkill -f cord-test