CN107294807A - 协议互操作性测试方法及装置 - Google Patents

协议互操作性测试方法及装置 Download PDF

Info

Publication number
CN107294807A
CN107294807A CN201710537283.7A CN201710537283A CN107294807A CN 107294807 A CN107294807 A CN 107294807A CN 201710537283 A CN201710537283 A CN 201710537283A CN 107294807 A CN107294807 A CN 107294807A
Authority
CN
China
Prior art keywords
protocol
test
interoperability
result
tree
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710537283.7A
Other languages
English (en)
Other versions
CN107294807B (zh
Inventor
李文杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN201710537283.7A priority Critical patent/CN107294807B/zh
Publication of CN107294807A publication Critical patent/CN107294807A/zh
Application granted granted Critical
Publication of CN107294807B publication Critical patent/CN107294807B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/02Protocol performance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供一种协议互操作性测试方法及装置,该方法包括:生成并执行测试序列;监听测试序列,并采集至少一个被测实现的协议数据;解析协议数据,并生成测试结果;将测试结果与预期结果进行对比,并记录对比结果;根据对比结果生成协议互操作性测试报告。本发明提供的协议互操作性测试方法及装置的技术方案,能够实现协议互操作性测试序列生成、协议数据解析、测试结果分析的自动化,从而可以提高测试及分析效率,而且能够应用于大规模产品的互操作验证。

Description

协议互操作性测试方法及装置
技术领域
本发明涉及通信技术领域,具体地,涉及一种协议互操作性测试方法及装置。
背景技术
随着通信技术的飞速发展,通信网络规模越来越大,包含的设备也越来越多、越来越复杂,各种软硬件层出不穷,为了让不同生产厂家的产品互连起来可以正常工作,就需要进行产品间的互通测试。此时,通信协议就是互连互通的关键。目前主要有两种协议测试技术:协议互操作性测试和协议一致性测试。虽然协议一致性测试是保证互操作性的一个必要的步骤,但是由于协议描述本身的模糊、一致性测试的不彻底、厂商对协议实现的扩充等原因的存在,通过协议一致性测试的协议实现体不一定能正确互操作。
协议互操作性测试主要是为检验两个或多个协议实现是否可以进行正常交互提供期望的服务。通常采用已通过权威操作性测试的标准实现与被测实现进行正确交互,从而验证被测实现的可靠性和稳定性。
目前的协议互操作性测试的研究工作尽管已经非常深入,但还只是停留在理论上,无法在实际测试中起到指导作用。在实际的产品协议开发及后续的测试中,一般在本地开发测试环境通过串口工具连接硬件产品,并通过抓包工具做进一步的人工分析。该方法测试效率比较低,人工操作工作量大,不适用于远程、大规模地产品互操作验证。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一,提出了一种协议互操作性测试方法及装置,其能够实现协议互操作性测试序列生成、协议数据解析、测试结果分析的自动化,从而可以提高测试及分析效率,而且能够应用于大规模产品的互操作验证。
为实现本发明的目的而提供一种协议互操作性测试方法,包括:
生成并执行测试序列;
监听所述测试序列,并采集至少一个被测实现的协议数据;
解析所述协议数据,并生成测试结果;
将所述测试结果与预期结果进行对比,并记录对比结果;
根据所述对比结果生成协议互操作性测试报告。
优选的,所述生成并执行测试序列包括:
配置测试协议、测试场景和测试执行步骤;
在协议指令信息库中检索与所述测试执行步骤对应的协议指令;
解析所述协议指令;
根据所述协议指令生成测试序列;
按所述测试场景和所述测试执行步骤执行所述测试序列。
优选的,所述测试序列包括引导部分、执行部分和测试部分。
优选的,所述协议数据包括测试序列、所述被测实现的接收数据和发送数据。
优选的,所述解析所述协议数据,并生成测试结果包括:
应用模式匹配方法对所述协议数据进行匹配,并根据匹配结果判断所述协议数据的协议类型;
针对所述协议类型解析所述协议数据,并生成测试结果;
为所述测试结果建立协议树;所述协议树的父节点标识所述协议类型,所述协议树的子节点标识协议字段及字段值,从而解析获得与所述测试执行步骤对应的所述被测实现的所有输出所述协议数据的帧格式。
优选的,所述将所述测试结果与预期结果进行对比,并记录对比结果包括:
预先存储预期结果;所述预期结果为与所述测试执行步骤对应的标准实现返回的协议数据的帧格式;该帧格式通过建立协议树,并解析标识获得;
定位所述测试协议的协议树节点,并对比所述测试结构的协议树和所述预期结果的协议树的子节点标识协议字段及字段值,并记录对比结果。
优选的,所述根据所述对比结果生成协议互操作性测试报告包括:
设置对比结果过滤规则,以过滤与所述被测实现的唯一性标识相关的比对差异字段,并生成协议互操作性测试报告。
作为另一个技术方案,本发明提供一种协议互操作性测试装置,其包括:
序列生成单元,用于生成并执行测试序列;
协议数据采集单元,用于监听所述测试序列,并采集至少一个被测实现的协议数据;
协议数据解析单元,用于解析所述协议数据,并生成测试结果;
对比单元,用于将所述测试结果与预期结果进行对比,并记录对比结果;
测试结果报告单元,用于根据所述对比结果生成协议互操作性测试报告。
优选的所述序列生成单元包括:
配置模块,用于配置测试协议、测试场景和测试执行步骤;
检索模块,用于在协议指令信息库中检索与所述测试执行步骤对应的协议指令;
解析模块,用于解析所述协议指令;
生成模块,用于根据所述协议指令生成测试序列;
执行模块,用于按所述测试场景和所述测试执行步骤执行所述测试序列。
优选的,所述协议数据采集单元为一个或多个,且多个所述协议数据采集单元一一对应地采集多个被测实现的协议数据。
优选的,所述协议数据解析单元用于:
应用模式匹配方法对所述协议数据进行匹配,并根据匹配结果判断所述协议数据的协议类型;
针对所述协议类型解析所述协议数据,并生成测试结果;
为所述测试结果建立协议树;所述协议树的父节点标识所述协议类型,所述协议树的子节点标识协议字段及字段值,从而解析获得与所述测试执行步骤对应的所述被测实现的所有输出所述协议数据的帧格式。
优选的,所述对比单元包括:
存储模块,用于预先存储预期结果;所述预期结果为与所述测试执行步骤对应的标准实现返回的协议数据的帧格式;该帧格式通过建立协议树,并解析标识获得;
对比模块,用于定位所述测试协议的协议树节点,并对比所述测试结构的协议树和所述预期结果的协议树的子节点标识协议字段及字段值,并记录对比结果。
本发明具有以下有益效果:
本发明提供的协议互操作性测试方法及装置的技术方案中,该方法包括:生成并执行测试序列;监听所述测试序列,并采集至少一个被测实现的协议数据;解析协议数据,并生成测试结果;将测试结果与预期结果进行对比,并记录对比结果;根据对比结果生成协议互操作性测试报告。由此,能够实现协议互操作性测试序列生成、协议数据解析、测试结果分析的自动化,从而可以提高测试及分析效率,而且能够应用于大规模产品的互操作验证。
附图说明
图1为本发明实施例提供的协议互操作性测试方法的流程框图;
图2为图1中步骤S1的流程框图;
图3为图1中步骤S3的流程框图;
图4为图1中步骤S4的流程框图;
图5为本发明第一实施例提供的协议互操作性测试装置的原理框图;
图6为本发明第二实施例提供的协议互操作性测试装置的原理框图。
具体实施方式
为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图来对本发明提供的协议互操作性测试方法及装置进行详细描述。
请参阅图1,本发明实施例提供的协议互操作性测试方法,其包括:
S1,生成并执行测试序列;
S2,监听该测试序列,并采集至少一个被测实现的协议数据;
S3,解析该协议数据,并生成测试结果;
S4,将该测试结果与预期结果进行对比,并记录对比结果;
S5,根据该对比结果生成协议互操作性测试报告。
本发明实施例提供的协议互操作性测试方法,其通过上述步骤能够实现协议互操作性测试序列生成、协议数据解析、测试结果分析的自动化,从而可以提高测试及分析效率,而且能够应用于大规模产品的互操作验证。
上述协议数据包括测试序列、被测实现的接收数据和发送数据。
请参阅图2,上述步骤S1包括:
S11,配置测试协议、测试场景和测试执行步骤;
S12,在协议指令信息库中检索与该测试执行步骤对应的协议指令;
S13,解析该协议指令;
S14,根据该协议指令生成测试序列;
S15,按上述测试场景和测试执行步骤执行测试序列。
在上述步骤S14中,测试序列包括引导部分、执行部分和测试部分。上述测试执行步骤决定测试序列的执行顺序,一个测试执行步骤可能执行一个或多个测试序列。
请参阅图3,上述步骤S3包括:
S31,应用模式匹配方法对上述协议数据进行匹配,并根据匹配结果判断协议数据的协议类型;
S32,针对该协议类型解析协议数据,并生成测试结果;
S33,为测试结果建立协议树;该协议树的父节点标识协议类型,协议树的子节点标识协议字段及字段值,从而解析获得与上述测试执行步骤对应的被测实现的所有输出协议数据的帧格式。
请参阅图4,上述步骤S4包括:
S41,预先存储预期结果;该预期结果为与测试执行步骤对应的标准实现返回的协议数据的帧格式;该帧格式通过建立协议树,并解析标识获得,即建立与上述测试结果的协议树同样格式的协议树。
S42,定位测试协议的协议树节点,并对比测试结果的协议树和预期结果的协议树的子节点标识协议字段及字段值,并记录对比结果。
上述对比过程是对比测试结果的协议树和预期结果的协议树是否存在差异字段。
上述步骤S5包括:设置对比结果过滤规则,以过滤与被测实现的唯一性标识相关的比对差异字段,并生成协议互操作性测试报告。
上述与被测实现的唯一性标识相关的比对差异字段是由于设备标识或网络标识等的不同产生的差异,因此,通过设置上述过滤规则,过滤与被测实现的唯一性标识相关的比对差异字段,可以生成更精准的测试报告。
作为另一个技术方案,请参阅图5,本发明第一实施例还提供一种协议互操作性测试装置,其特征在于,包括:
序列生成单元1,用于生成并执行测试序列;
协议数据采集单元2,用于监听该测试序列,并采集至少一个被测实现的协议数据;
协议数据解析单元3,用于解析该协议数据,并生成测试结果;
对比单元4,用于将该测试结果与预期结果进行对比,并记录对比结果;
测试结果报告单元5,用于根据该对比结果生成协议互操作性测试报告。
本发明实施例提供的协议互操作性测试装置,其借助上述各个单元能够实现协议互操作性测试序列生成、协议数据解析、测试结果分析的自动化,从而可以提高测试及分析效率,而且能够应用于大规模产品的互操作验证。
在实际应用中,协议数据采集单元3可以为一个或多个,且对于多个被测实现,多个协议数据采集单元3一一对应地采集多个被测实现的协议数据。
请参阅图6,在上述第一实施例的基础上,本发明第二实施例提供的协议互操作性测试装置,其序列生成单元1进一步包括:
配置模块11,用于配置测试协议、测试场景和测试执行步骤;
检索模块12,用于在协议指令信息库6中检索与上述测试执行步骤对应的协议指令;
解析模块13,用于解析该协议指令;
生成模块14,用于根据该协议指令生成测试序列;
执行模块15,用于按测试场景和测试执行步骤执行测试序列。
协议数据解析单元3具体用于:应用模式匹配方法对协议数据进行匹配,并根据匹配结果判断该协议数据的协议类型;调用与该协议类型对应的解析模块13逐级解析协议数据,并生成测试结果。然后,为该测试结果建立协议树;该协议树的父节点标识协议类型,协议树的子节点标识协议字段及字段值,从而解析获得与测试执行步骤对应的被测实现的所有输出协议数据的帧格式。
对比单元4包括:
存储模块41,用于预先存储预期结果;该预期结果为与测试执行步骤对应的标准实现返回的协议数据的帧格式;该帧格式通过建立协议树,并解析标识获得,即建立与上述测试结果的协议树同样格式的协议树。
对比模块42,用于定位测试协议的协议树节点,并对比测试结构的协议树和预期结果构的协议树的子节点标识协议字段及字段值,并记录对比结果。
测试结果报告单元5用于设置对比结果过滤规则,以过滤与被测实现的唯一性标识相关的比对差异字段,并生成协议互操作性测试报告。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。

Claims (12)

1.一种协议互操作性测试方法,包括:
生成并执行测试序列;
监听所述测试序列,并采集至少一个被测实现的协议数据;
解析所述协议数据,并生成测试结果;
将所述测试结果与预期结果进行对比,并记录对比结果;
根据所述对比结果生成协议互操作性测试报告。
2.根据权利要求1所述的协议互操作性测试方法,其特征在于,所述生成并执行测试序列包括:
配置测试协议、测试场景和测试执行步骤;
在协议指令信息库中检索与所述测试执行步骤对应的协议指令;
解析所述协议指令;
根据所述协议指令生成测试序列;
按所述测试场景和所述测试执行步骤执行所述测试序列。
3.根据权利要求2所述的协议互操作性测试方法,其特征在于,所述测试序列包括引导部分、执行部分和测试部分。
4.根据权利要求1所述的协议互操作性测试方法,其特征在于,所述协议数据包括测试序列、所述被测实现的接收数据和发送数据。
5.根据权利要求2所述的协议互操作性测试方法,其特征在于,所述解析所述协议数据,并生成测试结果包括:
应用模式匹配方法对所述协议数据进行匹配,并根据匹配结果判断所述协议数据的协议类型;
针对所述协议类型解析所述协议数据,并生成测试结果;
为所述测试结果建立协议树;所述协议树的父节点标识所述协议类型,所述协议树的子节点标识协议字段及字段值,从而解析获得与所述测试执行步骤对应的所述被测实现的所有输出所述协议数据的帧格式。
6.根据权利要求5所述的协议互操作性测试方法,其特征在于,所述将所述测试结果与预期结果进行对比,并记录对比结果包括:
预先存储预期结果;所述预期结果为与所述测试执行步骤对应的标准实现返回的协议数据的帧格式;该帧格式通过建立协议树,并解析标识获得;
定位所述测试协议的协议树节点,并对比所述测试结果的协议树和所述预期结果的协议树的子节点标识协议字段及字段值,并记录对比结果。
7.根据权利要求6所述的协议互操作性测试方法,其特征在于,所述根据所述对比结果生成协议互操作性测试报告包括:
设置对比结果过滤规则,以过滤与所述被测实现的唯一性标识相关的比对差异字段,并生成协议互操作性测试报告。
8.一种协议互操作性测试装置,其特征在于,包括:
序列生成单元,用于生成并执行测试序列;
协议数据采集单元,用于监听所述测试序列,并采集至少一个被测实现的协议数据;
协议数据解析单元,用于解析所述协议数据,并生成测试结果;
对比单元,用于将所述测试结果与预期结果进行对比,并记录对比结果;
测试结果报告单元,用于根据所述对比结果生成协议互操作性测试报告。
9.根据权利要求8所述的协议互操作性测试装置,其特征在于,所述序列生成单元包括:
配置模块,用于配置测试协议、测试场景和测试执行步骤;
检索模块,用于在协议指令信息库中检索与所述测试执行步骤对应的协议指令;
解析模块,用于解析所述协议指令;
生成模块,用于根据所述协议指令生成测试序列;
执行模块,用于按所述测试场景和所述测试执行步骤执行所述测试序列。
10.根据权利要求8所述的协议互操作性测试装置,其特征在于,所述协议数据采集单元为一个或多个,且多个所述协议数据采集单元一一对应地采集多个被测实现的协议数据。
11.根据权利要求9所述的协议互操作性测试装置,其特征在于,所述协议数据解析单元用于:
应用模式匹配方法对所述协议数据进行匹配,并根据匹配结果判断所述协议数据的协议类型;
针对所述协议类型解析所述协议数据,并生成测试结果;
为所述测试结果建立协议树;所述协议树的父节点标识所述协议类型,所述协议树的子节点标识协议字段及字段值,从而解析获得与所述测试执行步骤对应的所述被测实现的所有输出所述协议数据的帧格式。
12.根据权利要求11所述的协议互操作性测试装置,其特征在于,所述对比单元包括:
存储模块,用于预先存储预期结果;所述预期结果为与所述测试执行步骤对应的标准实现返回的协议数据的帧格式;该帧格式通过建立协议树,并解析标识获得;
对比模块,用于定位所述测试协议的协议树节点,并对比所述测试结构的协议树和所述预期结果的协议树的子节点标识协议字段及字段值,并记录对比结果。
CN201710537283.7A 2017-07-04 2017-07-04 协议互操作性测试方法及装置 Active CN107294807B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710537283.7A CN107294807B (zh) 2017-07-04 2017-07-04 协议互操作性测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710537283.7A CN107294807B (zh) 2017-07-04 2017-07-04 协议互操作性测试方法及装置

Publications (2)

Publication Number Publication Date
CN107294807A true CN107294807A (zh) 2017-10-24
CN107294807B CN107294807B (zh) 2020-02-11

Family

ID=60098680

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710537283.7A Active CN107294807B (zh) 2017-07-04 2017-07-04 协议互操作性测试方法及装置

Country Status (1)

Country Link
CN (1) CN107294807B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102148729A (zh) * 2011-05-20 2011-08-10 烽火通信科技股份有限公司 一种无源光网络设备私有snmp管理指令的自动测试方法
US20120246674A1 (en) * 2011-03-23 2012-09-27 Cable Television Laboratories, Inc. Data driven test fixture for systems of web services
CN103957085A (zh) * 2014-05-21 2014-07-30 西北大学 一种基于网络编码的无线网状网络介质访问控制方法
CN105373469A (zh) * 2014-08-25 2016-03-02 广东金赋信息科技有限公司 一种基于接口的软件自动化测试方法
CN105634838A (zh) * 2014-10-28 2016-06-01 中兴通讯股份有限公司 用于协议栈表管理的测试方法、装置及系统
CN106789426A (zh) * 2016-12-22 2017-05-31 福建瑞之付微电子有限公司 一种针对tcp/ip协议栈的通用测试方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120246674A1 (en) * 2011-03-23 2012-09-27 Cable Television Laboratories, Inc. Data driven test fixture for systems of web services
CN102148729A (zh) * 2011-05-20 2011-08-10 烽火通信科技股份有限公司 一种无源光网络设备私有snmp管理指令的自动测试方法
CN103957085A (zh) * 2014-05-21 2014-07-30 西北大学 一种基于网络编码的无线网状网络介质访问控制方法
CN105373469A (zh) * 2014-08-25 2016-03-02 广东金赋信息科技有限公司 一种基于接口的软件自动化测试方法
CN105634838A (zh) * 2014-10-28 2016-06-01 中兴通讯股份有限公司 用于协议栈表管理的测试方法、装置及系统
CN106789426A (zh) * 2016-12-22 2017-05-31 福建瑞之付微电子有限公司 一种针对tcp/ip协议栈的通用测试方法

Also Published As

Publication number Publication date
CN107294807B (zh) 2020-02-11

Similar Documents

Publication Publication Date Title
US9426284B2 (en) Methods, systems, and computer readable media for call flow analysis using comparison level indicators
Tappler et al. Model-based testing IoT communication via active automata learning
KR101908467B1 (ko) 가시화된 네트워크 운영 및 유지를 위한 방법 및 장치
CN106874187B (zh) 代码覆盖率收集方法和装置
CN110912776B (zh) 一种实体路由器管理协议的自动化模糊测试方法及装置
CN101902367A (zh) 一种产生测试用例的方法及装置
CN104268079B (zh) 一种pos应用程序测试的方法及系统
CN105450476B (zh) 一种回归测试系统及测试方法
US9582391B2 (en) Logistics of stress testing
CN108092854B (zh) 基于iec61375协议的列车级以太网设备的测试方法及装置
CN102495802B (zh) 测试软件系统的方法和装置以及计算机系统
CN103746840B (zh) 网络设备软件版本信息自动核对方法和系统
Khan et al. SNTS: Sensor network troubleshooting suite
CN103530209B (zh) 一种密码键盘自动化测试方法
CN109542786A (zh) 可视化测试方法及装置
CN114816980A (zh) 一种嵌入式通信系统用自动测试装置及方法
Inçki et al. Runtime verification of IoT systems using complex event processing
CN107995066A (zh) 一种自动化测试网卡的方法和装置
KR20170133781A (ko) 가상 인프라 스트럭처의 시험 및 진단 장치 및 방법
CN111181796B (zh) 一种基于能动器的区块链共识协议测试方法及系统
CN107294807A (zh) 协议互操作性测试方法及装置
CN106354643A (zh) 一种交互式软件的偶然性错误测试方法及系统
CN106375154A (zh) 一种时延测量验证方法、装置及系统
CN110266554A (zh) 一种私有通信协议的测试方法
WO2013064063A1 (zh) 加密机模拟测试装置及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant