当前位置: 首页 > article >正文

告别手动测试:AUTOSAR网络管理自动化测试实战

文章目录

  • 一、自动化测试系统架构
    • 硬件组成
    • 软件架构
  • 二、测试覆盖的关键场景
    • 状态机测试
    • 时间参数测试
    • 容错性测试
  • 三、测试case举例
  • 四、小结


一、自动化测试系统架构

AUTOSAR网络管理自动化测试由硬件设备和软件工具共同完成。

硬件组成

  • 程控电源(DUT供电)
  • 继电器板卡(通道切换,制造短地、短电等故障)
  • 总线接口卡VN1630/VN1640、VH6501(总线数据仿真、busoff异常模拟)
  • 示波器(监测CAN总线显隐性电平)
  • 万用表(终端电阻、休眠唤醒状态异常的问题排查)

软件架构

使用Vector软件工具链,上位机软件使用CANoe来进行工程搭建、设备控制、报文分析等;测试脚本采用vTESTstudio(也可以用Vector CAPL Browser)进行CAPL脚本开发,覆盖AUTOSAR网络管理的状态机测试、时间参数测试、容错性测试甚至PN功能验证等内容,来实现自动化测试,生成测试报告。

二、测试覆盖的关键场景

测试用例的搭建需要注意区分节点类型,主动唤醒节点、被动唤醒节点的唤醒方式是不同的。

状态机测试

核心:三种模式、三种状态之间的切换测试,确保符合AUTOSAR状态机转换逻辑。
休眠唤醒机制的验证,来看NM报文的发送是否符合预期。

时间参数测试

验证定时器超时,包括重复消息状态持续时间、网络管理超时时间、等待总线睡眠时间等;验证快发NM报文周期时间。

容错性测试

注入干扰或者CAN线故障来进行busoff测试;电源电压波动检查DUT电源恢复后的NM是否正常等。

三、测试case举例

重复报文状态下的busoff干扰,CAPL伪代码如下:

TestStep("Step1", "DUT上电,等待进入睡眠模式");
//程控电源上电
//判断DUT处于休眠状态,判断条件:总线是否有报文or静态电流大小
if(DUT没有休眠)
{TestStepFail("FAIL", "DUT无法休眠,测试结束");
}
TestStep("Step2", "发送唤醒请求,DUT唤醒");
//唤醒条件执行
if(DUT没有唤醒)
{TestStepFail("FAIL", "DUT无法唤醒,测试结束");
}
TestStep("Step3", "判断DUT进入重复报文状态");
//执行判断条件,标志位置1
TestStep("Step4", "在重复报文状态下,进行busoff干扰");
//继电器板卡控制,CANH短电故障注入
//依据错误帧数量,判断DUT是否进入busoff//后续步骤:故障恢复、通信是否恢复、取消唤醒、进入休眠

四、小结

AUTOSAR网络管理自动化测试能够提升测试效率,保证NM的实时性和可靠性。在实际工程搭建和测试执行中需要注意节点同步、CAPL脚本对于初始状态的检查以及case结束后的状态恢复来保证整个测试序列执行的可行性。

相关文章:

告别手动测试:AUTOSAR网络管理自动化测试实战

