目录
一、背景
在CANoe做诊断测试时为了方便后续的测试,利用CANoe的Diagnostic CAPL Functions实现诊断测试,再执行诊断时便可直接运行CAPL脚本去执行诊断服务即可,但是此方法的弊处如下:1、不能快速筛选出需要单独执行的用例,需要在设计脚本时就考虑好分类;2、每条用例对应一个脚本,更换项目后不能完全复用,如果需求有变更就需要修改对应脚本。为了解决这两个问题便想到了利用pytest+allure+excel实现自动化测试,一般情况下pytest+allure+excel相关的自动化测试在互联网的测试中比较常用,我们这次就把这个框架结合CANoe设备利用到汽车控制器的测试中,实现诊断服务测试的自动化。
本文实现技术概述:
实现语言:python
软件:pycharm、CANoe
测试框架:pytest
测试报告:allure
测试用例存放方式:excel存放测试用例
主要思路:利用pytest的parametrize参数化方法将excel中的测试用例相关诊断服务提取出来,通过python调CANoe的COM接口发送,allure形成测试报告,将实际结果和测试的结果状态(Pass/Fail)写回到excel测试用例中保存
二、关键词介绍
pytest
pytest是一个流行的Python测试框架,它能够帮助开发人员编写简洁高效的测试代码。pytest提供了丰富的功能和灵活的API,使得编写、组织和运行测试变得更加简单和直观。pytest支持多种测试类型,包括单元测试、集成测试和功能测试,同时还支持参数化测试和自定义fixture等特性。
pytest的特点包括:
1. 简单易用:pytest的语法简洁清晰,使得编写测试用例变得非常容易。
2. 自动发现测试:pytest能够自动发现项目中的测试用例,无需手动指定测试文件或测试类。
3. 强大的断言:pytest提供了丰富的断言方法,使得编写断言更加灵活和简单。
4. 支持插件:pytest提供了丰富的插件系统,可以轻松扩展其功能。
5. 广泛的支持:pytest可以与其他测试框架和工具无缝集成,适用于各种类型的项目和场景。
allure
Allure是一个用于生成测试报告的开源框架,旨在提供美观且易于理解的测试结果展示。它支持多种编程语言和测试框架,包括Java、Python、Ruby、C#等,并允许在不同的测试环境中进行集成。
Allure测试报告主要特点包括:
1. 丰富的可视化:Allure生成的测试报告以图表、图形和图像等可视化内容为特色,使测试结果更易于理解和分析。
2. 历史记录和趋势分析:Allure能够展示测试结果的历史数据,包括通过趋势图等方式展示测试执行的进展和变化。
3. 持续集成支持:Allure支持与CI/CD工具(例如Jenkins、TeamCity等)集成,以便在持续集成环境中生成并展示测试报告。
4. 多语言支持:Allure支持多种编程语言和测试框架,因此能够适用于各种不同的项目和场景。
5. 丰富的插件生态系统:Allure提供了灵活的插件系统,使得用户可以定制测试报告的展示方式,以满足特定的需求。
CANoe
CANoe是由德国Vector Informatik开发的一款专业的汽车总线网络分析工具,主要用于开发、测试和诊断汽车网络通信系统。CANoe支持多种汽车通信协议,例如CAN,LIN,FlexRay,以太网等,可以帮助工程师进行全面的测试、仿真和分析。
CANoe的主要特点包括:
1. 强大的功能:CANoe提供了丰富的功能模块,包括网络管理、通信分析、仿真环境等,能够满足各种测试和分析需求。
2. 灵活的配置:CANoe支持用户自定义配置测试环境和测试用例,使得测试流程更加灵活和高效。
3. 实时监测:CANoe能够实时监测汽车网络的通信数据,帮助用户及时发现问题和进行故障诊断。
4. 自动化测试:CANoe支持自动化测试脚本,可以进行自动化测试执行,提高测试效率。
5. 用户友好的界面:CANoe具有直观友好的用户界面,使得用户能够快速上手并进行各种操作。
三、软件、python库安装
CANoe安装
网上有很多教程,这里就不过多介绍了
python安装
网上也有教程
需要注意:要过安全认证就需要确认安全算法dll是32位的还是64位的,如果dll是32位的就安装32位的python,如果dll是64位的就安装64位的python
pytest安装
pip install pytest
allure安装
安装allure前确认电脑安装了jdk1.8+
1.下载
allure官网下载地址:https://github.com/allure-framework/allure2/releases
下载完后解压到任意路径即可(最好英文路径吧)
进入..\allure-2.29.0\bin,双击allure.bat运行
2、环境配置
计算机->属性->高级系统设置->环境变量->系统变量->Path->编辑
将解压的allure路径到bin文件夹的路径复制后添加到里面
3、验证是否配置成功
打开终端,输入:allure
显示上方图片内容即为成功
4、安装allure-pytest
在终端或pycharm的命令行中输入:pip install allure-pytest
openpyxl安装
在终端或pycharm的命令行中输入:pip install openpyxl
后面需要操作excel
前期准备工作完毕,下一篇主要是代码实现