snlab-freedom / sdntest Goto Github PK
View Code? Open in Web Editor NEWThis is an easy-to-use test framework for general purpose in SDN scenario.
License: MIT License
This is an easy-to-use test framework for general purpose in SDN scenario.
License: MIT License
Currently, we specify "workflow" in "config.json".
For general purpose, we can allow users to set extra arguments in the config file. But consider controller ip as the first argument by default.
Current implementation strongly depends on docker containers. But refer to moby/moby#7857, network performance is so poor in the docker containers. Even in the host mode, docker network is still with higher delay.
On potential solution is to support to execute test jobs on the physical machines. Another one may be cluster mode (swarm) for a parallel test.
bootstrap_mininet()
in sdntest/suite.py need to read self.controller.attrs
to get the ip address of the controller container. But it seems that this variable is not updated so that mininet cannot get the latest information.
Since each TestSuite() instance is independent, framework should support to execute testcases parallelly.
One potential solution is to specify the parallel size in config file like this:
{
"...": "...",
"workflow": "main.py",
"repeat": 12,
"parallel": 4
}
It will create 4 threads to run testcases parallelly. Each thread can repeat the testcases by 3 times.
Docker python APIs can get and maintain the docker images and containers easily. In the current implementation, the python version script (bin/sdntest) has been ahead of the bash version (bin/sdntest.sh).
Maybe we can deprecate the bash version script. The only consideration is that some minimal working environment (like CoreOS) may not have python runtime.
Any thoughts?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.