串口自动化测试

开关

介绍

串口(有协议)通信自动化测试主要用于各种串行数据通信(UART)测试,支持RS232/RS485/RS422等接口类型。串口通信自动化测试主要包含下面的功能:

1. 支持按照协议对数据帧自动构建、发送、接收、解析和检查

2. 支持按照协议对数据帧内的各字段进行检查和判定

3. 支持各种自定义协议,适用各种协议通信的测试。

4. 支持各种算法(如校验和等)

5. 支持自动生成测试数据


请点击左侧导航栏查看如何快速使用UTP测试系统进行串口通信自动化测试。

注册与登录

UTP平台在首次使用时需要申请账号,UTP账号通用于整个UTP平台(包括UTP浏览器客户端,各个测试机器人和Recorder),账号可以在UTP浏览器客户端申请。

1、注册平台

首先,通过网址https://utpcloud.macrosoftsys.com打开UTP公有云平台,点击界面右上角注册按钮进行注册:

注意:在此处注册的账号密码,不仅可以登录测试平台,也可以登录UTP平台的各种测试机器人工具。

2、登录平台

注册完成之后,可通过注册的账号密码进行登录:

然后点击“立即登录”,即可进入测试项目界面:

测试工具

下载串口通信测试工具

点击网站首页的“工具下载”:

弹出下载页面,选择需要下载的测试工具,提交下载。

下载完成,解压文件

解压完成,双击文件夹中“AntbotBoxRTC.exe”启动测试机器人

硬件模块连接

进行接口测试前,首先需要进行接口连接。在实际测试过程中,可以与设备接口进行连接通信。

也可以通过虚拟串口,模拟出两个可以相互通信的端口,进行通信。

本次演示中采用的就是通过虚拟端口进行串口通信,一端模拟发送端,一端模拟接收端。

运行串口测试机器人

双击“AntbotBoxRTC.exe”启动测试机器人,登录的用户名密码为网页端注册时的用户名密码::

点击“登录”按钮,出现测试机器人盒子界面,盒子中包含多种类型的测试机器人,此次测试需要用到的是“SerialPortAntbot”:

右击“SerialPortAntbot”,选择“添加Antbot”:

弹出“机器人基础设置页面”,根据实际修改测试机器人名称和描述信息,点击“确定”按钮:

然后,点击“确定”按钮,会弹出“更多设置”对话框,进行串口配置:

配置完成,点击“OK”按钮,测试机器人登录完成,登录完成的测试机器人会显示在测试机器人盒子界面:

示例中是通过虚拟端口进行通信,一端模拟发送端,一端模拟接收端。所以这里再次运行一个测试机器人。

创建测试项目

返回网站https://utpcloud.macrosoftsys.com,点击新建项目按钮创建测试项目:

弹出项目创建页面,进行项目信息填写:

测试项目创建完成,点击“进入项目”按钮,进入测试项目:

协议配置

宏控UTP测试平台支持用户自定义协议,下面是进行协议创建的操作视频链接:

点击此处可观看协议创建视频观看视频

为方便快速体验串口自动化测试,可以使用UTP系统提供的示例协议。

点击链接下载示例协议:示例串口协议

下载完成,解压,可以找到“串口通信协议.json”:

返回UTP云平台,点击“协议管理”:

在弹出的“协议管理”页面中点击“导入协议”按钮,打开“协议配置信息”页面,选择示例协议“串口通信协议.json”,点击“确定”按钮:

协议导入成功:

测试机器人配置

进入演示项目,点击“用例管理”页面右侧的“测试机器人管理”,进行测试机器人配置例”:

点击测试机器人管理中的“+”,新建测试机器人:

先选择“接口总线测试”,再选择“串口测试(结构化数据通信)”类型的测试机器人,填写测试机器人名称,进行协议文件选择,然后点击“确定”按钮,完成测试机器人的配置:

机器人配置完成:

同样的方式,再配置接收端测试机器人:

