VPP安装运行及其运行测试框架
来源:互联网 发布:php人脸识别系统实现 编辑:程序博客网 时间:2024/05/21 07:50
参考:http://blog.csdn.net/shaoyunzhe/article/details/53096932
http://blog.csdn.net/a464057216/article/details/51889564
http://blog.csdn.net/wangcg123/article/details/71727965
下载地址:https://github.com/FDio/vpp/tree/master
git clone 下来
进入 vpp目录
依次执行命令
make install-depmake bootstrapmake build
设置大页
mkdir /mnt/huge mount -t hugetlbfs nodev /mnt/hugeecho 1024 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepagescat /proc/meminfo| grep Huge
之后就可以直接 make run 执行了。
使用 quit命令退出
但是之后要指定配置文件执行就要编译 dpdk了。
!!!在dpdk的目录下的 Makefile文件中改下配置 将 RTE_EAL_IGB_UIO 设置为y
才会有 igb_uio.ko 文件
之后加载驱动
modprobe uioinsmod igb_uio.ko
dmesg
查看 成功没有
绑定网卡,配置文件等,具体可以参考最上面的链接,本人也是指定配置文件会出错,暂时还没搞懂
但我的目的是执行测试框架:
要执行测试框架只要 make run 可以起来就可以了
在VPP目录下执行
make test
构建执行测试用例
就是这样的
执行 命令
make
可以查看更多执行命令和帮助
root@ubuntu:~/vpp/vpp# makeMake Targets: bootstrap - prepare tree for build install-dep - install software dependencies wipe - wipe all products of debug build wipe-release - wipe all products of release build build - build debug binaries build-release - build release binaries build-coverity - build coverity artifacts rebuild - wipe and build debug binares rebuild-release - wipe and build release binares run - run debug binary run-release - run release binary debug - run debug binary with debugger debug-release - run release binary with debugger test - build and run (basic) functional tests test-debug - build and run (basic) functional tests (debug build) test-all - build and run (all) functional tests test-all-debug - build and run (all) functional tests (debug build) test-shell - enter shell with test environment test-shell-debug - enter shell with test environment (debug build) test-wipe - wipe files generated by unit tests retest - run functional tests retest-debug - run functional tests (debug build) test-help - show help on test framework run-vat - run vpp-api-test tool pkg-deb - build DEB packages pkg-rpm - build RPM packages dpdk-install-dev - install DPDK development packages ctags - (re)generate ctags database gtags - (re)generate gtags database cscope - (re)generate cscope database checkstyle - check coding style fixstyle - fix coding style doxygen - (re)generate documentation bootstrap-doxygen - setup Doxygen dependencies wipe-doxygen - wipe all generated documentation test-doc - generate documentation for test framework test-wipe-doc - wipe documentation for test framework test-cov - generate code coverage report for test framework test-wipe-cov - wipe code coverage report for test framework test-checkstyle - check PEP8 compliance for test frameworkMake Arguments: V=[0|1] - set build verbosity level STARTUP_CONF=<path> - startup configuration file (e.g. /etc/vpp/startup.conf) STARTUP_DIR=<path> - startup drectory (e.g. /etc/vpp) It also sets STARTUP_CONF if startup.conf file is present GDB=<path> - gdb binary to use for debugging PLATFORM=<name> - target platform. default is vpp TEST=<filter> - apply filter to test set, see test-help SAMPLE_PLUGIN=yes - in addition build/run/debug sample pluginCurrent Argument Values: V = STARTUP_CONF = STARTUP_DIR = /root/vpp/vpp GDB = gdb PLATFORM = vpp DPDK_VERSION = SAMPLE_PLUGIN = noroot@ubuntu:~/vpp/vpp#
最重要的如何执行单个测试用例:
make test-shellpython test_*.py(要执行的单个测试用例)
(virtualenv) root@ubuntu:~/vpp/vpp/test#(virtualenv) root@ubuntu:~/vpp/vpp/test# python test_ip4.pyRunning tests using custom test runnerActive filters: file=None, class=None, function=None10 out of 10 tests match specified filtersNot running extended tests (some tests will be skipped)==============================================================================IPv4 disabled==============================================================================Starting IP Disabled ...------------------------------------------------------------------------------------------------------------------------------------------------------------IP Disabled OK------------------------------------------------------------------------------==============================================================================IPv4 Load-Balancing==============================================================================Starting IP Load-Balancing ...------------------------------------------------------------------------------------------------------------------------------------------------------------IP Load-Balancing OK------------------------------------------------------------------------------==============================================================================IPv4 routes via NULL==============================================================================Starting IP NULL route ...------------------------------------------------------------------------------------------------------------------------------------------------------------IP NULL route OK------------------------------------------------------------------------------==============================================================================IPv4 Subnets==============================================================================Starting IP Sub Nets ...------------------------------------------------------------------------------------------------------------------------------------------------------------IP Sub Nets OK------------------------------------------------------------------------------==============================================================================IPv4 VLAN-0==============================================================================Starting IP VLAN-0 ...------------------------------------------------------------------------------------------------------------------------------------------------------------IP VLAN-0 OK------------------------------------------------------------------------------==============================================================================IPv4 Test Case==============================================================================Starting IPv4 FIB test ...------------------------------------------------------------------------------------------------------------------------------------------------------------IPv4 FIB test OK------------------------------------------------------------------------------==============================================================================FIB - add/update/delete - ip4 routes==============================================================================Starting Add 1k routes ...------------------------------------------------------------------------------------------------------------------------------------------------------------Add 1k routes OK------------------------------------------------------------------------------Starting Delete 100 routes ...------------------------------------------------------------------------------------------------------------------------------------------------------------Delete 100 routes OK------------------------------------------------------------------------------Starting Add 1k routes ...------------------------------------------------------------------------------------------------------------------------------------------------------------Add 1k routes OK------------------------------------------------------------------------------Starting Delete 1.5k routes ...------------------------------------------------------------------------------------------------------------------------------------------------------------Delete 1.5k routes OK------------------------------------------------------------------------------
所有分析要看 Makefile文件
其实执行测试的是这条
@bash -c "source $(PYTHON_VENV_PATH)/bin/activate && python run_tests.py -d $(TEST_DIR) $(UNITTEST_EXTRA_OPTS)"
构建了python的虚拟环境,然后执行 run_test 指定目录也就是 test目录。
期间遇到了很多很多的问题,比如里面的变量很多都是系统变量。开始自己设置各种问题。使用 make retest和 make test-shell可以不用设置。 对Makefile文件也不熟悉,要学习的还很多啊。
之后会具体分析测试框架
- VPP安装运行及其运行测试框架
- vpp安装运行
- vpp+dpdk 安装与运行
- vpp+dpdk 安装与运行
- VPP测试框架简单分析
- 数字竞猜机及其运行测试
- hadoop安装后测试运行
- tensorflow安装测试运行常见问题
- Yii框架模拟运行脚本步骤测试
- 运行框架
- 在Ubuntu下运行tinyhttpd及其测试例子
- Hadoop 伪分布式安装、运行测试例子
- gem5的安装编译及测试运行
- kaldi安装及运行测试例子
- OpenStack tempest安装与运行测试
- ubuntu16.04安装Kaldi+运行测试TIMIT
- Elastos测试框架搭建--测试用例运行流程
- 深度学习框架 Digits 3.0 安装运行
- 记一次虚拟机复制迁移到异机启动报could not open disk image /123.img: Invalid argument 错误
- mysql 高可用之MySQL-MMM
- 数据中心联盟第五批大数据产品评测结果出炉,腾讯云大数据斩获多个奖项
- JAVA SE — Day 10
- Java后台Web开发有用的文章链接
- VPP安装运行及其运行测试框架
- rollup学习整理-2-插件详解
- 幸运的袋子问题(DFS+回溯+剪枝)
- File相关操作,java.nio.file.*
- 微信公众号的配置方法
- LWC 57:723. Candy Crush
- 采用Signature Scheme v2签名方式的APK预置失败
- oracle exp导出错误(EXP-00056)
- java开发AmazonS3对象存储的工具类