CANoe教程 | 自动化测试功能-Test Module/Test Unit

概述

CANoe的测试模块包括Test Module和Test Unit两大组件,并且集成了TFS测试功能集(Test Feature Set)和TSL测试服务库(Test Service Library)来帮助用户实现高效的自动化测试。

  • TFS是CANoe扩展出来的一系列测试功能函数,包括测试报告的输出函数等。
  • TSL包含一系列的检测函数(Check Function)、激励函数(Stimulus Functions)、状态报告函数(Status Report Functions)以及检测控制函数(Check Control Functions)。TSL在TFS基本函数的基础上,提供这些特殊函数,帮助用户更加方便高效的组件测试用例。

架构

根据ECU的测试规范,用户可以基于CANoe的Test Module或Test Unit、网络控制硬件接口(如VN5640、VN1640等)、外围硬件在环设备(如VT System)等搭建自动化测试系统。

系统架构.png

  • SUT : System Under Test 被测系统,一般是待测ECU
  • remaining bus simulation : 剩余总线仿真。实际应用中SUT只是总线中的一个ECU节点,总线环境是复杂的,CANoe可以仿真除了SUT之外的总线环境,即剩余总线仿真。
  • VT System : VT system是由一系列硬件板卡组成的ECU功能测试模块,通过连接ECU的I/O线路对ECU进行测试。
    • ECU不仅仅拥有总线接口,同时也拥有许多I/O接口,用于连接传感器和执行器。因此完整的ECU测试系统应该同时包含总线接口和I/O接口。Vector的VT System可以完整满足用户对ECU的功能测试需求。
    • VT System包含处理器模块、CAN/LIN模块、负载和测量模块、激励模块、VT供电模块、ECU电源管理模块、数字IO模块、模拟量IO模块、继电器模块和扩展模块,通过以太网和CANoe连接。

Test Module/Test Unit 简介

CANoe通过Test Module/Test Unit中的Test Group和Test Case实现有序的测试序列。

  • Test Moule/Test Unit : 测试的执行单元
  • Test Case : 测试用例,由测试步骤(Test Step)组成
  • Test Group :测试分组,对Test Case分组,使测试结构更加清晰

Test Module/Test Unit 架构

Test Module/Test Unit架构

Test Module和Test Unit在测试功能实现模式上基本相同,它们主要实现以下功能:

  1. 访问完整的剩余总线仿真
  2. 访问CAN、LIN、Ethernet、Flex Ray等总线
  3. 通过系统变量访问和控制连接SUT的I/O板卡或VT System
  4. 通过FDX接口访问外围实时系统(如HIL系统和LabVIEW模块等)
  5. 通过对应的接口访问外置测量系统(如GPIB和Ethernet接口的设备)

Test Module和Test Unit的区别:

  • Test Unit在Test Configuration窗口定义,用户需要根据Vector提供的软件vTESTstudio创建测试用例,然后将测试用例导入CANoe Test Unit运行。
  • Test Module在 Test Setup for Test Modules 中定义,Test Module支持三种不同语言类型的测试模块:CAPL、XML和.NET。用户可以根据自己熟悉的语言和测试需求来编写测试模块。

XML和CAPL、.NET测试模式的主要区别:

XML和CAPL、.NET测试模式的主要区别

其中XML测试模块的特点在于它可以根据用户设置测试参数来调用CAPL或.NET测试库中的Test Cases,并且提供了GUI界面供用户选择被测用例,提高了测试的灵活性。

Test Module 工程实践

本文以CANoe自带的Demo为例简介如何创建并运行CAPL Test Module和XML Test Module。

CAPL Test Module

  1. 首先,在CANoe主界面中选择Test→Test Setup,打开Test Setup for Test Modules窗口。在Test Setup for Test Modules窗口空白处单击鼠标右键并在菜单中选择New Test Environment,可以创建一个新测试环境。

    新建测试环境

  2. 再鼠标右键单击Test Environment,选择Insert CAPL Test Module来插入一个CAPL测试模块,默认的测试模块名称为Test 1。

    新建CAPL Test Module

  3. 鼠标右键单击新建的测试模块Test 1,选择Configuration,打开CAPL Test ModuleConfiguration对话框。在Common选项卡中,修改Module name为Engine Tester,并在Test script中添加EngineTester.can文件。

    配置CAPL Test Module

  4. 接下来是在EngineTester.can文件中实现测试用例。

    实现EngineTester.can

  5. 测试模块配置完毕并且实现测试用例后,双击测试模块Engine Tester即可打开CAPL测试模块的窗口。

    运行Test Module

  6. 点击start按钮开始运行Test Module,运行完毕生成的Report如图所示:

    测试报告

XML Test Module

创建XML Test Module的前两步同CAPL Test Module,下面从第3步开始。

  1. 创建vxt格式的XML文件,导入需要引入的CAPL库文件

    配置XML Test Module

导入CAPL库文件:

导入CAPL Library

  1. 实现XML文件和CAPL Library

    CAPL Library:

    CAPL Library



    XML文件:

    XML file

  2. 运行XML Test Module,生成测试报告

    运行XML Test Module:

    运行XML Test Module


    生成测试报告:

    生成测试报告


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,761评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,953评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,998评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,248评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,130评论 4 356
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,145评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,550评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,236评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,510评论 1 291
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,601评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,376评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,247评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,613评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,911评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,191评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,532评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,739评论 2 335