茫茫人海,相遇是一种缘分,欢迎欢迎!
从零开始学习CANoe(一)—— 新建工程
从零开始学习CANoe(二)—— CANdb++ 创建 dbc文件
从零开始学习CANoe(三)—— 系统变量的创建和使用
从零开始学习CANoe(四)—— 设计panel
系列用的CANoe演示工程我放在了Git上,不定时根据博客更新。
CANoe-Demn
前面博客,已经将工程搭建起来了,我想通过接下来的几篇博客通过简单demo说一下,编写Case,今天就说一下怎么创建CAPL Test Module的两种方式。
1, 在Bus 上 鼠标右键 ,然后选择insert CAPL Test Module
3,点击 file
,选择一个我们刚建立的文件夹 TestModule
,然后在选择的文件的地方命名我们的capl 文件 capl_test_node_test
,然后点击OK就好了
4,然后点击下面的小铅笔
它会自动在文件夹下创建一个capl_test_node_test.can
的空白文件。
5,我们简单创建两个case,如下图代码:
/*@!Encoding:1252*/
includes
{
}
variables
{
word TestStepIndex=0;
word subTestStepIndex=0;
char TestStepText[200];
char tempText[200];
}
testcase read_EngineState() //读取速度
{
TestStepIndex = 1;
subTestStepIndex= 1;
snprintf(TestStepText, elcount(TestStepText), "%d.%d", TestStepIndex,subTestStepIndex );
TestStep(TestStepText, "Read Engine Speed.");
snprintf(tempText, elcount(tempText), "Engine Speed is %.2f",getSignal(EngineSpeed) );
testStepPass(TestStepText, tempText);
}
testcase read_LightState() //读取前大灯和闪光灯的状态
{
TestStepIndex = 1;
subTestStepIndex= 1;
snprintf(TestStepText, elcount(TestStepText), "%d.%d", TestStepIndex,subTestStepIndex );
TestStep(TestStepText, "Read Flash Light Speed.");
snprintf(tempText, elcount(tempText), "Flash Light is %d",getSignal(FlashLight) );
testStepPass(TestStepText, tempText);
TestStepIndex = 2;
subTestStepIndex= 1;
snprintf(TestStepText, elcount(TestStepText), "%d.%d", TestStepIndex,subTestStepIndex );
TestStep(TestStepText, "Read Head Light Speed.");
snprintf(tempText, elcount(tempText), "Head Light is %d",getSignal(HeadLight) );
testStepPass(TestStepText, tempText);
}
void MainTest ()
{
read_EngineState();//读取速度
read_LightState();//读取前大灯和闪光灯的状态
}
6,把工程Run起来,双击 capl 节点(1),会弹出 capl_test_node_test的测试 test up,然后我们通过pannl简单随便设置下speed值,电量大灯,然后点击 测试(2),测试完毕,我们打开报告(3)。
1,我们 右键点击下 CAPL 节点,然后选择 Block Active
禁用掉这个节点,或者左键点击CAPL节点,按下空格键禁用。
2,选择 Test Setup
,新建一个测试环境,命名为bmw_test.tse
3,右键选择 insert CAPL Test Module,
4,将capl_test_node_test.can 加载进来,如下图,效果和方法一 是一样的
- 好记性,不如烂笔头,技术探索路漫漫,携手志同道合之人上下求索是件很快乐的事。
- 如果这篇博客对你有帮助,请 “点赞” “评论”“收藏”一键三连 哦!码字不易,大家的支持就是我坚持下去的动力。