中文  |  English
所在位置:市场活动 > 客户案例与技术文章

带你走进vTESTstudio 7.0—学习多种编辑测试用例的方法

前言



之前我们有文章介绍过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中使用。

1.png

图 1 集成了多种用例编辑方法


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

1.vCDL文件的使用:

(1)vCDL文件可以直接在vTESTstudio工程中引用,无需从CANoe(4SW)配置导入系统环境;

(2)vCDL支持对分布式对象的访问。

2.png

图 2 vCDL文件的使用


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


3.png

图 3 Assign Diagram IDs


3.可以配合最新版的CANoe/CANoe4SW 16使用。

(1)离线模式:测试单元和测试模块可以进行离线分析;

4.png

图 4 Offline Mode


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

5.png

图 5 查看测试用例描述


4.对生成的测试报告做出了更新。

(1)增加用于检查开始/结束事件和检查统计信息的过滤器。

6.png

图 6 新过滤器


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

7.png

图 7 查询测试用例


vTESTstudio的优点:

8.png

图 8 vTESTstudio视图



自动化测试流程



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


9.png

图 9 自动化测试流程


下面就让我带领大家把每一种编辑方式都学习一下!



Method 1  Python File



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

10.png

图 10 Python编辑区域


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

vector.canoe:包含一般部分Python API。

vector.canoe.tfs: 包含测试功能集Python API。

vector.canoe.measuremen:获取测量的信息。

使用Python File创建Function。

11.png

图 11 使用Python File制作Function



12.png

图12 使用Test Table调用Python Function



13.png

图 13 Python编辑测试用例


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


14.png

图 14 Python测试用例导入Test Table




Method 2  Test Table



Test Table 是我们常见的也是大多数工程师正在使用的一种编辑方式,他的好处在于对于初学者很友好,上手比较简单。


15.png

图 15 Test Table 编辑界面


在Test Table中拥有许多指令,都是可以直接用。只需要按照要求在输入区进行输入,编译成功后,在我们的CANoe中就可以进行自动化测试了。

16.png

图 16 Test Commands 1    

  


              17.png      

图 17 Test Commands 2



Method 3  Test Sequence Diagram



Test Sequence Diagram 顾名思义它是一种序列图形式的编辑方式,他的好处在于对整个测试用例而言让人看上去很直观,但是操作上面就要稍微比Test Table要难了。

18.png

图 18 Test Sequence Diagram编辑区


在Test Sequence Diagram的编辑取中集成了许多的控件,这些控件就是我们搭建序列图的关键,可以让我们灵活使用。输入区的操作和Test Table类似,也需要去使用Test Commands中的函数去进行输入。

Test Sequence Diagram还拥有Path View,把我们序列图方式写出来的测试用例表格化,方便编写人员的检查工作。

19.png

图 19 Test Sequence Diagram中Path View



Method 4  State Diagram



State Diagram状态机的编辑方式,他对整个State Diagram中编写的路径,全部至少遍历一次和转移路径的总数最少,尽可能避免已经走过的路径。

20.png

图 20 State Diagram编辑区


State Diagram也是有Path View界面。

21.png

图 21 State Diagram中Path View


State Diagram的路径介绍:

1.从Initial元素开始,先进入一个分支,进而进入更深层的分支;

2.走遍周围所有的还没有走过的迁移,直到a、b、c任意一个条件满足:

a)到达Final元素;

b)到达了一个已经进入过的State(即形成了循环);

c)周围已经没有未经历过的迁移(即形成了循环);

3.在b和c条件下,路径选择将会以尽快到达Final元素为目标执行

22.png

图 22 测试用例路径


输入区的操作和Test Table类似,也需要去使用Test Commands中的函数去进行输入。



Method 5  CAPL File



CAPL File就是用CANoe独有的编程语言进行测试用例的编辑,使用这种方式就要求编辑人员对CAPL编程要精通,用纯CAPL的形式编辑出来导入到Test Table中。

23.png

图 23 CAPL编辑区域


24.png

图 24 CAPL编辑测试用例


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

25.png

图 25 CAPL测试用例导入Test Table



Method 6  C# File



C# File就是用C#进行测试用例的编辑,这就对C#精通的工程师比较友好,用C#的形式编辑出来导入到Test Table中。

26.png

图 26 C#编辑区域


27.png

图 27 C#编辑测试用例


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

28.png

图 28 C#测试用例导入Test Table




总结



vTESTstudio作为一款编辑测试用例的软件,具有高覆盖度及复用性、变体及追踪特性、编辑形式多样、易于后期的维护等优点。并且vTESTstudio与CANoe联合使用,使得自动化测试更加的方便快捷。北汇信息作为Vector的合作伙伴,已为多家OEM/Tier1定制部件级功能测试系统(包括车身域控制器,及传统分布式控制器功能测试开发),提供系统级及实车级测试验证服务,期待交流分享和合作的机会。