- 博客(107)
- 资源 (5)
- 收藏
- 关注
原创 【零基础学习CAPL】——弹窗信息提示
不用手动制作Panel窗口,直接使用CAPL脚本实现弹窗提示。//没有wait超时,等待测试人员确认//有wait超时,对话框在超时后自动终止//有wait超时,可以显示一个资源,即对话框可以显示额外的信息。/*参数说明text:显示在弹窗中的内容,长度限制在4096字符timeout:弹窗自动结束的时间,单位:ms。若为0,则无超时控制heading:对话框文本上方的标题。字符串最大长度限制在256个字符。resource:URL或文件路径。字符串的最大长度是有限的(512个字符)。
2025-12-25 16:45:03
3
原创 【CANoe使用大全】——测试节点的创建
主要介绍几种测试节点的作用和两种创建方式主要介绍的测试节点:InsertNetworkNode、InsertCAPLTestModule、InsertXMLTestModule。
2025-11-27 20:11:07
621
原创 【零基础学习CAPL】——报告与log的生成与存储
我们日常自动化测试过程中经常会有连续多个用例执行的场景,每个用例都会有各自生成的log,为了方便后期log的存储和查找,我们可以使用脚本实现每个log的单独存储。本章主要介绍连续多个用例执行,每个用例log和用例名一致存储在同一个文件夹内。├─ Test_Report.html(统一报告)├─ xx1.blf(用例1 log)├─ xx2.blf(用例2 log)├─ xx3.blf(用例3 log)├─ xx4.blf(用例4 log)└─ ...
2025-11-27 18:58:39
168
原创 【零基础学习CAPL】——testfunction xx()
用于自动化测试,以 testfunction关键字声明。它们可以被测试模块(Test Module)或测试单元(Test Unit)调用和执行。这个函数的主要目的是在执行任何实际测试用例之前,将整个测试系统(包括仿真节点、DUT、总线环境等)设置到一个已知的、正确的初始状态。它确保测试的可重复性和可靠性。信号 / 环境变量初始化(如清空 DTC、复位 ECU 状态)。网络管理(唤醒总线、等待 ECU 通信建立)。硬件状态配置(如供电、IO 口设置)。测试数据加载(从文件读取配置参数)
2025-11-26 13:48:37
44
原创 【基于CAPL进行TXT文件读取】——3.单帧报文的发送
本章实例介绍,主要是介绍多行数据的读取与发送情况。多行数据读取分为两种,每一行数据做单独一帧报文进行发送,即单帧报文的发送另一种情况是多行内容使用一帧报文发送,即多帧报文的发送。本篇主要介绍单帧报文的内容获取与发送。/@!// 定义字符数组,用于存储读取的内容(缓冲区)// 定义文件句柄变量// 1. 打开文件// 判断文件是否成功打开(非零表示成功)= 0)
2025-10-22 15:02:01
83
原创 【基于CAPL进行TXT文件读取】—2.使用指令将读取的文件内容发送到trace
上一篇文章讲到怎么从TXT文件中读取具体内容,这篇文章主要讲解读取到的内容 怎么使用通过使用诊断报文的形式发送到trace窗口中。提供一个实例仅供参考使用。
2025-10-22 11:23:04
265
原创 【基于CAPL进行TXT文件读取】—1.基于CAPL进行TXT文件的读取操作
文件操作主要分为三个步骤:打开文件、读取文件、关闭文件。下面实例讲解一个文件内容的读取,以及过程中使用的函数讲解。
2025-10-22 09:20:02
610
原创 TestSupplyTextEvent() 函数介绍
在CAPL中, TestSupplyTextEvent(char aText[]) 是一个用于测试同步的函数,它的作用是向测试模块发送一个文本事件(text event),通常用于触发等待该事件的测试步骤。
2025-10-17 15:49:28
375
原创 【VH1160】——简介
使用CANoe进行CAN/LIN一致性测试的测试硬件。VH1160是基于USB的紧凑型测试硬件,可自动进行CAN/LIN的一致性测试。CANoe中的测试用例可以通过VH1160,在每个测试案例之前自动重置硬件侧的ECU。电流测量用于确定ECU状态(休眠/唤醒);通过将网络短路,可以对ECU的鲁棒性进行简单测试。概括简单介绍其应用:控制电压,调节电压,测量电流,busOff(短路)场景制造主要应用于ECU供电与故障注入(ECU 电源控制、电流测量、总线故障注入、LIN/CAN 一致性测试)。
2025-10-17 13:53:01
1003
原创 【零基础学习CAPL语法】——writeLineEx() 函数
用于向指定窗口 带换行 地输出一条格式化字符串,并可同时指定消息类型(Info/Warning/Error/Success)。它是调试、记录和报错时最常用的函数之一。sink(输出目标)用于指定信息输出到哪个窗口或设备,常用取值severity(信息级别)用于分类信息:0:Success 普通信息1:Information 警告2:Warning错误3:Error致命错误。
2025-10-16 16:10:53
522
原创 【同星TS入门】——创建TSMaster工程(总线分析)
工程默认是CANFD的,如果你是CAN协议的需要手动配置一下,如下图,其他参数根据需要修改。内部回环:不需要其他节点应答,可以理解为自发自收,在没有硬件进行学习时,可以选择此模式用于学习TOSUN的使用。外部回环:在不需要其他节点应答的前提下,并把报文发送到CAN网络上,通常用于激活休眠的ECU。此外,同星设备内部集成了120Ω的终端电阻,勾选该选项后,台架上不需要额外在添加电阻。选择需要使用的通道,此处我选择CAN的真实通道,通道数量为1。限制模式:没使用过,网上也没找到相关介绍,有了解的欢迎交流。
2025-09-03 10:03:12
1086
原创 冒烟测试概念速解
冒烟测试也是一种最小项的测试。是一个新版本软件开发完成后,对其版本的基本功能测试,冒烟测试通过之后,再进行进一步的详细测试。其目的是降低软件的测试成本。
2025-06-20 18:01:00
406
原创 【零基础学习CAPL】——Panel之弹窗的创建与使用
在测试过程中弹窗一般用于手动故障注入操作,也可用于测试过程中手动改变测试环境。下面主要来介绍弹窗的制作以及配合的函数使用语法。
2025-02-08 13:32:11
636
原创 PyCharm+RobotFramework框架实现UDS自动化测试- (四)项目实战0x10
硬件环境:CANoe、待测设备(包含UDS诊断模块)
2025-01-21 19:33:55
1073
3
原创 RobotFramework框架实现UDS自动化测试- (三)RobotFramework语法
RobotFramework是一种基于关键字的自动化测试框架,它允许测试人员使用简单的表格格式进行测试用例编写。Setting Section: 设置部分,用于定义测试用例的配置信息.Variable Section:变量部分,用于定义测试用例中使用的变量.Test Case Section: 测试用例部分,包含具体的测试用例.KeywordSection: 关键字部分,用于定义可重用的关键字下面对其语法和结构进行详细介绍。
2025-01-08 00:19:46
1116
原创 PyCharm+RobotFramework框架实现UDS自动化测试——(二)RobotFramework环境配置
从0开始学习CANoe使用从0开始学习车载测试相信时间的力量星光不负赶路者,时光不负有心人。
2025-01-06 23:07:49
1909
1
原创 PyCharm+RobotFramework框架实现UDS自动化测试——(一)python-can 库的安装与环境配置
本专栏主要Python-can环境配置主要使用环境:软件环境:python3.10、pycharm硬件:CANoe(Vector 1630)环境安装可以在任意目录下安装也可直接在pyCharm软件中安装,下面分别讲解。
2025-01-06 22:53:36
1174
原创 【零基础学习UDS诊断测试】——0x27测试用例设计
UDS(统一诊断服务)中的0x27服务,即安全访问服务(Security Access Service),其主要作用是提供一种安全验证机制,以限制对ECU(电子控制单元)的某些数据或诊断服务的访问。这些限制通常是由于保密、排放或安全原因。安全访问通常分不同的等级,等级不分优先级。比如:在扩展会话下支持安全等级5,在编程会话下支持安全等级2。
2024-12-21 15:36:38
1128
1
原创 【零基础学习UDS诊断测试】——NRC 否定响应码
NRC(Negative Response Code)是UDS(统一诊断服务)中用于表示ECU(电子控制单元)拒绝执行诊断请求的代码。每个NRC都有一个唯一的含义,用来指明诊断请求错误的原因。否定响应格式如下:请求: ID:长度+SID+子功能否定响应:ID:长度+7F+SID+NRCNRC 0x11:所有会话下都不支持该服务eg.当前程序不支持0x99服务在默认会话下:在扩展会话下:NRC 0x7F:服务在当前会话中不支持。
2024-12-03 17:11:14
2777
原创 【零基础学习UDS诊断测试】——0x10测试用例设计
一般有三大会话,默认会话、扩展会话、编程会话ECU上电初始进入默认会话,其他两个扩展会话和编程会话的进入需要发送对应指令才能进入。
2024-12-02 19:40:28
703
原创 【CAN总线测试】——如何测试DTC快照(0x19 04)
在台架测试过程中,如何进行快照测试?①模拟快照存储信息,比如车速,时间,里程等②触发DTC③读取快照信息④解读快照信息。
2024-11-29 16:54:10
884
原创 【CAN总线测试】——使用VH6501 进行Busoff快慢恢复测试
即在IDBase中填标准帧11位二进制ID,如果不满11位,高位补零,凑齐11位,并将下方CurrTriggerField设置干扰前一位AckSlot位,Triggeroffset设置为0。首先确认环境支持VN6501,6501硬件连接成功后,工程的小闪电是正常黄色状态,若是灰色证明缺少License,或者软件安装环境不正确。填写干扰报文ID、干扰位置 注意这里的干扰位置是实际干扰的前一位,TriggerOffset表示偏移量,可以干扰某个字节的具体位.找到并打开Panel后,开启工程,并且配置面板。
2024-11-11 18:45:00
4902
1
原创 【零基础学习CAPL】——XML工程创建与使用详解
XML(eXtensible Markup Language,可扩展标记语言)是一种标记语言,用于存储和传输数据。XML(可扩展标记语言)在CAPL中扮演着重要的角色,主要用于定义测试模块、测试用例和测试参数。
2024-11-07 18:45:00
969
原创 【CANoe使用大全】——使用CAPL脚本自动开始和停止报文录制
在日常测试使用CANoe过程中,一般都需要录制log文件。用于对问题排查分析。本章主要介绍如何使用CAPL脚本对log的录制启动与结束进行控制。
2024-11-01 15:23:44
3113
原创 【CANoe使用大全】——使用Frame Histogram窗口检测报文周期
本章主要介绍如果使用更方便快捷的方式进行报文的周期测试不需要脚本,不需要DBC文件,一键快速输出报文周期结果下面对Frame Histogram窗口进行介绍横坐标中每条竖线代表一个报文ID,纵坐标代表每秒发送的帧数上图可以看到报文ID粘连在一起,可以选择如下方式分开。
2024-11-01 11:39:05
2356
原创 【零基础学习CAPL】——T_MsgStart时间检测
T_MsgStart:在改时间内所有周期报文至少被发送一次实现逻辑:1.上电时刻:ECU输入电压>=9V2.T_MsgStart = DUT所有报文至少发出一次的时间-上电时刻(ECU输入电压>=9V)(DUT所有外发报文ID从DBC或者CAn通讯矩阵获取本下面脚本报文为0x14c、0x170~0x17F)3.T_MsgStart
2024-10-31 19:51:41
386
原创 【零基础学习CAPL】——T_CANAck时间检测
T_CANAck :在该时间内,ECU能够接收报文,即能对ACK进行响应。整个测试流程:(有网络管理)1.打开电源,等待DUT睡眠2.打开CANoe工程,并且运行脚本;3.记录过程中首个0x123错误帧的时间time_Sart4.记录第一帧0x123 非错误帧时间 time_End(任意报文都行,报文ID可设置小一点,优先级高一点)
2024-10-31 19:40:07
806
原创 【零基础学习CAPL】——ECU上电后首帧报文发出时间检测(CANInt)
上电首帧报文发送时间,在日常测试场景中比较常见,下面从工程搭建开始进行详细说明上电时刻:ECU输入电压>=9V首帧报文发出时间=首帧报文发出时刻-上电时刻(ECU输入电压>=9V)首帧报文发出时间
2024-10-30 22:59:00
1616
原创 【零基础学习CAPL】——CANoe的 I/O功能配置
通过CANoe I/O口,CANoe可以与外部设备进行交互,实现信号的检测和控制,为ECU的开发和测试提供强大的支持。下面详细介绍I/O口的一些基本使用。Analog Input (AIN):用于模拟量输入,比如采集电压信号Digital Input (DIN0, DIN1):用于数字量输入,比如检测数字开关信号Digital Output (DOUT):用于输出数字信号,可以用于控制外部设备或模拟PWM信号Digital GND:数字地线Analog GND:模拟地线。
2024-10-30 22:25:03
818
原创 【零基础学习CAPL】——CRC值监控测试
在工作过程中,很多报文总是有RollingCounter和CRC值,测试则需要去验证RollingCounter和CRC值的正确性。单靠人手动去计算观测,是没办法实时观测的,所以还是靠脚本去自动监控。前面一章主要讲述CRC值的发送,本章主要介绍CRC值的实时监控,确保CRC的持续正确性。后面一章会对RollingCounter实时监控脚本进行讲解。
2024-09-13 21:02:05
629
原创 【零基础学习CAPL语法】——on message
本章主要介绍on message 事件的各种格式的使用on message:接收到CAN报文时触发。
2024-09-09 23:25:24
2129
原创 【CANoe使用大全】——仿真节点基本配置
Simulation Setup 窗口是配置仿真功能的主要窗口,主要用于配置网络、创建仿真节点,以及添加代码或模型文件以扩展仿真功能。“SimulationSetup”窗口由两部分组成,右侧显示工程中配置的网络使用情况,如网络类型、网络数目等,可通过“Networks”选项添加不同类型的总线网络,如CAN、FlexRay、 Ethernet等,并可在具体的总线网络(如CANNetworks)中增加使用的总线数目;Network Node:仿真节点,用于模拟真实ECU的行为,如报文收发、信号处理。
2024-09-09 16:43:14
2927
原创 基于UDS的Flash 刷写——BootLoad刷写流程详解
基于CANoe 的CAPL+Panel实现 图示如下:主要配合实际指令发送与恢复,进行详解讲解每个步骤这部分主要目的为了后面进入编程中进行准备0x10 03:为了禁止ECU间的正常通信和控制DTC设置, 而这些指令都需要在扩展会话下完成。0x31 01 xx:编程条件检查-确保APP升级过程中,系统的安全性,如果不安全将拒绝编程(可选步骤)0x 85 02: 在刷写过程中,禁止DTC更新0x28 03 03:服务是为了减少在刷写过程中总线负载率——禁止app报文发送与接收这部分主要目的为了后面进
2024-08-26 22:51:05
3789
原创 【UDS诊断】——0x34、0x36、0x37服务
Client端使用Routine Control服务来执行定义的步骤序列并获取特定序列的相关结果。该服务有极大的灵活性。Service31的典型用途可以包括擦除内存、重置定义的数据、覆盖正常服务控制策略以及控制ECU值随时间变化的功能。通过Service31可以启动特定序列、停止运行该特定序列、请求运行结果。该服务以往常用于ECU在做Software Update时,应用于检查刷写条件是否满足、传输数据完整性以及独立性检测。
2024-08-26 18:28:52
5148
2
原创 Bootloader中的PBL、SBL的区别
应用软件和应用数据可以同时编程或者相互独立编程,不允许Boot Loader在软件运行时被非法修改。因此,Bootloader软件存储于被保护的存储器区域,即使发生潜在错误时,控制器始终保证可重新编程。基于软件运行安全性考虑,flash diver不会存在放在flash中,避免正常程序在发生错误时可能的非法修改。在需要执行应用程序或应用数据需要时,首先将flash diver下载至RAM中,然后执行相应的更新。
2024-08-26 13:51:07
1314
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