【CANoe】XML Test Module使用实例
文章目录
- 一、实操步骤
- 1、增加XML Test Module节点
- 2、配置XML Test Module节点
- 3、XML Test Module节点增加CAPL脚本(.can文件)
- 4、文件夹结构
- 5、使用仿真节点开始测试
- 6、测试结果与测试报告
- 7、同理,在Test Setup也可如此操作
一、实操步骤
1、增加XML Test Module节点

2、配置XML Test Module节点



XML_Demo.xml文件代码如下:
<?xml version="1.0" encoding="iso-8859-1" standalone="yes"?>
<testmodule title="bmw" version=""><testgroup title="bmw1"> <capltestcase name="TC01"></capltestcase><capltestcase name="TC02"></capltestcase><capltestcase name="TC03"></capltestcase></testgroup> <testgroup title="bmw2"> <capltestcase name="TC04"></capltestcase><capltestcase name="TC05"></capltestcase></testgroup> <testgroup title="bmw3"> <capltestcase name="TC01"></capltestcase><capltestcase name="TC03"></capltestcase></testgroup>
</testmodule>

3、XML Test Module节点增加CAPL脚本(.can文件)


XML_Demo.can代码如下:
/*@!Encoding:936*/
includes
{}variables
{message CAN2.0x101 msg_101={dlc=8};
}//KL15 ON【第一个bit】
Set_KL15_on()
{msg_101.byte(0)= msg_101.byte(0)|0x1;output(msg_101);
}//KL15 OFF【第一个bit】
Set_KL15_off()
{msg_101.byte(0)=0xFE&msg_101.byte(0);//11111110&msg_101.byte(0)output(msg_101);
}testcase TC01()
{TestCaseTitle("TC01","111");write("【1】发送指令:上15");Set_KL15_on();testStep("【1】","发送指令:上15");testwaitfortimeout(1000);write("【2】发送指令:下15");Set_KL15_off();testStep("【2】","发送指令:下15");}
testcase TC02()
{TestCaseTitle("TC02","222");write("【1】发送指令:上15");Set_KL15_on();testStep("【1】","发送指令:上15");testwaitfortimeout(1000);write("【2】发送指令:下15");Set_KL15_off();testStep("【2】","发送指令:下15");}
testcase TC03()
{TestCaseTitle("TC03","333");write("【1】发送指令:上15");Set_KL15_on();testStep("【1】","发送指令:上15");testwaitfortimeout(1000);write("【2】发送指令:下15");Set_KL15_off();testStep("【2】","发送指令:下15");}
testcase TC04()
{TestCaseTitle("TC04","444");write("【1】发送指令:上15");Set_KL15_on();testStep("【1】","发送指令:上15");testwaitfortimeout(1000);write("【2】发送指令:下15");Set_KL15_off();testStep("【2】","发送指令:下15");}
testcase TC05()
{TestCaseTitle("TC05","555");write("【1】发送指令:上15");Set_KL15_on();testStep("【1】","发送指令:上15");testwaitfortimeout(1000);write("【2】发送指令:下15");Set_KL15_off();testStep("【2】","发送指令:下15");
}
//void MainTest ()
//{
// write("-------------------【测试开始】-------------------");
// write("");
//
// stopLogging();
// setLogFileName("Logging\\{Date}_{Time}\\{LocalTime}_TC01");
// startLogging();
// TC01();
// stopLogging();
//
// write("-------------------【测试结束】-------------------");
//}
//
4、文件夹结构

5、使用仿真节点开始测试
因为我没有连实际的设备,所以用仿真总线模拟


6、测试结果与测试报告


7、同理,在Test Setup也可如此操作


