之前我们有文章介绍过CANoe中自带的自动化测试功能-Test Module使用的方法,相信各位工程师们已经熟练应用了。但是对Test Units,可能有些工程师只是在CANoe的界面中见过,没有实际使用过。Test Units是需要与Vector旗下的另一款软件vTESTstudio联合使用,进行自动化测试。

vTESTstudio介绍

vTESTstudio是Vector公司专为ECU自动化测试而研发的测试用例编写软件,可用于从模型测试到系统确认的所有开发阶段。它集成了多种用例编辑方法,能有效提高测试人员对测试设计的效率、具有可复用性等优点。

vTESTstudio软件在今年4月份,更新到vTESTstudio 7.0的版本,相比于之前版本,最大的新特性便是——Python File。它支持Python作为测试编程语言,Python File中包含集成编辑器,提供代码的完整功能、语法的检查等功能,具有调用 CAPL的功能,并且Python 接口函数(测试序列、测试用例、测试函数和函数)可以在Test Table、Sequence Diagram和State Diagram中使用。

101510ahkdkee5jwe2z9e5.png
图 1 集成了多种用例编辑方法

除了新增加的Python File的功能,还有许多的新特性,在这里也为各位工程师一一列举:

1.vCDL文件的使用:
(1)vCDL文件可以直接在vTESTstudio工程中引用,无需从CANoe(4SW)配置导入系统环境;
(2)vCDL支持对分布式对象的访问。

101511vkkckr2igrtpqtaz.png
图 2 vCDL文件的使用

2. 可以为Sequence Diagram和State Diagram激活ID,便于更好的管理测试用例。

101511pteah74aee0ardh7.png
图 3 Assign Diagram IDs

3.可以配合最新版的CANoe/CANoe4SW 16使用
(1)离线模式:测试单元和测试模块可以进行离线分析;

101512e1duuh1577u9oa5p.png
图 4 Offline Mode

(2)vTESTstudio中对测试用例描述可以在CANoe的测试界面中查看到。

101512askxz3pkf5sdiq5q.png
图 5 查看测试用例描述

4.对生成的测试报告做出了更新。
(1)增加用于检查开始/结束事件和检查统计信息的过滤器。

101512yifqri3flmvr7qab.png
图 6 新过滤器

(2)增加了测试用例的查询方式。

101512lagddfq1iq7qmczr.png
图 7 查询测试用例

vTESTstudio的优点:

>简化设计用例:集成了多种用例编辑方法(列表式、图表式、编程语言,适合不同水平和偏好…)
>复用性:将测试逻辑、用例、参数分离,所有的文件都可以在版本变化后复用
>图形化的编辑方法使得测试的逻辑以及SUT的期望行为更加清晰
>参数化:集成测试参数、结构体以及仿真曲线
>高测试覆盖度(分类树)
>支持全产品周期测试
>全局需求追踪(从需求到报告)
>自动生成可配置化的测试报告

101512ulsd0u1rmg9lts97.png
图 8 vTESTstudio视图

自动化测试流程

vTESTstudio作为编辑测试用例的软件,在vTESTstudio中编辑好我们需要的Test Case后需要编译生成.vtuexe文件,然后加载到CANoe中的Test Units去执行,进行完自动化测试后,还可以在CANoe中生成测试报告。

101513ks1f6yccook9xywp.png
图 9 自动化测试流程

测试用例编辑方法

Method 1 Python File

Python File就是用Python语言进行测试用例的编辑,这也是vTESTstudio 7.0独有的一种编写方式,本次vTESTstudio的更新,主要也是增加了Python File这个功能。增加了一种编辑方式,让工程师们多一种选择。

101513ikgm3hdl0bg7gkv7.png
图 10 Python编辑区域

大家肯定注意到了使用Pyton File也编辑区域也是需要引用组件接口的:

vector.canoe:包含一般部分Python API。
vector.canoe.tfs:包含测试功能集Python API。
vector.canoe.measuremen:获取测量的信息。
使用Python File创建Function。

101514aaz661v3kixdkk4v.png
图 11 使用Python File制作Function

101514cfeswhawpfvffw24.png
图12 使用Test Table调用Python Function

101515sgkg786qprjgg83j.png
图 13 Python编辑测试用例

把测试用例导入到Test Table才可以执行哦!

101515ezlpnku718pc7bge.png
图 14 Python测试用例导入Test Table

更多vTESTstudio测试用例编辑方法敬请期待下期精彩内容!