• 工作总结
  • 工作计划
  • 心得体会
  • 领导讲话
  • 发言稿
  • 演讲稿
  • 述职报告
  • 入党申请
  • 党建材料
  • 党课下载
  • 脱贫攻坚
  • 对照材料
  • 主题教育
  • 事迹材料
  • 谈话记录
  • 扫黑除恶
  • 实施方案
  • 自查整改
  • 调查报告
  • 公文范文
  • 思想汇报
  • 当前位置: 雅意学习网 > 文档大全 > 公文范文 > 正文

    基于TCP与UDP通讯的设备自动化接口测试方法

    时间:2023-05-27 15:50:19 来源:雅意学习网 本文已影响 雅意学习网手机站

    左登超

    (中车青岛四方车辆研究所有限公司,山东 青岛 266031)

    TCP与UDP以太网通讯在各行各业应用十分广泛。TCP与UDP的通讯种类多且配置灵活,在不同的应用场景下,以太网通讯控制设备的通讯方式不尽相同[1]。为了确保各类以太网控制设备在运行过程中的稳定性,需要在产品投入运行前进行接口测试工作[2]。

    针对以太网控制设备的接口测试方法较少,传统的测试方式是将PC机与以太网控制设备相连,利用网络调试工具,向被测设备发送原始数据指令,观察设备的动作是否与预期一致;
    或者抓取被测设备发出的数据,人工进行数据分析,判断设备的工作情况[3];
    另一种测试方式是针对不同的设备需求,编写设备测试软件,由测试人员进行手动点击软件相关功能按键进行指令发送,观察设备的动作或者设备回复数据,判断是否达到预期效果[4]。

    传统的测试方法完全依赖于人工手动测试,通过组合原始数据指令进行测试并观察结果,效率非常低,且易出错;
    如果涉及到的以太网通讯种类较多,数据量较大时,使用网络调试工具则不能满足测试的需求[5];
    开发测试软件,需要按照特定被测设备进行开发;
    由于软件是新开发的,没有经过实践,软件本身可能存在缺陷,需要经过一段时间的调试才能投入使用,使用过程中也不能确保其功能完全正确,造成测试工作停滞,转而解决调试软件本身的问题[6]。在软件的修改过程中,为了不引起新的错误,测试人员需要进行大量重复测试,而手动测试回归性差,无法适应软件修改需求,导致软件可能存在大量缺陷[7]。借助基于TCP与UDP通讯的设备自动化接口测试方法,根据用户测试指令自动完成以TCP与UDP为通讯方式的控制设备的接口测试,为设备的稳定运行提供保障。

    基于TCP与UDP通讯的设备自动化接口测试装置如图1所示。装置包含电源板卡、CPU板卡、网口扩展板卡。其中网口扩展板卡有两个M12-4芯以太网口,通过背板连接至CPU,为CPU提供扩展网口;
    CPU板卡有1个M12-4芯以太网口,系统采用X86架构,Linux操作系统。该设备包含两路测试通道,分别提供3个以太网口进行测试,每个网口IP地址可配置。

    图1 自动化接口测试装置

    TCP与UDP接口测试装置中运行软件,解析用户定义的通讯链路信息,指导装置与被测设备进行通讯链路的建立;
    解析用户定义的设备通讯协议信息以及数据收发关系信息,按照被测设备协议规定的数据格式,自动进行数据收发,与被测设备进行数据通讯;
    与工具软件建立通讯,接收用户录入的接口测试指令,执行接口测试。

    使用自动化接口测试装置,可以对任意基于TCP与UDP通讯的以太网控制设备进行接口测试工作。TCP可以使用服务器或者客户端,支持一对一通讯、一对多通讯、多对一通讯、多对多通讯。UDP可以使用单播或者组播,单播支持一对一通讯、组播支持加入一个或者多个组播组通讯[8]。

    2.1 TCP服务器接口设计

    装置网口开启一个TCP服务器,接收被测设备一个或者多个TCP客户端的连接,即TCP服务器一对一或一对多通讯[9]。接口示意图如图2所示,每路TCP客户端连接可以在相同或者不同的被测设备上,此处仅指出每路TCP协议链路连接,同下。

    图2 TCP服务器一对一、一对多通讯接口

    装置网口开启多个TCP服务器,每个TCP服务器接受一个或者多个TCP客户端的连接,即TCP服务器多对一或多对多通讯[10]。接口示意图如图3所示。

    图3 TCP服务器多对一、多对多通讯接口

    2.2 TCP客户端接口设计

    装置网口开启一个TCP客户端,连接被测设备一个或者多个TCP服务器,即TCP客户端一对一或一对多通讯[11]。接口示意图如图4所示。

    图4 TCP客户端一对一、一对多通讯接口

    装置网口开启多个TCP客户端,连接被测设备一个或者多个TCP服务器,即TCP客户端多对一或多对多通讯[12]。接口示意图如图5所示。

    图5 TCP客户端多对一、多对多通讯接口

    2.3 UDP单播接口设计

    装置网口开启一个或者多个UDP单播,与被测设备进行一对一通讯[13];
    接口示意图如图6所示。

    图6 UDP单播通讯

    2.4 UDP组播接口设计

    装置网口加入一个或者多个组播组,与被测设备进行通讯[14];
    接口示意图如图7所示。

    图7 UDP组播通讯

    2.5 TCP与UDP组合接口设计

    装置每路网口均支持TCP服务器、TCP客户端、UDP单播、UDP组播的任意组合,组合接口的设计可以参考2.1~2.4。

    1)TCP服务器、TCP客户端组合;

    2)TCP服务器、UDP单播组合;

    3)TCP服务器、UDP组播组合;

    4)TCP客户端、UDP单播组合;

    5)TCP客户端、UDP组播组合;

    6)UDP单播、UDP组播组合;

    7)TCP服务器、TCP客户端、UDP单播组合;

    8)TCP服务器、TCP客户端、UDP组播组合;

    9)TCP服务器、UDP单播、UDP组播组合;

    10)TCP客户端、UDP单播、UDP组播组合;

    11)TCP服务器、TCP客户端、UDP单播、UDP组播组合。

    自动化接口测试装置内运行程序,与被测设备进行通讯链路的建立与管理、按照被测设备的通信协议进行数据收发、接收工具软件的测试指令,自动化执行接口测试工作。工作原理如图8所示。

    图8 接口自动化测试流程图

    1)软件运行后,读取通讯配置文件,获取与被测设备的通讯方式,指导装置与被测设备建立通讯链接。自动化接口测试装置使用的通讯配置文件各字段如表1所示。

    2)读取数据配置文件。装置与被测设备链路下的通讯数据由数据配置文件定义,当软件读取到数据标识信息后,在内存中分配该数据的存储信息,一方面自动化接口测试装置根据此内存,进行数据的发送或者存储接收到被测设备发送的对应数据;
    另一方面接收工具软件发送的测试指令,根据指令中携带的链路名称、数据标识、字节偏移、位偏移信息,进行内存数据的设置与获取。数据配置文件各字段如表2所示。

    表1 通讯配置文件字段含义

    3)读取数据收发关系配置文件。指导自动化接口测试装置如何发送与被测设备的通讯数据,收发关系配置文件各字段如表3所示;

    4)根据通讯配置文件信息,建立与被测设备的通讯并管理通讯过程;

    5)针对每一个通讯链路,开启数据收发线程,根据数据配置文件以及收发关系配置文件,开始与被测设备进行数据通讯;

    6)初始化与工具软件的TCP通讯,用以接收工具软件发送的测试指令;
    自动化接口测试装置支持的测试指令种类如表4所示;

    设置指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移信息发送给自动化接口测试装置,装置接收到该信息后,将对应内存中的数据进行更新,由后台线程自动获取内存数据进行发送,强制指令只能设置装置发送方向的数据[15];

    表2 数据配置文件字段含义

    表3 收发关系配置文件字段含义

    延时指令:工具软件将具体的延时时间发送给自动化接口测试装置,装置接收到该信息后,会延时相应的时间,再处理其他测试指令[16];

    心跳指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移、累加步长n、累加频率f信息发送给自动化接口测试装置,装置接收到该信息后,以累加频率f,将当前值累加n,向内存中的数据进行更新[17];

    表4 测试指令类型说明

    上升沿指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移、时间t信息发送给自动化接口测试装置,装置接收到该信息后,将对应内存中的数据先设置成0,保持时间t,然后设置为1,由后台线程自动获取内存数据进行发送;

    下升沿指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移、时间t信息发送给自动化接口测试装置,装置接收到该信息后,将对应内存中的数据先设置成1,保持时间t,然后设置为0,由后台线程自动获取内存数据进行发送[18];

    递增指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移、最小值、最大值、步长n、频率f信息发送给自动化接口测试装置,装置接收到该信息后,以频率f,将当前值从最小值开始累加,每次累加步长n,直至累加到最大值后保持,向内存中的数据进行更新,由后台线程自动获取内存数据进行发送;

    递减指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移、最小值、最大值、步长n、频率f信息发送给自动化接口测试装置,装置接收到该信息后,以频率f,将当前值从最大值开始递减,每次递减步长n,直至递减到最小值后保持,向内存中的数据进行更新,由后台线程自动获取内存数据进行发送[19];

    系统时间年指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移信息发送给自动化接口测试装置,装置接收到该信息后,从当前系统时间中获取年的数据,向内存中的数据进行更新,由后台线程自动获取内存数据进行发送;

    系统时间月指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移信息发送给自动化接口测试装置,装置接收到该信息后,从当前系统时间中获取月的数据,向内存中的数据进行更新,由后台线程自动获取内存数据进行发送;

    系统时间日指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移信息发送给自动化接口测试装置,装置接收到该信息后,从当前系统时间中获取日的数据,向内存中的数据进行更新,由后台线程自动获取内存数据进行发送;

    系统时间时指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移信息发送给自动化接口测试装置,装置接收到该信息后,每小时从当前系统时间中获取时的数据,向内存中的数据进行更新,由后台线程自动获取内存数据进行发送;

    系统时间分指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移信息发送给自动化接口测试装置,装置接收到该信息后,每分钟从当前系统时间中获取分的数据,向内存中的数据进行更新,由后台线程自动获取内存数据进行发送;

    系统时间秒指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移信息发送给自动化接口测试装置,装置接收到该信息后,每秒钟从当前系统时间中获取秒的数据,向内存中的数据进行更新,由后台线程自动获取内存数据进行发送[20];

    范围内指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移、极大值、极小值信息发送给自动化接口测试装置,装置接收到该信息后,取极大值与极小值范围内的随机数据,向对应内存中的数据进行更新,由后台线程自动获取内存数据进行发送;

    获取指令:工具软件将具体链路名称、数据标识、字节偏移、位偏移信息发送给自动化接口测试装置,装置接收到该信息后,从对应内存中取出一次实时数据,然后通过TCP通讯向工具软件发送结果;

    7)自动化接口测试装置收到测试指令后,根据指令中携带的链路名称、数据标识、字节偏移、位偏移信息,操作内存数据,从分配的内存中设置或者获取数据;
    当获取到数据后,向工具软件返回获取到的数据,工具软件根据此数据判断执行是否通过;

    4.1 自动化接口测试实验步骤

    由于自动化接口测试装置可以测试的情况比较多,以TCP服务器一对一通讯为例,即被测设备作为TCP客户端,装置作为TCP服务器,对被测设备进行接口测试,测试系统连接如图9所示。

    图9 测试系统连接

    测试前需要按照被测设备的要求修改装置的IP地址。通过修改脚本文件即可配置本装置的网口IP地址。IP地址脚本内如下:

    #eth1

    ifconfig eth1 down

    ifconfig eth1 172.30.131.60 netmask 255.255.255.0 up

    #eth2

    ifconfig eth2 down

    ifconfig eth2 172.30.131.61 netmask 255.255.255.0 up

    #eth3

    ifconfig eth3 down

    ifconfig eth3 172.30.131.62 netmask 255.255.255.0 up

    eth1、eth2、eth3分别分别对应设备上的三个网口;

    被测设备的TCP客户端信息:172.31.41.50,端口8001,与其通讯的TCP服务器信息:IP地址172.31.41.36,端口8000;
    由装置主动发送1001数据,然后被测设备回复1002数据。

    步骤1:通过交换机,将被测设备、工具软件以及设备进行组网连接;

    步骤2:按照设备IP地址修改方法,修改脚本文件eth1的IP地址:

    #eth1

    ifconfig eth1 down

    ifconfig eth1 172.31.41.36 netmask 255.255.255.0 up

    步骤3:编写通讯配置文件,如表5所示。

    表5 通讯配置文件内容

    此配置文件供装置使用,由于被测设备作为TCP客户端,需要使用装置模拟与被测设备通讯的TCP服务器;配置文件中,通讯类型填写TCP,通讯方式填写服务器,通讯本方信息填写与被测设备通讯的TCP服务器的地址端口信息,通讯对方信息填写被测设备的信息;

    步骤4:编写数据配置文件如表6所示,其中1001数据由接口测试装置主动发出,1002为装置接收被测设备返回的数据;
    该配置文件供装置和工具软件使用;

    表6 数据配置文件内容

    步骤5:编写数据收发关系配置文件,文件内容如表7所示。

    表7 收发关系配置文件内容

    此配置文件供自动化接口测试装置使用,内容描述了装置Ch-1通讯链路下,收取1002的数据,主动发送1001的数据。

    步骤6:将上述配置文件通过FTP工具导入设备,并重启接口测试装置;

    步骤7:在工具软件中编写测试指令,设置或者获取变量的数据,下发至接口测试装置;

    步骤8:工具软件根据设备返回的数据,判断测试是否通过。

    4.2 实验结果及分析

    在自动化执行完接口测试后,工具软件会将测试结果保存成表格的形式,结果如表8所示。

    表8 自动化接口测试结果记录

    保存的结果记录中,会记录工具软件每次执行的动作,收取自动化接口测试装置返回的变量名以及对应的实际数据,工具软件可以根据动作中的期望,自动判断测试的结果是否正确,并在测试结论中给出Pass或者Fail,方便测试人员查看测试结果。

    借助基于TCP与UDP通讯的设备自动化接口测试方法,能够进行TCP服务器、TCP客户端、UDP单播、UDP组播通以及四种通讯方式任意组合的接口测试;
    接口测试装置对外提供6个测试网口,IP地址可配置,可以通过数据配置文件以及数据收发关系配置文件,指导自动化接口测试装置的数据收发,使得测试不同被测设备时无需修改代码,提高了测试的灵活性、通用性以及效率,为设备的稳定运行提供保障。

    猜你喜欢 配置文件链路通讯 《茶叶通讯》简介茶叶通讯(2022年2期)2022-11-15基于Docker的实时数据处理系统配置文件管理软件的设计与实现电子技术与软件工程(2022年15期)2022-11-11《茶叶通讯》简介茶叶通讯(2022年3期)2022-11-11一种移动感知的混合FSO/RF 下行链路方案*火力与指挥控制(2022年8期)2022-09-16天空地一体化网络多中继链路自适应调度技术移动通信(2021年5期)2021-10-25从Windows 10中删除所有网络配置文件电脑爱好者(2021年11期)2021-06-07用软件处理Windows沙盒配置文件电脑爱好者(2020年9期)2020-07-05互不干涉混用Chromium Edge电脑爱好者(2019年20期)2019-12-10浅析民航VHF系统射频链路的调整电子制作(2019年20期)2019-12-04一种IS?IS网络中的链路异常检测方法、系统、装置、芯片科技创新导报(2016年27期)2017-03-14

    推荐访问:接口 自动化 通讯

    • 文档大全
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章