- 博客(18)
- 收藏
- 关注
原创 第14章--功能寻址和TesterPresent
诊断相关的测试中会涉及到功能寻址的测试,同时部分场景也需要控制TesterPresent的发送。在本章中我们将一起开发这两个功能。本章完成了功能寻址和TesterPresent功能的开发。>>>返回总目录
2023-05-21 19:54:28
634
原创 第13章--生成可独立查看的allure报告
实际工作中经常需要将测试报告发送给相关方,然而查看allure的报告不仅需要安装allure程序,而且要使用特定的命令才能查看,这不得不说是一件很不合理的事情。通过本章内容,我们将通过使用allure-combine库,来生成可以独立查看的测试报告。本章内容很简单,但是因为比较独立,所以没有合并到其他章节中。>>>返回总目录
2023-05-21 09:57:18
689
原创 第12章--传输层诊断报文收发功能开发
朋友们看到本章的标题可能会有疑惑,我们不是已经通过COM模块实现了诊断收发功能吗?用起来也挺方便的,为什么还要再次开发?同时,我们可能会对传输层的概念感到困惑,不知道当前发送的报文是处于哪一层。接下来,让我们一起来解答这些问题。
2023-05-20 23:08:26
261
原创 第11章--基于FDX的报文发送功能开发
通过调用函数来发送报文的方案存在输入参数类型和数量的限制,同时还需要在初始化的时候额外配置事件处理,使用比较麻烦;使用系统变量来触发报文发送的方案则需要设置多个变量才能完成报文发送,导致延迟增加;本章实现的方案仍是通过系统变量来触发报文发送,只不过不再通过COM接口来完成变量设置,而是使用FDX(Fast Data eXchange)来设置系统变量。
2023-05-20 23:03:26
531
原创 第10章--报文发送功能的实时性分析
在某些测试中,需要验证一些时间参数,通常这些参数是毫秒级别的,比如传输层时间参数N_Bs。N_Bs指的是发送方从“发送完首帧(FF)”到“收到流控帧”之间的时间差,其中发送方是指发送首帧的一方。在0.0015秒时,ECU向Tester发送了一帧报文,FF代表First Frame(首帧);在0.0118秒时,Tester向ECU发送了一帧报文,FC代表Flow Control(流控);这两个时间的差值(约10ms)即为本次测试中的N_Bs。
2023-05-20 22:57:34
471
原创 第9章--报文发送功能开发
在测试中,需要发送各种异常报文来验证ECU是否能正确响应。正常情况,应用层发送10 02,在CANoe中,看到的是如下报文,测试情况一,需要发送如下报文:测试情况二,需要发送如下报文:测试情况三,需要发送少于8字节的报文:利用CAPL的output函数可以比较容易地实现这些需求,但是,CANoe的COM模块并没有提供类似于output函数的接口,只能通过调用在CAPL中定义好的函数来实现。在Vector公司的文档。
2023-05-20 22:54:19
353
原创 第8章--刷新功能开发_步骤实现
上一章中实现了方案2的demo代码,但是其中的步骤都没有完成,本章将参考链接中描述的刷新流程完成刷新代码的步骤实现。
2023-05-20 22:50:42
143
原创 第7章--刷新程序开发_方案设计
在ECU制造完成之后,更新软件时需要运用ECU刷新功能。刷新过程包含了较多诊断命令的使用,通过了解刷新过程,可以对不同诊断命令的含义及使用场景有比较具体的认识。本专栏以ECU刷新功能为被测对象,实现了刷新过程的测试。刷新过程是一个数据传输过程,即将电脑(或其他设备)上的数据传输给ECU。ECU的刷新功能主要用于更新软件,因为ECU在制造完成之后就成为一个带接口的黑盒子,所有与ECU的通讯都需要通过这个接口来完成。一旦ECU装到车上,ECU的接口也很难接触到,因此连接ECU进行刷新就非常困难。
2023-05-20 22:47:38
149
原创 第6章--日志功能开发
在之前的测试程序中,我们已经能够执行简单的诊断测试用例并生成了Allure测试报告。但是有些测试问题需要额外的信息来协助分析和解决,而这些信息可以通过记录日志来实现。因此,在本章中,我们将使用Python的logging模块为程序添加日志功能。
2023-05-20 22:43:22
221
原创 第4章--CANoe library开发 - 诊断功能
因为专栏要做的是汽车ECU自动化测试程序,测试的是ECU的诊断和刷新,因此就需要利用CANoe的接口,开发一些方便使用的诊断报文收发函数。
2023-04-26 18:19:40
912
4
原创 第3章--CANoe library开发 - 基础功能
在介绍完behave之后,我们来讨论一下CANoe库的开发。由于在实际测试中会涉及到大量CANoe的操作,因此,我们需要利用CANoe提供的COM接口来开发一个方便易用的库。COM接口可以简单理解为CANoe提供的基础接口,其他程序可以通过这些接口控制CANoe。本章我们完成了Python控制CANoe的基本功能开发,在后续,还将继续扩展该库,以提供更多的功能。>>>返回总目录
2023-04-25 17:06:22
671
原创 第2章--开发环境配置及简要使用说明
1 创建features文件夹和tutorial.feature文件,如下图所示2 在features文件夹创建steps文件夹,并创建tutorial.py,如下图所示。3 在PyCharm的Terminal中输入"behave",即可执行测试,然后就可以看到Terminal中输出了测试运行的结果。在测试自动化流程中,behave是一个非常有用的工具,可以帮助开发人员和测试人员快速编写、运行和维护测试用例。
2023-04-16 18:16:41
278
1
原创 从零开始--手写诊断及刷新测试程序--概述
从方案设计到功能实现,再到功能测试与验证,本专栏的文章不仅让你看到结果,更能够让你理解设计思路,同时专栏的每个实验都配备了整套的实验工程与代码,帮助你无缝验证。你将开发一个包含了简单仿真ECU的CANoe工程,仿真的ECU能够响应程序发送的诊断请求,模拟真实的测试场景。专栏提供完整的代码及工程文件,项目通过git管理,使你能够根据章节查看对应的代码,并轻松比对不同章节之间的代码变化,深入理解实现细节。如果您觉得上面介绍的内容有用,不妨订阅我的专栏,我会持续分享更多有价值的内容。
2023-04-16 18:05:02
731
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人