相关文章:
【CANoe】XML Test Module使用实例
文章目录 一、实操步骤1、增加XML Test Module节点2、配置XML Test Module节点3、XML Test Module节点增加CAPL脚本(.can文件)4、文件夹结构5、使用仿真节点开始测试6、测试结果与测试报告7、同理,在Test Setup也可如此操作 一、实操步骤 1、增加XML Test Module节…...
oracle的update语句where条件后的索引字段为空时不执行
问题描述: update 表名 set age ‘23’ where id1 and name‘lili’; 当在oracle执行以上sql时执行成功,但是当传入的name为null时,sql不成立。我的表中id和name是联合唯一索引,以为name不会为空,但实际上name可以为空…...
RabbitMQ的特点
RabbitMQ是一个开源的消息中间件,用于在不同的应用程序之间进行异步通信。它支持多种消息传递协议,如AMQP、MQTT、STOMP等。 RabbitMQ具有以下特点: 可扩展性:RabbitMQ可以通过添加更多的节点和队列来实现水平扩展。 可靠性&…...
JS单选框默认选中样式修改,为白色背景中心有黑色小圆点的样式
要修改JavaScript中默认选中的单选框的样式为白色背景并带有黑色小圆点,你可以使用CSS来实现。以下是一个示例,展示如何修改样式: <style>/* 修改默认选中单选框的样式 */input[type"radio"]:checked {appearance: none; /*…...
2023年下半年NPDP考试今天开始报名!
2023年第二次NPDP考试将于2023年12月2日(周六)举行,考试报名相关事项安排如下: 一、考试时间: 12月2日09:00-12:30。 二、报名时间: 10月18日08:00-11月10日23:59。 三、缴费及退考截止时间࿱…...
nfs+rpcbind实现服务器之间的文件共享
NFS简介 NFS服务及Network File System,用于在网络上共享存储,分为2,3,4三个版本,最新为4.1版本。NFS基于RPC协议,RPC为Remote Procedure Call的简写。 应用场景:用于A,B,C三台机器上需要保证被访问到的文件是一样…...
10-k8s-身份认证与鉴权
文章目录 一、ServiceAccount介绍二、ServiceAccount相关的资源对象三、dashboard空间示例 一、ServiceAccount介绍 ServiceAccount(服务账户)概念介绍 1)ServiceAccount是Kubernetes集群中的一种资源对象,用于为Pod或其他资源提供…...
如何分析K8S中的OOMKilled问题(Exit Code 137)
什么是 OOMKilled Kubernetes 错误(Exit Code 137) 当 Kubernetes 集群中的容器超过其内存限制时,Kubernetes 系统可能会终止该容器并显示“OOMKilled”错误,这表明该进程由于内存不足而被终止。此错误的退出代码是 137。 如果遇…...
【0day】泛微e-office OA未授权访问漏洞学习
注:该文章来自作者日常学习笔记,请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与作者无关。 目录 一、漏洞描述 二、影响版本 三、资产测绘 四、漏洞复现...
CSS盒子模型的详细解析
03-盒子模型 作用:布局网页,摆放盒子和内容。 盒子模型-组成 内容区域 – width & height 内边距 – padding(出现在内容与盒子边缘之间) 边框线 – border 外边距 – margin(出现在盒子外面) d…...
【mfc/VS2022】计图实验:绘图工具设计知识笔记2
按钮添加处理程序 1.类视图找到对应类右击,类向导 2. 找到对应的的按钮id 如何将画出的两个相交的圆都显示出来,而不是重叠(如下图)隐藏了一条圆弧 问题如图: 因为矩形和圆心其实是个背景色的封闭图形,所…...
Redis数据结构之quicklist
前言 为了节省内存,Redis 推出了 ziplist 数据类型,采用一种更加紧凑的方式来存储 hash、zset 元素。因为查找的时间复杂度是 O(N),且写入需要重新分配内存,所以它仅适用于小数据量的存储,而且它还存在 连锁更新 的风…...
MMKV(1)
内存准备 通过 mmap 内存映射文件,提供一段可供随时写入的内存块,App 只管往里面写数据,由操作系统负责将内存回写到文件,不必担心 crash 导致数据丢失。 数据组织 数据序列化方面选用 protobuf 协议,pb 在性能和空…...
centos 7.9 源码安装htop
1.下载源码 wget http://sourceforge.net/projects/htop/files/latest/download 2.上传到tmp目录,并解压 tar xvzf htop-1.0.2.tar.gz mv htop-1.0.2 /opt/ 进入到 cd /opt/htop-1.0.2/ 3.编译并安装 ./configure && make && make install 4.…...
Element UI之Button 按钮
Button 按钮 常用的操作按钮。 按需引入方式 如果是完整引入可跳过此步骤 import Vue from vue import { Button } from element-ui import element-ui/lib/theme-chalk/base.css import element-ui/lib/theme-chalk/button.css import element-ui/lib/theme-chalk/icon.cs…...
dig 简明教程
哈喽大家好,我是咸鱼 不知道大家在日常学习或者工作当中用 dig 命令多不多 dig 是 Domain Information Groper 的缩写,对于网络管理员和在域名系统(DNS)领域工作的小伙伴来说,它是一个非常常见且有用的工具。 无论是简单的 DNS 解析查找还…...
深度分析AMQP以及在rabbitMQ中的应用
文章目录 AMQP是什么AMQP在rabbitMQ中的应用AMQP协议的三层AMQP的三大组件AMQP的连接信道RabbitMQ 如何实现信道: AMQP是什么 AMQP(Advanced Message Queuing Protocol)是一种开放标准的消息队列协议。它提供了一个统一的、可靠的、异步的消…...
GB/T 28627-2023 抹灰石膏检测
抹灰石膏是指以半水石膏、Ⅱ型无水石膏单独或两者混合后作为主要胶凝材料,掺入集料和外加剂制成的用于建筑物室内墙面和顶棚基底抹灰找平用的石膏砂浆。 GB/T 28627-2023抹灰石膏检测项目: 测试项目 测试方法 凝结时间 GB/T 28627 保水率 GB/T 286…...
JDK版本和Gradle版本配套关系
Java versionSupport for compiling/testing/…Support for running Gradle 8 N/A 2.0 9 N/A 4.3 10 N/A 4.7 11 N/A 5.0 12 N/A 5.4 13 N/A 6.0 14 N/A 6.3 15 6.7 6.7 16 7.0 7.0 17 7.3 7.3 18 7.5 7.5 19 7.6 7.6 20 8.1 8.3 21 …...
在Linux中,怎么查看自己电脑的系统架构是什么?
2023年10月18日,周三晚上 这些命令会返回一个字符串,表示系统的架构。 常见的架构包括 x86(32位)、x86_64(64位)、ARM 等。 方法1:使用uname命令 uname -m方法2:使用arch命令 ar…...
基于SpringBoot+Vue的旅游景点攻略与门票预订系统毕业设计
博主介绍:✌ 专注于Java,python,✌关注✌私信我✌具体的问题,我会尽力帮助你。一、研究目的本研究旨在构建一个基于Spring Boot与Vue框架的旅游景点攻略与门票预订系统以解决传统旅游信息管理中存在的数据孤岛现象服务响应滞后问题以及用户体验单一化等核…...
SFT与RL:AI训练的黄金搭档,何时介入才能事半功倍?
本文探讨了SFT(监督微调)和RL(强化学习)在AI训练中的协同作用。SFT负责建立模型的基础能力,确保其遵循格式和指令;RL在此基础上优化输出质量,使其更符合人类使用习惯。文章详细分析了何时进行RL…...
更换背景图用什么工具?8个月来我测试过50+款产品,这是真实体验分享
买了新手机,想给证件照换个背景;电商运营需要批量处理商品图;自媒体博主要给头像去个背景……这些场景下,"更换背景图用什么工具"可能是你Google搜索框里最常打的一句话。说实话,这个问题看似简单࿰…...
手把手教你用GDB/LLDB调试器观察寄存器状态(附实战案例)
深入掌握GDB/LLDB寄存器调试:从原理到实战 在软件开发的世界里,调试器就像外科医生的手术刀,而寄存器则是CPU的脉搏。当你面对一个段错误(Segmentation Fault)或者难以捉摸的内存越界问题时,能够直接观察CP…...
MySQL 跑得稳不稳,Prometheus 得能抓到这个数据才能说清楚
前言 数据库出问题的时候,最怕的不是故障本身,而是故障发生了却没人知道,等用户反馈过来才去翻日志,慢了不止一拍。 MySQL 本身有一些状态变量能反映运行状况——连接数、QPS、缓冲池命中率、慢查询数量——但这些数据要么存着没…...
VScode:将VScode界面的显示语言改为简体中文
这是 VS Code 设置语言的标准方式,直接强制指定界面语言: 在 VS Code 界面按下快捷键 Ctrl Shift P(Windows/Linux),Mac 用户用 Cmd Shift P,打开「命令面板」 在弹出的输入框里,输入 Confi…...
Redis分布式锁进阶第六十八篇
一、本篇前置衔接 第六十八篇我们完成了全系列终局复盘,整理了故障排查SOP与企业级落地铁律。常规单资源锁、热点分片锁、隔离锁全部讲透,但真实复杂业务永远不是单一资源:下单要扣库存、扣优惠券、扣积分、冻结余额,多资源并行争…...
YOLOv8实战:构建实时跌倒预警监控系统
1. 为什么需要实时跌倒预警系统 记得去年帮朋友给独居老人安装监控摄像头时,发现一个痛点:传统监控只能事后回放,当老人跌倒时往往错过黄金救援时间。这个问题在养老院和社区医疗场景尤为突出,护工不可能24小时盯着每个监控画面。…...
【LeetCode刷题日记】112.递归中的「减法思维」:一题带你打通二叉树路径求和的任督二脉
🔥个人主页:北极的代码(欢迎来访) 🎬作者简介:java后端学习者 ❄️个人专栏:苍穹外卖日记,SSM框架深入,JavaWeb ✨命运的结局尽可永在,不屈的挑战却不可须臾或…...
TeXstudio红色波浪线强迫症拯救方案:从拼写检查到参考文献问号的全链路排错
TeXstudio红色波浪线全攻略:从诊断到根治的LaTeX高效写作指南 当你沉浸在LaTeX写作中时,突然出现的红色波浪线就像咖啡杯里的蟑螂——不仅打断思路,还让人浑身不自在。这些看似小问题的背后,往往隐藏着从拼写检查到编译顺序的复杂…...
