CN106708742B - 一种通讯规约模块测试架构的自动化测试方法及装置 - Google Patents
一种通讯规约模块测试架构的自动化测试方法及装置 Download PDFInfo
- Publication number
- CN106708742B CN106708742B CN201710090636.3A CN201710090636A CN106708742B CN 106708742 B CN106708742 B CN 106708742B CN 201710090636 A CN201710090636 A CN 201710090636A CN 106708742 B CN106708742 B CN 106708742B
- Authority
- CN
- China
- Prior art keywords
- module
- protocol
- test
- data
- protocol module
- 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.)
- Active
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 69
- 238000004891 communication Methods 0.000 title claims abstract description 20
- 238000004088 simulation Methods 0.000 claims description 21
- 238000010998 test method Methods 0.000 claims 1
- 238000000034 method Methods 0.000 abstract description 9
- 238000011161 development Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012797 qualification Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
Abstract
本发明提供了一种通讯规约模块测试架构的自动化测试方法及装置,该方法首先将变更规约源代码的待测规约模块进行编译,生成规约模块的可执行目标文件;然后根据生成规约模块的可执行目标文件,匹配对应规约;根据对应规约,将源数据组织成报文;将报文发送给规约模块,规约模块对报文进行解析,得到结果数据;最后将结果数据与源数据作比较,若一致,则判定测试合格;否则判定为测试不合格。本发明解决人工测试效率低的问题。
Description
技术领域
本发明属于软件测试技术领域,具体涉及一种通讯规约模块测试架构的自动化测试方法及装置。
背景技术
随着大数据系统的发展,种类繁多的终端接入成为了通讯的要素。在各种工程现场,通讯规约的开发成为了各个工程的前期实施要点,规约的维护也成为了实施工程后的日常维护。虽然各个厂家都遵循标准规约范本进行规约开发,但从现场工程实施的过程来看,各个厂家的规约模块开发又各有不同。都会在工程实施中,对规约进行修改,以适配其它厂家的规约模块,来完成数据的采集和处理。
众所周知,代码的临时修改,不进行完善的测试,无法达到程序的稳定。而工程现场,通讯的问题一直是众多工程实施中出现问题最大的部分,这和工程实施中的现场随意修改通讯规约代码,有很大的关联关系。
发明内容
本发明的目的是提供一种通讯规约模块测试架构的自动化测试方法及装置,以解决人工测试效率低的问题。
为解决上述技术问题,本发明的技术方案为:
本发明提供一种通讯规约模块测试架构的自动化测试方法,包括如下步骤:
1)将变更规约源代码的待测规约模块进行编译,生成规约模块的可执行目标文件;
2)根据生成规约模块的可执行目标文件,匹配对应规约;
3)根据对应规约,将源数据组织成报文;
4)将报文发送给规约模块,规约模块对报文进行解析,得到结果数据;
5)将结果数据与源数据作比较,若一致,则判定测试合格;否则判定为测试不合格。
进一步的,还包括将测试合格与否的结果以邮件形式发送给开发人员邮箱的步骤。
本发明还提供一种通讯规约模块测试架构的自动化测试装置,包括如下模块:
用于将变更规约源代码的待测规约模块进行编译,生成规约模块的可执行目标文件的模块;
用于根据生成规约模块的可执行目标文件,匹配对应规约的模块;
用于根据对应规约,将源数据组织成报文的模块;
用于将报文发送给规约模块,规约模块对报文进行解析,得到结果数据的模块;
用于将结果数据与源数据作比较的模块,若一致,则判定测试合格;否则判定为测试不合格。
进一步的,还包括用于将测试合格与否的结果以邮件形式发送给开发人员邮箱的模块。
本发明的有益效果是:本发明通过自动化测试,将变更后的规约源代码进行编译,生成可执行文件,并根据可执行文件自动匹配相应的模拟源规约仿真发生器和相应的规约模块,规约模块接收到报文信息后进行规约报文解析,然后将数据结果以数据点的方式写入结果数据库;数据对比模块对源数据库和结果数据库的数据进行比较和判断。本发明增加模拟规约仿真发生器的规约仿真模块来适应各种规约的测试,方便开发人员进行回归测试,解决了人工测试效率低的问题,同时也方便工程人员进行一致化测试,便于工程调试和系统维护。
附图说明
图1是本发明的通讯规约模块测试架构的自动化测试系统框图。
具体实施方式
下面结合附图,对本发明的具体实施方式作进一步的详细说明。
本发明的一种通讯规约模块测试架构的自动化测试方法的实施例:
增设一服务器作为规约程序版本库及测试运行环境,用以存储规约各版本的源代码及部署规约测试框架。如图1所示,服务器中设置有规约程序版本库、自动测试框架模块、测试结果生成模块和邮件自动发送模块。自动测试框架模块包括模拟数据发生器、源数据库、模拟规约仿真发生器、规约模块、结果数据库和数据对比模块。
规约程序版本库将变更后的规约源代码进行预处理,并生成规约模块的可执行目标文件,并传送至自动测试框架模块。
自动测试框架模块根据生成规约模块的可执行目标文件,匹配对应的模拟规约仿真发生器和规约模块。
模拟数据发生器负责模拟产生各种数据源的各种数据,并将仿真数据写入源数据库的相应数据表中,以形成源数据档案。
模拟规约仿真发生器从源数据库中获取其要发送的原始数据,根据对应规约,将源数据组织成报文信息。
规约模块将报文信息进行解析,得到结果数据,并存储在结果数据库里。
数据对比模块将结果数据与源数据作比较,若一致,则判定测试合格;否则判定为测试不合格。
整个测试过程如下:
当开发人员完成规约模块部分的程序修改后,向规约程序版本库提交最新的源代码。此提交动作会触发源代码下载及编译,编译产生最新版本的规约模块可执行程序。然后规约模块可执行程序下载到自动测试框架模块中,启动自动测试框架的自动测试脚本,自动测试脚本会根据规约类型调用相应的模拟规约仿真发生器进行规约仿真。
模拟数据仿真发生器模拟产生的数据存储在源数据库的相应表中,模拟规约仿真发生器从源数据库中提取出其要发送的源数据,然后根据规约,模拟产生基于规约的规约报文。
最新编译产生的规约模块将接收到的报文解析成数据点信息,并存储到结果数据库中,提供比对材料。
数据比对模块读取源数据库和结果数据库中的数据,如果数据点数值相同,则判断该种类型规约报文帧合格,否则不合格。
邮件自动发送模块将测试结果自动发送给开发人员,完成整个测试流程。
本发明还提供一种通讯规约模块测试架构的自动化测试装置,包括如下模块:用于将变更规约源代码的待测规约模块进行编译,生成规约模块的可执行目标文件的模块;用于根据生成规约模块的可执行目标文件,匹配对应规约的模块;用于根据对应规约,将源数据组织成报文的模块;用于将报文发送给规约模块,规约模块对报文进行解析,得到结果数据的模块;用于将结果数据与源数据作比较的模块,若一致,则判定测试合格,否则判定为测试不合格。
上述通讯规约模块测试架构的自动化测试装置,实际上是基于本发明方法流程的一种计算机解决方案,即一种软件构架,上述各种模块即为与方法流程相对应的各处理进程或程序。由于对上述方法的介绍已经足够清楚完整,故不再详细进行描述。
Claims (4)
1.一种通讯规约模块测试架构的自动化测试方法,其特征在于,包括如下步骤:
1)将变更规约的源代码进行编译,生成规约模块的可执行目标文件;
2)根据生成规约模块的可执行目标文件,匹配对应的模拟规约仿真发生器和规约模块;
3)模拟规约仿真发生器根据对应规约,将源数据组织成报文;
4)将报文发送给规约模块,规约模块对报文进行解析,得到结果数据;
5)将结果数据与源数据作比较,若一致,则判定测试合格;否则判定为测试不合格。
2.根据权利要求1所述的通讯规约模块测试架构的自动化测试方法,其特征在于,还包括将测试合格与否的结果以邮件形式发送给开发人员邮箱的步骤。
3.一种通讯规约模块测试架构的自动化测试装置,其特征在于,包括如下模块:
用于将变更规约的源代码进行编译,生成规约模块的可执行目标文件的模块;
用于根据生成规约模块的可执行目标文件,匹配对应的模拟规约仿真发生器和规约模块的模块;
用于根据对应规约,将源数据组织成报文的模拟规约仿真发生器;
用于将报文发送给规约模块,规约模块对报文进行解析,得到结果数据的模块;
用于将结果数据与源数据作比较的模块,若一致,则判定测试合格;否则判定为测试不合格。
4.根据权利要求3所述的通讯规约模块测试架构的自动化测试装置,其特征在于,还包括用于将测试合格与否的结果以邮件形式发送给开发人员邮箱的模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710090636.3A CN106708742B (zh) | 2017-02-20 | 2017-02-20 | 一种通讯规约模块测试架构的自动化测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710090636.3A CN106708742B (zh) | 2017-02-20 | 2017-02-20 | 一种通讯规约模块测试架构的自动化测试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106708742A CN106708742A (zh) | 2017-05-24 |
CN106708742B true CN106708742B (zh) | 2020-06-23 |
Family
ID=58917111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710090636.3A Active CN106708742B (zh) | 2017-02-20 | 2017-02-20 | 一种通讯规约模块测试架构的自动化测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106708742B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111031095B (zh) * | 2019-11-11 | 2023-05-30 | 南京理工大学 | 基于代数规约的Web服务测试执行方法 |
CN112311627B (zh) * | 2020-10-29 | 2022-09-09 | 许昌许继软件技术有限公司 | 一种基于xml格式的规约描述文件的电力规约通用测试方法及系统 |
CN113392016A (zh) * | 2021-06-25 | 2021-09-14 | 中债金科信息技术有限公司 | 对程序异常情况处理的规约生成方法、装置、设备及介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101432612A (zh) * | 2006-04-24 | 2009-05-13 | Abb研究有限公司 | 智能电子设备配置验证 |
CN102118282A (zh) * | 2011-03-30 | 2011-07-06 | 陕西电力科学研究院 | 通信协议一致性检测方法和系统 |
CN103746882A (zh) * | 2014-01-14 | 2014-04-23 | 国家电网公司 | 智能变电站站控层测试的方法 |
CN103744422A (zh) * | 2014-01-06 | 2014-04-23 | 国家电网公司 | 一种对基于iec61850标准的继电保护装置自动测试方法 |
CN103926917A (zh) * | 2014-04-25 | 2014-07-16 | 国家电网公司 | 一种变电站总控装置智能测试系统及其测试方法 |
CN104052633A (zh) * | 2014-05-29 | 2014-09-17 | 国家电网公司 | 智能站61850与远动104规约集成测试方法 |
CN104535861A (zh) * | 2014-12-23 | 2015-04-22 | 国网四川省电力公司阿坝供电公司 | 一种用于自动化继电保护测试仪的通用模板及其实例化的方法 |
CN105227402A (zh) * | 2015-09-29 | 2016-01-06 | 国网福建省电力有限公司 | 一种智能变电站多规约通信的集成一体化测试方法 |
-
2017
- 2017-02-20 CN CN201710090636.3A patent/CN106708742B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101432612A (zh) * | 2006-04-24 | 2009-05-13 | Abb研究有限公司 | 智能电子设备配置验证 |
CN102118282A (zh) * | 2011-03-30 | 2011-07-06 | 陕西电力科学研究院 | 通信协议一致性检测方法和系统 |
CN103744422A (zh) * | 2014-01-06 | 2014-04-23 | 国家电网公司 | 一种对基于iec61850标准的继电保护装置自动测试方法 |
CN103746882A (zh) * | 2014-01-14 | 2014-04-23 | 国家电网公司 | 智能变电站站控层测试的方法 |
CN103926917A (zh) * | 2014-04-25 | 2014-07-16 | 国家电网公司 | 一种变电站总控装置智能测试系统及其测试方法 |
CN104052633A (zh) * | 2014-05-29 | 2014-09-17 | 国家电网公司 | 智能站61850与远动104规约集成测试方法 |
CN104535861A (zh) * | 2014-12-23 | 2015-04-22 | 国网四川省电力公司阿坝供电公司 | 一种用于自动化继电保护测试仪的通用模板及其实例化的方法 |
CN105227402A (zh) * | 2015-09-29 | 2016-01-06 | 国网福建省电力有限公司 | 一种智能变电站多规约通信的集成一体化测试方法 |
Non-Patent Citations (2)
Title |
---|
"数字化电能计量装置通信规约测试方法";潘峰等;《广东电力》;20150930;第28卷(第9期);第119页到第122页 * |
"电能表与采集终端通信测试系统的设计";周孔均;《电测与仪表》;20061231;第43卷(第492期);第24页到第28页 * |
Also Published As
Publication number | Publication date |
---|---|
CN106708742A (zh) | 2017-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8214803B2 (en) | Program testing method and testing device | |
CN109634843B (zh) | 一种面向ai芯片平台的分布式自动化软件测试方法及平台 | |
CN106708742B (zh) | 一种通讯规约模块测试架构的自动化测试方法及装置 | |
CN109977670B (zh) | 基于插件加载的安卓应用安全监测方法、存储介质 | |
CN108874678B (zh) | 一种智能程序的自动测试方法及装置 | |
CN108829400B (zh) | 一种iOS无须反复编译的渠道打包方法 | |
CN102855175B (zh) | 自动化测试方法及装置 | |
CN106354629A (zh) | 一种基于多级服务器的iOS系统移动应用自动测试系统的架构方法 | |
CN110727575B (zh) | 一种信息处理方法、系统、装置、以及存储介质 | |
CN105468507A (zh) | 分支达标检测方法及装置 | |
Barbosa et al. | Verification and validation of (real time) COTS products using fault injection techniques | |
CN113254054A (zh) | 一种智能合约一站式开发系统及方法 | |
CN109901999B (zh) | 基于uvm的可编程逻辑的仿真方法和系统 | |
CN114661615B (zh) | 一种fpga软件测试方法和设备 | |
CN115934559A (zh) | 表单智能测试系统的测试方法 | |
CN116467188A (zh) | 一种多环境场景下的通用本地复现系统和方法 | |
CN111581081B (zh) | 一种自动化测试系统及方法 | |
CN112433947A (zh) | 一种基于网络数据的混沌工程方法及系统 | |
CN114385258A (zh) | 自动化测试方法、装置、电子设备及存储介质 | |
CN113342600A (zh) | 一种程序依赖插件的监测方法及装置 | |
CN111427795A (zh) | 代码测试控制方法与装置、存储介质、电子设备 | |
CN112527680B (zh) | 一种基于Fitnesse框架的项目API级全链路自动化测试方法及系统 | |
CN103414796A (zh) | 基于形式化描述的互联网通用地址的支撑平台 | |
CN111651364B (zh) | 并行开发下的sql检查方法及装置 | |
CN113204491A (zh) | 一种接口自动化测试用例生成方法与系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |