自动化诊断测试之CANoe.DIVA入门

目录

0 前言

1 CANoe.DIVA基础

2 CANoe.DIVA TIPs

0 前言

        写在前面:如对本文有任何疑问欢迎评论区讨论,希望和大家一起进步。同时HIL测试群欢迎大家加入如有需要也可私信我拉你。VT和DIVA都可以做UDS的自动化测试,但相对VT来说使用DIVA生成用例的速度会更快更全面更简单一些,同时DIVA还可以与VT一起联合做测试。由于目前项目对DIVA的依赖并不深,本文对CANoe.DIVA只做一个简单的入门介绍,意在通过此篇文章可以帮助大家快速的建立一个DIVA工程用于测试或分析。

        本次使用的版本如下:

             CDD:delastudio17

             DIVA:16

1 CANoe.DIVA基础

        1>新建一个DIVA文件首先需要打开DIVA的程序,将制作好的CDD文件进行导入

        2> DIVA的前期配置主要分为两个部分:Project Configuration和Test Configuation

在Project Configuration中主要是ECU的信息。后续的几个配置可以选项,如果要与VT联合可以进行配置,我这边暂时没有用到。

        3>在对项目的配置完成后就应该进行测试的配置:Test intensity就相当于进行全功能测试还是只进行一些somking test;在变体标识符这里一般可以默认不勾,如果勾的话需要在CDD中进行配置,这会在最后的TIPs中进行讲解。

         4>接下来是配置时间层参数,具体的每个定时器的作用都已经详细的备注在图里了。

        5>配置完定时器之后可以开始配置ECU节点相关的数据。这里需要注意的是如果一般NRC21这条是不用勾选的,并不是勾选的越多越好,勾选的越多只会增加自己分析case的时间成本,总的来说只选对的不选贵的。比如这里的ECU碰撞重启,我的项目中是没有这一项的因此我就没有勾选。

 6> 这里一般需要勾选上功能寻址,这样功能寻址和物理寻址的case都会帮你测试到了。传输层的参数按照诊断调查问卷中的填写就可以了。

        7>接下来是选择要进行测试的服务,个人认为这里是比较有意思的地方,你可以给你的一些服务加上precondition和clean up ,这可以增加你case 的鲁棒性,并且可以更加的贴合测试点。因为我这边没有连接VT台架去测试一些和DTC相关的case,因此下面DTC的配置就没有进行配置。

        8> 一切都配置完毕后,点击generate,DIVA会自动生成case如图所示:

        9>最后在CANoe中导入DIVA文件,文件的生成位置就是第一步设置的存储位置,在这里你可以进入case的编辑界面,使用capl进行case 的二次开发然后另存为,这样不需要使用DIVA,你就拥有了自己的自动化case用例了。

 

        10>点击运行,测试完成后在DIVA中打开测试报告如下图所示,具体细节可以点进case中查看,甚至你可以看到当时的trace。还是非常的方便。

 

2 CANoe.DIVA TIPs

        书接上回,回到变体标识的问题,如果你在这里勾选了ECU标识符,但是在CDD中却没有配置,那你每次一点开始测试就会失败,具体现象如下:

 解决方法:

当CDD中有多个Variant时,可以用某个service或data object来标识某个Variant,当Client与ECU通信时,供Client识别不同的Variant。

比如,一个CDD文件中有多个ECU Variant,可以通过某个DID读取某个数据(如软件版本号)来标识ECU Variant。当CDD导入CANoe.DiVa生成测试用例时,如果通过这个DID读到的数据为CDD中设置的0.0.1,可以选择继续测试或者终止测试。

先在BaseVariant里建立Identifying,选定一个数据,通常用0x22服务读取DID某个数值来定义,如软件版本号、硬件版本号等。

再编辑具体Variant的Identifying Pattern 

 

谢谢大家! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/449937.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在conda 虚拟环境中快速卸载安装包(操作详解)

手动卸载虚拟环境中的安装包 1.卸载已经安装的安装包(不指定版本好) pip uninstall 包名 2.卸载指定的安装包 pip uninstall 包名版本号 注意 “” 不是 “” 批量快速卸载 写一个txt文件,例如aaa.txt。官网一般是requirements.txt&…

时序预测 | MATLAB实现基于CNN-BiLSTM-AdaBoost卷积双向长短期记忆网络结合AdaBoost时间序列预测

时序预测 | MATLAB实现基于CNN-BiLSTM-AdaBoost卷积双向长短期记忆网络结合AdaBoost时间序列预测 目录 时序预测 | MATLAB实现基于CNN-BiLSTM-AdaBoost卷积双向长短期记忆网络结合AdaBoost时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 1.Matlab实现…