然后,再次点击“测试机器人管理”,收起该页面

测试用例编辑

此次演示的用例为:发送端向接收端发送消息,接收端接收消息并进行显示和检查。

1、用例创建

用例管理中可以进行测试用例的编辑,点击界面左侧“功能 1 测试”,进入该测试用例组,然后双击“测试用例 1-1”进入测试用例:

进入测试用例编辑界面:

点击“基本信息”,进行测试用例基本信息修改:

修改完成即可进行测试用例编辑,点击“编辑用例”:

2、插入发送端发送的消息

点击“命令”按钮,可以进行测试命令的选择插入:

这里我们选择发送端测试机器人,选择命令“发送消息(指定消息字段)”,然后点击“插入”按钮:

弹出消息帧结构设置界面,进行消息选择,然后进行消息字段选择和修改,修改完成,点击“提交”按钮,完成消息帧构建并插入命令:

命令插入后,可以将命令拖拽至合适编辑的位置,然后点击“展开”按钮,进行用例编辑,将发送端“关闭端口”命令模块移动到“发送消息”模块之下。

上面插入的测试命令对应的功能是:发送端打开端口,RS232/485通信中的发送端发出了一条消息,发送端关闭端口。

3、插入接收端命令

再次点击“命令”按钮,选择接收端机器人,然后选择命令“打开端口、关闭端口、显示所有接收及发送的消息”,然后点击“插入”按钮:

命令插入后,可以将命令拖拽至合适编辑的位置,然后点击“展开”按钮,进行用例编辑。

上面的测试命令对应的功能是:接收端和发送端都打开通信端口,然后发送端发送消息,发送端关闭端口,接收端显示接收到的消息,关闭接收端接口。

4、插入检查命令

点击“命令”按钮,选择接收端机器人,然后选择命令“检查最新接收的指定消息的字段值”,然后点击“插入”按钮。

弹出“消息帧结构设置”界面,然后进行消息的选择,并选择需要进行检查的字段,然后点击“提交”按钮:

命令插入后,可以将命令拖拽至合适编辑的位置,然后点击“展开”按钮,进行用例编辑。

右击检查命令,选择Duplicate进行命令复制:

然后进行期望值填写,发送端发送命令设置了此字段为300,这里进行检查,输入300和-500,检查结果应为一个正确,一个错误:

上面插入的测试命令对应的功能是:接收端接收发送端发来的消息,然后检查消息字段的内容。


然后点击界面右上方的“返回用例管理界面”,离开用例编辑页面:

测试执行

1、执行操作

点击“测试管理”,进入测试管理页面,可进行正式的测试执行。点击新建,编辑测试集:

出现编辑测试集界面:

填写测试名称、描述:

将候选测试用例中的用例拖拽到已选框中:

然后点击确定按钮,测试集创建完成:

点击“启动测试集”按钮,可以进行正式的测试执行:

在弹出的“执行实例配置”对话框中点击“确定”按钮:

将备选测试机器人拖拽至红框中,然后点击“开始执行”:

执行结果如下,会显示每一条测试命令的执行时间和执行结果:

2、执行结果解读1

点击步骤5中的“查看”,可以查看接收到的消息:

点击,可以进行字段信息查看,可以查看消息的原始帧,以及消息解析后的字段信息,并查看消息字段与原始帧的对应关系:

3、执行结果解读2

两条检查命令执行完成,实际结果与预期结果一致时,命令执行成功。检查结果与预期结果不一致时,命令执行失败,并告知失败原因,用于问题确认。

更多信息

除了上面演示到的命令,串口通信测试还支持类型的命令:发送命令(直接发送、批量发送、周期发送、定时发送等等)、检查命令(消息字段检查、字段原始帧检查、范围检查等等)、自动回复命令(当收到某条满足条件的消息时,自动给出回复)。可以覆盖不同的测试场景,想要了解更多内容,可以点击此链接查看结构化串口帮助文档