文章目录 一、自动化测试系统架构硬件组成软件架构 二、测试覆盖的关键场景状态机测试时间参数测试容错性测试 三、测试case举例四、小结 一、自动化测试系统架构 AUTOSAR网络管理自动化测试由硬件设备和软件工具共同完成。 硬件组成 程控电源(DUT供电&#xff0…...

BUCK电路利用状态空间平均法和开关周期平均法推导

以BUCK电路为例的两种方法推导 BUCK电路简介 BUCK电路是一种降压型DC-DC转换器,其拓扑结构如下: 输入电压 V in V_{\text{in}} Vin​,输出电压 V out = D V in V_{\text{out}} = D V_{\text{in}} Vout​=DVin​(稳态时, D D D为占空比)。关键元件:开关管 S S S、续流…...

MongoDB 用户与权限管理完全指南

在当今数据驱动的时代,数据库安全已成为企业IT架构中最关键的环节之一。作为最受欢迎的NoSQL数据库之一,MongoDB提供了完善的用户认证和权限管理机制,但许多开发者和数据库管理员对这些功能的理解和应用仍停留在表面层次。本文将全面剖析Mong…...

C++滑动门问题(附两种方法)

题目如下&#xff1a; 滑动窗口 - 题目 - Liusers OJ ——引用自OJ网站 方法如下&#xff1a; 1.常规思想 #include<bits/stdc.h> using namespace std; int main() {int n,k;int a[110];cin>>n>>k;for(int i0;i<n;i){cin>>a[i];}for(int i0;i…...

基于ITcpServer/IHttpServer框架的HTTP服务器

https://www.cnblogs.com/MuZhangyong/p/16839231.html 在基于ITcpServer/IHttpServer框架的HTTP服务器实现中,OnBody方法主要用于接收HTTP请求体数据,而触发HTTP响应通常是在OnMessageComplete方法中完成。以下是完整的响应触发机制说明: sequenceDiagramClient->>…...

初识main函数

int main(int argc, char *argv[]) {int a 0;return a; }X64 MSVC编译器 Windows x64调用约定 { // 将第二个参数(rdx)保存到栈[rsp0x10]位置 0x7ff6e54c2ad0 mov qword ptr [rsp10h],rdx // 将第一个参数(ecx)保存到栈[rsp8]位置 0x7ff6e54c2ad5 …...

FPGA高效验证工具Solidify 8.0:全面重构图形用户界面

近日&#xff0c;FPGA高效验证工具Solidify发布了8.0版本。该版本对图形用户界面&#xff08;GUI&#xff09;进行了全面重构&#xff0c;历时两年&#xff0c;经过了大幅的架构改进&#xff0c;旨在为用户提供更安全、更稳定的使用环境。 Solidify的用户对隐私有严格要求&…...

SIL2/PLd 认证 Inxpect毫米波安全雷达:3D 扫描 + 微小运动检测守护工业安全

Inxpect 成立于意大利&#xff0c;专注工业安全技术。自成立起&#xff0c;便致力于借助先进雷达技术提升工业自动化安全标准&#xff0c;解决传统安全设备在复杂环境中的局限&#xff0c;推出获 SIL2/PLd 和 UL 认证的安全雷达产品。 Inxpect 的雷达传感器技术优势明显。相较于…...

java中string类型的list集合放到redis的5种数据类型的那种比较合适呢,可以用StringRedisTemplate实现

在Java中&#xff0c;如何将一个String类型的List集合存储到Redis中&#xff0c;并且应该选择Redis的哪种数据类型。同时&#xff0c;用户还问到是否可以使用StringRedisTemplate来实现。 首先&#xff0c;我需要回忆一下Redis的5种主要数据类型&#xff1a;字符串&#xff08;…...

PyQt学习系列09-应用程序打包与部署

PyQt学习系列笔记&#xff08;Python Qt框架&#xff09; 第九课&#xff1a;PyQt的应用程序打包与部署 课程目标 掌握使用 PyInstaller 将PyQt应用程序打包为独立可执行文件学习处理 资源文件&#xff08;图标、样式表、图片&#xff09;和 依赖项实现 跨平台部署&#xff0…...

实现图片自动压缩算法,canvas压缩图片方法

背景&#xff1a; 在使用某些支持webgl的图形库&#xff08;eg&#xff1a;PIXI.js&#xff0c;fabric.js&#xff09;场景中&#xff0c;如果加载的纹理超过webgl可处理的最大纹理限制&#xff0c;会导致渲染的纹理缺失&#xff0c;甚至无法显示。 方案 实现图片自动压缩算…...

《数据结构笔记三》:单链表(创建、插入、遍历、删除、释放内存等核心操作)

不带头节点的单链表&#xff1a;&#xff08;不带表头&#xff09; #include<stdio.h> #include<stdlib.h> #include<string.h> //定义一个链表节点结构体 typedef struct Node {/* data */int data; //表示节点数据域struct Node *next; //…...

光伏行业如何利用SD-WAN优化分布式网络:替代MPLS、VPN、4G/5G的网络架构升级与云安全方案全解析

光伏行业的网络通信挑战与SD-WAN技术方案对比分析 光伏行业的分布式网络架构、远程站点多、通信环境复杂&#xff0c;以及对实时数据传输的高要求&#xff0c;使得网络架构成为影响行业数字化转型的重要因素。近年来&#xff0c;SD-WAN&#xff08;软件定义广域网&#xff09;…...

2025电工杯数学建模A题思路数模AI提示词工程

我发布的智能体链接&#xff1a;数模AI扣子是新一代 AI 大模型智能体开发平台。整合了插件、长短期记忆、工作流、卡片等丰富能力&#xff0c;扣子能帮你低门槛、快速搭建个性化或具备商业价值的智能体&#xff0c;并发布到豆包、飞书等各个平台。https://www.coze.cn/search/n…...

LLM | 论文精读 | NAACL 2025 | Clarify When Necessary:教语言模型何时该“问一句”再答!

&#x1f50d; 解读 NAACL 2025 重磅论文《Clarify When Necessary》&#xff1a;教语言模型何时该“问一句”再答&#xff01; &#x1f9e9; 一、现实问题&#xff1a;大模型“看不懂装懂”有多危险&#xff1f; 我们每天用的 ChatGPT、Claude 等大型语言模型&#xff08;LL…...

嵌入式鸿蒙openharmony应用开发环境搭建与工程创建实现

各位小伙伴大家好,本周开始分享鸿蒙开发相关的内容,从基础的配置方法到各种功能的实现,探索国产操作系统的奥秘。 第一:观察结果 第二:开源语言 ArkTS是鸿蒙应用开发中使用的TypeScript超集,提供了一套丰富的API来构建应用界面和逻辑。 第三:环境搭建 步骤 1 通过如…...

MDK的编译过程及文件类型全解

本章参考资料&#xff1a;MDK的帮助手册《ARM Development Tools》&#xff0c;点击MDK界面的“help->uVision Help”菜单可打开该文件。 关于ELF文件格式&#xff0c;参考配套资料里的《ELF文件格式》文件。 在本章中讲解了非常多的文件类型&#xff0c;学习时请跟着教程的…...

socc 19 echash论文部分解读

前言&#xff1a;论文还是得吃透才行&#xff0c;不然很多细节有问题 q1 object和data chunck哪一个大 根据论文&#xff0c;一个 data chunk 通常比一个 object 大&#xff0c;因为它是由多个 object 组合而成的 。 论文中提到&#xff0c;cross-coding 会将多个 object 组合…...

Linux Shell编程(八)

目录 Case语句 1--case格式 2--case使用案例&#xff1a;输入不容的数字&#xff0c;给出不同的结果 跳出循环 1--break 案例&#xff1a;执行十次时&#xff0c;跳出当前循环 完整流程 2--continue 案例&#xff1a;跳过2&#xff0c;4 输出 完整流程 Case语句 1--case格式 c…...

AI筑基,新质跃升|英码科技亮相华为广东新质生产力创新峰会,发布大模型一体机新品,助力产业智能化转型

5月15日&#xff0c;以“AI筑基&#xff0c;新质跃升”为主题的华为中国行2025广东新质生产力创新峰会在惠州圆满召开。本次峰会聚焦人工智能、算力基础设施等新ICT技术如何驱动“新质生产力”&#xff0c;共探广东高质量发展新路径。英码科技受邀出席本次峰会&#xff0c;并携…...

手机打电话时由对方DTMF响应切换多级IVR语音菜单(话术脚本与实战)

手机打电话时由对方DTMF响应切换多级IVR语音菜单 &#xff08;话术脚本与实战&#xff09; --本地AI电话机器人 上一篇&#xff1a;手机打电话时由对方DTMF响应切换多级IVR语音应答&#xff08;二&#xff09; 下一篇&#xff1a;手机打电话时由对方DTMF响应切换多级IVR语音…...

面试题——JDBC|Maven|Spring的IOC思想|DI思想|SpringMVC

目录 一、JDBC 1、jdbc连接数据库的基本步骤&#xff08;掌握**&#xff09; 2、Statement和PreparedStatement的区别 &#xff08;掌握***&#xff09; 二、Maven 1、maven的作用 2、maven 如何排除依赖 3、maven scope作用域有哪些&#xff1f; 三、Spring的IOC思想 …...

DETR3D- 3D Object Detection from Multi-view Images via 3D-to-2D Queries

MIT CORL 2021 纯视觉BEV方案transformer网络3D检测 paper&#xff1a;[2110.06922] DETR3D: 3D Object Detection from Multi-view Images via 3D-to-2D Queries code&#xff1a;GitHub - WangYueFt/detr3d DNN提图像特征&#xff0c;FPN提多尺度特征 pts_bbox_head Detr3…...

SpringBoot3整合WebSocket

一、WebSocket简介 WebSocket协议是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工(full-duplex)通信&#xff0c;允许服务器主动向客户端推送数据。 与传统的 HTTP 请求-响应模式不同&#xff0c;WebSocket 在建立连接后&#xff0c;允许服务器和客户端之间进行双向…...

鸿蒙进阶——驱动框架UHDF 机制核心源码解读(一)

文章大纲 引言一、uhdf 概述二、uhdf 的核心参与角色1、drivers/hdf_core/adapter/uhdf2/manager/device_manager.c1.1、drivers/hdf_core/framework/core/manager/src/devmgr_service.c#DevmgrServiceGetInstance通过objectId获取IDevmgrService实例1.2、drivers/hdf_core/fra…...

电子电路:能认为电抗也是在做功吗?

阻抗是什么,我记得在交流电路中,阻抗是电阻、电感和电容的综合作用,用Z表示,单位是欧姆。 那阻抗和做功的关系,可能需要从阻抗的组成来分析。阻抗分为电阻部分和电抗部分,也就是 Z = R + jX,其中R是电阻,X是电抗(包括感抗和容抗)。而做功可能主要和电阻有关,因为电…...

DEEPSEEK + 其他工具的玩法

1. deepseek 即梦&#xff0c;批量生成图片 1&#xff09;给deepseek提出需求&#xff0c;让他生成一个海报设计框架 2&#xff09;让deepseek把上面的框架转换为文生图的提示词&#xff0c;方便用来制作图片 3&#xff09;将提示词复制到 即梦&#xff08;即梦电脑…...

Idea 配合 devtools 依赖 实现热部署

核心依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope><optional>true</optional></dependency> yaml配置 spring: #…...

远程访问家里的路由器:异地访问内网设备或指定端口网址

在一些情况下&#xff0c;我们可能需要远程访问家里的路由器&#xff0c;以便进行设置调整或查看网络状态等&#xff0c;我们看看怎么操作&#xff1f; 1.开启远程访问 在路由本地电脑或手机&#xff0c;登录浏览器访问路由管理后台&#xff0c;并设置开启WEB远程访问。 2.内…...

根据参数量,如何推断需要多少数据才能够使模型得到充分训练?

✅ 一、经验法则&#xff1a;数据量 vs. 模型参数量 经典经验法则&#xff08;适用于监督学习场景&#xff09;&#xff1a; 训练样本数 ≈ 模型参数数量的 10~100 倍对于 BERT-base&#xff08;1.1亿参数&#xff09;&#xff0c;你通常需要 10亿到100亿标注样本 才能从头训…...