单臂路由实验(华为)

思科设备参考&#xff1a; 单臂路由实验&#xff08;思科&#xff09; 一&#xff0c;实验目的 在路由器的一个接口上通过配置子接口的方式&#xff0c;实现相互隔离的不同vlan之间互通。 ​ 二&#xff0c;设备配置 Switch1 <Huawei>sys [Huawei]vlan batch 10 20…

一键转换MOV至MP3:轻松删除原视频,释放存储空间!

你是否曾经有一个MOV格式的视频文件&#xff0c;想要提取其中的音频却苦于没有合适的工具&#xff1f;现在&#xff0c;有了我们的全新视频剪辑工具&#xff0c;这个烦恼全部消失&#xff01;我们为你提供一键式解决方案&#xff0c;将MOV视频文件快速转换为MP3音频格式。 首先…

DevOps落地笔记-11|持续集成:软件持续集成,发布信手拈来

上一讲我主要介绍了如何快速的构建环境&#xff0c;以及测试阶段对环境的要求。现在测试环境已经不是阻碍软件开发的障碍了&#xff0c;但另一个问题又出现了&#xff1a;每次测试结果不是不理想&#xff0c;就是问题太多无法继续测试。这是因为&#xff0c;团队成员平时都在自…

【八大排序】冒泡排序 | 快速排序 + 图文详解!!

&#x1f4f7; 江池俊&#xff1a; 个人主页 &#x1f525;个人专栏&#xff1a; ✅数据结构冒险记 ✅C语言进阶之路 &#x1f305; 有航道的人&#xff0c;再渺小也不会迷途。 文章目录 交换排序一、冒泡排序1.1 算法步骤 动图演示1.2 冒泡排序的效率分析1.3 代码实现1.4 …

在Linux中对Nginx进行安全加固

准备工作 在IP为x.x.x.x的服务器上安装nginx&#xff0c;确保Linux系统为nginx环境。 检查nginx是否配置nginx账号锁定策略 配置nginx账号锁定策略&#xff0c;降低被攻击概率。 第一步&#xff0c;查看nginx的锁定状态。 命令&#xff1a;passwd -S nginx 若结果出现“P…

Next.js初识

Next.js初识 Next.js&#xff1a;这是一个用于生产环境的React 框架&#xff08;国外用的比较多&#xff09;。 Next.js 为您提供生产环境所需的所有功能以及最佳的开发体验&#xff1a;包括静态及服务器端融合渲染、 支持 TypeScript、智能化打包、 路由预取等功能 无需任何配…

TQ15EG开发板教程:在VIVADO2023.1 以及VITIS环境下 检测DDR4

打开VIVADO2023.1 创建一个新的工程&#xff0c;设置工程名称和地址 选择RTL工程&#xff0c;勾选不添加文件 搜索15eg&#xff0c;选择xqzu15eg-ffrb1156-2-i 完成创建工程 添加设计模块 设置模块名称 在模块中添加mpsoc器件 双击器件进行配置 若有配置文件预设可以直接导入配…

[BUUCTF]-PWN:mrctf2020_easy_equation解析

查看保护 再看ida 很明了&#xff0c;题目就是让我们用格式化字符串漏洞修改judge的值&#xff08;可以用python脚本进行计算&#xff0c;最终算出来得2&#xff09;使等式成立&#xff0c;然后getshell。 虽然操作比较简单&#xff0c;但我还是列出了几种方法 解法一&#x…

代码随想录算法训练营第38天 | 动态规划理论基础 509.斐波那契数 70.爬楼梯 746.使用最小花费爬楼梯

动态规划理论基础 动态规划适用于解决有重叠子问题的问题。所以动态规划中的每一个状态一定是由上一个状态推导来的&#xff0c;这一点区分于贪心&#xff0c;因为贪心每一步总是取局部最优。 解题步骤&#xff1a; 确定dp数组的含义确定递推表达式dp数组如何初始化确定遍历顺…

问题:在下列选项中,下列哪种情况不属于生理排泄过程的是() #媒体#学习方法#经验分享

问题&#xff1a;在下列选项中&#xff0c;下列哪种情况不属于生理排泄过程的是&#xff08;&#xff09; A.CO2由呼吸系统排出 B.食物残渣由消化道排出 C.皮肤排出汗液 D.肾脏排出尿液 E.由消化道排出的胆色素 参考答案如图所示