独立执行概述 是指脱离VU环境,
以命令行方式执行测试,并生成测试报告以及覆盖统计报告。
独立执行可集成到Jenkins之类的持续集成平台,按预设的周期自动执行测试。
执行测试前,会自动检查源代码的修改,对于更新过的代码,会自动刷新测试代码,实现自动检测代码修改是否引入了新的错误。
生成独立执行工程
VU“工程”菜单,选择“导出独立执行的工程”,弹出以下窗口时,导出完成:
上图的提示信息列出了独立工程的文件夹(TestRun文件夹)保存位置,TestRun文件可以拷到没有VU的环境下工作,但执行过程需要编译器、链接器、make,并且,这些应用程序的路径均应已在系统的PATH环境中设定,可以直接调用。TestRun文件夹具有如下图所示的内容:
|
|
|
上图是在linux环境下执行测试的工程,windows环境下有些文件名称不同:
coder.bin(linux) => Coder.exe(windows)
outrun.bin(linux) => OutRun.exe(windows)
maketest.sh(linux) => maketest.bat(windows)
路径修改
每次执行测试前,会自动检查代码修改并刷新测试代码。如果流水线环境下有些路径与当前工程不同,可打开RunTest文件夹下的dirs.txt修改,格式如下,每行一个目录,顺序无关,其中,product_dir为产品项目根目录(对应:VU工程属性>常规>产品项目根目录),include_dir为编译环境(如gcc)的头文件目录(对应:VU工程属性>头文件>库头文件目录),lib_dir为静态库的搜索目录(对应:VU工程属性>链接>库文件搜索目录
,run_dir为动态库目录),environment_variable为环境变量,用:分隔名称与值(如environment_variable:work_dir:c:/abc/myproject/src,表示名为work_dir的环境变量,值为c:/abc/myproject/src):
product_dir:/home/wt/projects/Demo-Linux/
include_dir:/usr/local/gcc/lib/gcc/x86_64-linux/7.5.0/include/
include_dir:/usr/local/include/
include_dir:/usr/local/gcc/include/
include_dir:/usr/local/gcc/lib/gcc/x86_64-linux/7.5.0/include-fixed/
include_dir:/usr/include/
lib_dir:/usr/wt/projects/Demo-Linux/lib
run_dir:-rpath,/usr/wt/so
environment_variable:work_dir:c:/abc/myproject/src
执行测试 执行以下文件,即可执行测试:
linux环境:outrun.bin。
windows环境:OutRun.exe
执行过程会自动调用coder.bin(或Coder.exe)刷新测试代码。
报告文件 测试报告:test.xml
覆盖统计文件:cov.xml
文件内容与格式与gtest生成的基本一致,持续集成工具中,用于显示gtest报告的插件可以兼容以上的告。
检查独立工程是否有错误
执行outrun.bin或OutRun.exe,如果能生成text.xml和cov.xml,表示执行成功。如果失败,可用文本编辑工具打开maketest.sh或maketest.bat,在最后加一行:pause,保存,然后
执行它,查看输出信息一般可以分析出失败原因,常见的原因是找不到make或编译器、链接器。 |