CN115396352A - Cms服务器端协议测试方法、系统、设备及存储介质 - Google Patents
Cms服务器端协议测试方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN115396352A CN115396352A CN202211058379.2A CN202211058379A CN115396352A CN 115396352 A CN115396352 A CN 115396352A CN 202211058379 A CN202211058379 A CN 202211058379A CN 115396352 A CN115396352 A CN 115396352A
- Authority
- CN
- China
- Prior art keywords
- test
- service
- data
- supported
- side protocol
- 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.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 403
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 238000000034 method Methods 0.000 claims abstract description 59
- 230000008569 process Effects 0.000 claims abstract description 33
- 238000004891 communication Methods 0.000 claims description 42
- 230000004044 response Effects 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 16
- 238000012544 monitoring process Methods 0.000 claims description 10
- 238000012937 correction Methods 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 6
- 230000009191 jumping Effects 0.000 claims description 6
- 238000003825 pressing Methods 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000011076 safety test Methods 0.000 description 2
- 241000272814 Anser sp. Species 0.000 description 1
- 102100030148 Integrator complex subunit 8 Human genes 0.000 description 1
- 101710092891 Integrator complex subunit 8 Proteins 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000010248 power generation Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000000547 structure data Methods 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
Abstract
一种CMS服务器端协议测试方法、系统、设备及存储介质,方法包括:被测设备测试数据设置;被测设备服务设置;对完成测试数据与服务设置的被测设备,自动分析选择需要执行的测试用例;根据选择的测试用例执行自动测试,记录测试过程,给出测试结论,找出测试问题;导出测试过程、测试结论和测试问题,生成测试报告。本发明能够达到减少测试人员干预、实现自动测试、提高工作效率的目的。通过预配置和动态方式提供必要的丰富多变的测试参数。测试用例覆盖的服务比较全面,并且能够根据配置实现测试的自动化。测试一致性好,记录信息丰富,可记录整个测试过程、输入输出数据、测试报文、测试结果等,自动化程度比较高,不需要测试人员介入。
Description
技术领域
本发明属于变电站二次系统通信测试技术领域,具体涉及一种CMS(变电站二次系统通信报文)服务器端协议测试方法、系统、设备及存储介质。
背景技术
电力工业包括发电、输电、变电、配电、用电等环节,不仅关系到国家经济安全,而且与人们的日常生活、社会稳定密切相关,而变电站是输电和配电的集结点,是电力工业的重要环节。变电站是电力系统中对电压和电流进行变换,接受电能并分配电能的场所,变电站内的电气设备分为一次设备和二次设备,一次设备指直接生产、输送、分配和使用电能的设备,二次设备是指对一次设备和系统的运行工况进行测量、监视、控制和保护的设备,主要包括继电保护装置、自动装置、测控装置、计量装置、自动化系统以及为二次设备提供电源的直流设备等。目前电力生产运行、经营管理所使用二次设备的芯片大量依赖进口,其中符合61850规范的变电站二次系统底层通信也依赖于国际上的MMS(制造报文规范)协议。
基于DL/T860的变电站二次系统通信报文(CMS)是自主可控的协议规范,主要用于变电站内的二次设备之间的通信。电力行业系列标准DL/T860主要包含DL/T860.3(电力自动化通信网络和系统第3部分:总体要求)、DL/T860.3(电力自动化通信网络和系统第4部分:系统和项目管理)、DL/T860.5(电力自动化通信网络和系统第5部分:功能的通信要求和装置模型)、DL/T860.6(电力自动化通信网络和系统第6部分:与智能电子设备有关的变电站内通信配置描述语言)、DL/T860.72(电力自动化通信网络和系统第7-2部分:基本信息和通信结构-抽象通信服务接口(ACSI))、DL/T860.73(电力自动化通信网络和系统第7-3部分:基本通信结构公用数据类)、DL/T860.74(电力自动化通信网络和系统第7-4部分:基本信息和通信结构-逻辑节点和数据对象类)、DL/T860.10(电力自动化通信网络和系统第10部分:一致性测试)等,其中变电站二次系统通信报文是基于DL/T860.72实现的通信机制。
变电站的二次设备种类繁多,包含保护、监测、测控、计量、录波、交换机、辅控等装置类型,不同厂家生产出的装置类型种类繁多,设备间通信必须基于相同的协议且实现的功能规范符合一致性要好,才能实现顺畅的互联互通。为保证协议一致性满足要求,必须进行专业集中测试。但是,由于厂家众多、装置类型众多,通信协议包含了57种通信服务,每个服务均需要多种的肯定、否定项测试用例进行测试,需要记录每个测试测试用例的测试步骤、输入输出、测试问题、测试报文、测试结论,自动生成测试报告等等,工作量巨大。
发明内容
本发明的目的在于针对上述现有技术中的问题,提供一种CMS服务器端协议测试方法、系统、设备及存储介质,能够自动对被测服务器的一致性符合度进行测试,从而减少测试人员干预度和测试工作量,有效提高服务器自动化测试水平和测试效率。
为了实现上述目的,本发明有如下的技术方案:
第一方面,提供一种CMS服务器端协议测试方法,包括:
被测设备测试数据设置;
被测设备服务设置;
对完成测试数据与服务设置的被测设备,自动分析选择需要执行的测试用例;
根据选择的测试用例执行自动测试,记录测试过程,给出测试结论,找出测试问题;
导出测试过程、测试结论和测试问题,生成测试报告。
作为本发明CMS服务器端协议测试方法的一种优选方案,在所述被测设备测试数据设置的步骤中,所述测试数据包括预先设定的测试数据和动态产生的测试数据;
所述预先设定的测试数据包括关联协商服务、模型和数据服务、数据集服务、控制服务、定值组服务、报告服务、日志服务、文件服务以及远程过程调用相关的数据;
关联协商服务包括被测设备的IP地址、安全证书格式;
模型和数据服务为可修改的数据索引;
数据集服务包括可创建的数据集个数、每个数据集包含条目的个数;
控制服务包括支持的控制模式和对应的控制点、控制返校延时时间;
定值组服务包括定值控制块索引、定值数据集;
报告服务包括支持的报告类型、报告触发方式;
日志服务包括日志触发方式;
文件服务包括支持的服务以及可读、写、删除文件的路径和文件名称;
远程过程调用为支持的远程调用服务;
所述动态产生的测试数据根据数据类型、当前值以及最大值、最小值和步长产生。
作为本发明CMS服务器端协议测试方法的一种优选方案,在所述被测设备服务设置的步骤中,服务设置具体包括选择被测设备支持的服务类型,并根据测试数据进行校验,如果没有配置对应的测试数据,则认为不支持所选择的服务类型。
作为本发明CMS服务器端协议测试方法的一种优选方案,所述的服务类型从变电站二次系统通信报文规范规定的57个服务类型中进行选择。
作为本发明CMS服务器端协议测试方法的一种优选方案,所述根据选择的测试用例执行自动测试的步骤包括:
1)进行测试用例前置条件检查,若条件满足,则进行下一步,否则进行中断测试;
2)启动报文监测;
3)选中并关联一个客户端,若成功,进行下一步,否则进行中断测试;
4)选取多个定值,并根据定值的最大值、最小值、步长信息,计算出一个新的定值;
5)读取定值控制块的值;
6)组织测试步骤、预期结果,并依次压入相应队列中;
7)在步骤队列中,逐步取出步骤信息,下发给客户端线程,调用客户端线程执行相应服务,并将步骤实际结果放入实际结果队列;
8)当步骤队列不为空时,重复执行步骤7),否则进行下一步;
9)停止抓包,抛出测试用例执行结束事项;
10)判断实际结果队列与预期结果队列个数是否相同,若不同,跳到步骤14)执行,否则进行下一步;
11)依次取出实际结果与预期结果进行比对,判断肯定与否定响应、错误码、时间检验,若符合预期,则该步骤通过,否则不通过;
12)判断实际队列是否为空,若不为空,重复执行步骤11),否则进行下一步;
13)所有步骤都符合预期,该测试用例结果通过,否则不通过;
14)保存报文和测试记录;
15)更新测试进度和测试用例状态。
更进一步的,所述步骤1)进行测试用例前置条件检查的具体内容包括:
客户端列表是否为空;
配置中是否支持测试用例所需的服务;
模型中是否包含定值控制块。
更进一步的,所述步骤6)组织测试步骤、预期结果的步骤具体包括:
选择编辑组定值,预期结果为返回肯定响应;
设置编辑组定值,定值取步骤4)中新的定值,预期结果为返回肯定响应;
读编辑组定值,预期结果为返回肯定响应;
比对读到的定值是否与步骤4)中新的定值相同,预期结果为与新的定值相同;
确认编辑组定值,预期结果为肯定响应。
第二方面,提供一种CMS服务器端协议测试系统,包括:
测试数据设置模块,用于被测设备测试数据设置;
服务设置模块,用于被测设备服务设置;
测试用例选择模块,用于对完成测试数据与服务设置的被测设备,自动分析选择需要执行的测试用例;
自动测试模块,用于根据选择的测试用例执行自动测试,记录测试过程,给出测试结论,找出测试问题;
测试报告生成模块,用于导出测试过程、测试结论和测试问题,生成测试报告。
作为本发明CMS服务器端协议测试系统的一种优选方案,所述测试数据设置模块设置的被测设备测试数据包括预先设定的测试数据和动态产生的测试数据;
所述预先设定的测试数据包括关联协商服务、模型和数据服务、数据集服务、控制服务、定值组服务、报告服务、日志服务、文件服务以及远程过程调用相关的数据;
关联协商服务包括被测设备的IP地址、安全证书格式;
模型和数据服务为可修改的数据索引;
数据集服务包括可创建的数据集个数、每个数据集包含条目的个数;
控制服务包括支持的控制模式和对应的控制点、控制返校延时时间;
定值组服务包括定值控制块索引、定值数据集;
报告服务包括支持的报告类型、报告触发方式;
日志服务包括日志触发方式;
文件服务包括支持的服务以及可读、写、删除文件的路径和文件名称;
远程过程调用为支持的远程调用服务;
所述动态产生的测试数据根据数据类型、当前值以及最大值、最小值和步长产生。
作为本发明CMS服务器端协议测试系统的一种优选方案,所述服务设置模块选择被测设备支持的服务类型,并根据测试数据进行校验,如果没有配置对应的测试数据,则认为不支持所选择的服务类型。
作为本发明CMS服务器端协议测试系统的一种优选方案,所述服务设置模块选择被测设备支持的服务类型时从变电站二次系统通信报文规范规定的57个服务类型中进行选择。
作为本发明CMS服务器端协议测试系统的一种优选方案,所述自动测试模块根据选择的测试用例执行自动测试的步骤包括:
1)进行测试用例前置条件检查,若条件满足,则进行下一步,否则进行中断测试;
2)启动报文监测;
3)选中并关联一个客户端,若成功,进行下一步,否则进行中断测试;
4)选取多个定值,并根据定值的最大值、最小值、步长信息,计算出一个新的定值;
5)读取定值控制块的值;
6)组织测试步骤、预期结果,并依次压入相应队列中;
7)在步骤队列中,逐步取出步骤信息,下发给客户端线程,调用客户端线程执行相应服务,并将步骤实际结果放入实际结果队列;
8)当步骤队列不为空时,重复执行步骤7),否则进行下一步;
9)停止抓包,抛出测试用例执行结束事项;
10)判断实际结果队列与预期结果队列个数是否相同,若不同,跳到步骤14)执行,否则进行下一步;
11)依次取出实际结果与预期结果进行比对,判断肯定与否定响应、错误码、时间检验,若符合预期,则该步骤通过,否则不通过;
12)判断实际队列是否为空,若不为空,重复执行步骤11),否则进行下一步;
13)所有步骤都符合预期,该测试用例结果通过,否则不通过;
14)保存报文和测试记录;
15)更新测试进度和测试用例状态。
第三方面,提供一种电子设备,包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现所述的CMS服务器端协议测试方法。
第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述的CMS服务器端协议测试方法。
相较于现有技术,本发明第一方面至少具有如下的有益效果:
本发明方法对完成测试数据与服务设置的被测设备,自动分析选择需要执行的测试用例,并且根据选择的测试用例执行自动测试,记录测试过程,给出测试结论,找出测试问题,易于分析,自动化程度高。本发明方法进行被测设备服务设置,能够覆盖新一代变电站内所有类型的装置,自动测试时测试用例覆盖比较全面,测试一致性好,对一定条件下的输入,要求返回对应的输出,并自动研判响应是否符合变电站二次系统通信报文规定,对所有的被测设备和被测服务器测试过程、研判依据均相同,经过测试的设备和服务器符合性较高。最后导出测试过程、测试结论和测试问题,生成测试报告,本发明可以实现针对每个测试用例,均记录测试的输入和输出、按照时间顺序的交互过程及交互结果(正负响应)、每个步骤的研判结果、最终结果,测试报告涵盖信息比较丰富,对发现的测试问题易于分析。
可以理解的是,上述第二方面至第四方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1本发明实施例CMS服务器端协议测试方法流程图;
图2本发明实施例根据选择的测试用例执行自动测试的总体流程图;
图3本发明实施例预先设定测试数据的软件界面示意图;
图4本发明实施例测试用例前准备与组织测试步骤、预期结果的流程图;
图5本发明实施例执行测试步骤队列的流程图;
图6本发明实施例测试结果处理流程图;
图7本发明实施例CMS服务器端协议测试系统结构框图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请的实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
变电站二次系统通信报文是基于DL/T860标准的通信服务机制,规定了多种抽象服务的映射实现方法,即客户端和服务器端交互时双方的报文头、数据格式、编码方式以及正确和错误的响应机制等。各厂家必须依据变电站二次系统通信报文正确、统一的实现请求和响应才能够确保设备的互联互通。作为服务器侧的通信协议,对接收到的各种请求必须正确响应,为检验各厂商设备的实现是否符合变电站二次系统通信报文的规定,必须对其进行详细、严格的一致性测试,厂商众多、设备多样,集中时间内的专业检测工作量大,为满足专业检测的要求,本发明提出基于变电站二次系统通信报文的服务器端协议自动测试方法。
实施例1
请参阅图1,本发明实施例的一种CMS服务器端协议测试方法,包括以下步骤:
S1、被测设备测试数据设置;
S2、被测设备服务设置;
S3、对完成测试数据与服务设置的被测设备,自动分析选择需要执行的测试用例;
S4、根据选择的测试用例执行自动测试,记录测试过程,给出测试结论,找出测试问题;
S5、导出测试过程、测试结论和测试问题,生成测试报告。
在一种可能的实施方式中,步骤S1测试中使用的参数包含两类,即预先设定的测试数据和动态产生的测试数据,有些服务只需要其中的一种方式,有些服务需要两种方式。
1.1预先设定的测试数据
被测设备种类繁多,每类设备支持的服务可能不同,相同类型设备的模型索引也可能不同,因此有些服务测试需要厂家配置数据索引才能够正常测试和研判,除此之外,在自动测试时会自动选择或者产生相关的测试数据,如图3所示,需要配置的测试参数如下:
a)关联协商服务
需要配置被测设备的IP地址、安全证书格式等。
b)模型和数据服务
可修改的数据索引。
c)数据集服务
可创建的数据集个数、每个数据集包含条目的个数等。
d)控制服务
支持的控制模式和对应的控制点,控制返校延时时间等。
e)定值组服务
定值控制块索引、定值数据集等。
f)报告服务
支持的报告类型、报告触发方式等。
g)日志服务
日志触发方式等。
h)文件服务
支持的服务以及可读、写、删除文件的路径和文件名称。
i)远程过程调用
支持的远程调用的服务。
1.2动态产生的测试数据
根据数据类型、当前值以及最大值、最小值和步长等产生,如BOOL型数据,如果当前值是FALSE,需要变化时测试数据即为TRUE,不需要变化时测试数据为FALSE;整型数据INT8,测试数据即为当前值加上或者减去步长,并且不能超过最大值和最小值规定的范围,如果最大值为100,最小值为0,步长为2,当前值为3,则测试数据可能为3+2等,其他数据类型,以此类推。另外测试中也会使用边界数据、异常数据等。
在一种可能的实施方式中,步骤S2选择被测设备支持的服务类型,并根据厂家配置的测试数据进行校验,如果没有配置对应的测试数据,则认为不支持该服务。例如,如果被测设备了支持写数据服务,但没有配置可写的数据,则认为不支持写服务。
步骤S2的服务类型从变电站二次系统通信报文规范规定的57个服务类型中进行选择。
变电站二次系统通信报文规范规定的57个服务如下:
1)关联协商服务
Associate、Abort、Release、AssociateNegotiate;
2)模型和数据服务
GetServerDirectory、GetLogicDeviceDirectory、GetLogicNodeDirectory、GetAllDataValues、GetAllDataDefinition、GetAllCBValues、GetDataValues、SetDataValues、GetDataDirectory、GetDataDefinition;
3)数据集服务
CreateDataSet、DeleteDataSet、GetDataSetDirectory、GetDataSetValues、SetDataSetValues;
4)控制服务
Select、SelectWithValue、Cancel、Operate、CommandTermination、TimeActivatedOperate、TimeActivatedOperateTermination;
5)定值组服务
SelectActiveSG、SelectEditSG、SetEditSGValue、ConfirmEditSGValues、GetEditSGValue、GetSGCBValues;
6)报告服务
Report、GetBRCBValues、SetBRCBValues、GetURCBValues、SetURCBValues;
7)日志服务
GetLCBValues、SetLCBValues、QueryLogByTime、QueryLogAfter、GetLogStatusValues;
8)GOOSE控制块服务
GetGoCBValues、SetGoCBValues;
9)MSV控制块服务
GetMSVCBValues、SetMSVCBValues;
10)文件服务
GetFile、SetFile、DeleteFile、GetFileAttributeValues、GetFileDirectory;
11)远程过程调用
GetRpcInterfaceDirectory、GetRpcMethodDIrectory、GetRpcInterfaceDefinition、GetRpcMethodDefinition、RpcCall;
12)测试
Test。
在一种可能的实施方式中,步骤S3被测设备配置了测试数据和服务之后,自动分析可用的测试用例,并自动勾选测试用例展示,也可增加、去掉需要执行的测试用例。
在一种可能的实施方式中,步骤S4根据自动选择的测试用例顺序执行每个测试用例,在单独执行某个测试用例结束后,给出测试结论,通过、未通过、不适用、未测试等。
请参阅图2,本发明实施例根据选择的测试用例执行自动测试的总体流程包括:
1)监测测试报文;
2)初始化自动测试参数、过程数据、测试状态等;
3)统计当前被选中的测试用例;
4)从测试队列中取出一个测试用例,获取测试用例ID及测试数据;
5)根据测试用例ID,进入不同测试用例执行具体测试步骤;
6)保存测试结果,更新测试进度。
以单个测试用例测试流程为例,某个测试用例要求DUT应正确处理以下定值修改过程:
响应SelectEditSG请求切换编辑区;
响应SetEditSGValue请求修改定值;
响应GetEditSGValue[FC=SE]请求上送修改后的定值;
响应ConfirmEditSGValues请求确认。
请参阅图4至图6,当执行该测试用例时,自动测试过程如下:
1)进行测试用例前置条件检查,若条件满足,进行下一步,否则中断测试;
a)客户端列表是否为空;
b)配置中是否支持该测试用例所需的服务(SelectEditSG,GetEditSGValues,SetEditSGValues,ConfirmEditSG);
c)模型中是否包含定值控制块;
2)启动报文监测;
3)选中并关联一个客户端,若成功,进行下一步,否则中断测试;
4)选取多个定值,并根据定值的最大值、最小值、步长信息,计算出一个新的定值;
5)读取定值控制块的值;
6)组织测试步骤、预期结果,并依次压入相应队列中;
a)选择编辑组定值SelectEditSG,EditSG取值为AcsSG的值;预期结果为返回肯定响应;
b)设置编辑组定值SetEditSGValues,定值取步骤4中的新值;预期结果为返回肯定响应;
c)读编辑组定值GetEditSGValues,预期结果为返回肯定响应;
d)比对读到的定值是否与步骤4中的新值相同,预期结果为与新值相同;
e)确认编辑组定值ConfirmEditSG,预期结果为肯定响应;
7)在步骤队列中,逐步取出步骤信息,下发给客户端线程,并将步骤实际结果放入实际结果队列;
8)当步骤队列不为空时,重复执行步骤7),否则进行下一步;
9)停止抓包,抛出测试用例执行结束事项;
10)判断实际结果队列与预期结果队列个数是否相同,若不同,跳到执行步骤14),否则进行下一步;
11)依次取出实际结果与预期结果进行比对,判断肯定与否定响应、错误码、时间检验等,若符合预期,则该步骤通过,否则不通过;
12)判断实际队列是否为空,若不为空,重复执行步骤11),否则进行下一步;
13)所有步骤都符合预期,该测试用例结果通过,否则不通过;
14)保存报文和测试记录;
15)更新测试进度和测试用例状态。
在一种可能的实施方式中,步骤S5全程详细记录了整个测试过程及测试问题等,并存储于数据库,在测试结束时可根据导出的报告模板导出需要的报告格式。
本发明实施例提出的CMS服务器端协议测试方法,相较于现有技术具有如下优点:
1、自动化程度高
根据选择的装置类型和数据模型,预先配置使用的数据,测试系统自动执行所有测试用例,并自动记录输入、输出以及服务过程,根据发送的请求对接收到的正负响应、数据类型、数据格式、数据范围自动分析是否正确,自动记录并展示问题、交互的报文等,可导出相关记录和问题,易于分析。
2、测试覆盖全面
覆盖了新一代变电站内的所有类型的装置,支持服务器端57个服务的肯定、否定测试以及安全测试,有450多个测试用例,每个测试用例包含多个测试过程,比较丰富。涵盖了保护、监测、测控、计量、录波、交换机、辅控等装置类型;肯定测试用例如不同正向参数、不同数据类型、不同服务和组合测试;否定测试如取值范围、边界、乱序、重复、数量不匹配、类型不匹配、编码错误等测试测试用例,安全测试包含了传输层、应用层等测试测试用例。
3、测试一致性好
自动测试时测试用例覆盖比较全面,对一定条件下的输入,要求返回对应的输出,并自动研判响应是否符合变电站二次系统通信报文规定,对所有的被测设备和被测服务器测试过程、研判依据均相同,经过测试的设备和服务器符合性较高。
4、记录信息丰富
针对每个测试用例,均记录了测试的输入和输出、按照时间顺序的交互过程及交互结果(正负响应)、每个步骤的研判结果、最终结果,并以不同颜色区分,交互的底层报文,并能导出测试记录等等,同时记录了测试人员信息、环境信息等,信息比较丰富,对发现的测试问题易于分析。
实施例2
请参阅图7,本发明实施例的一种CMS服务器端协议测试系统,包括:
测试数据设置模块1,用于被测设备测试数据设置;
服务设置模块2,用于被测设备服务设置;
测试用例选择模块3,用于对完成测试数据与服务设置的被测设备,自动分析选择需要执行的测试用例;
自动测试模块4,用于根据选择的测试用例执行自动测试,记录测试过程,给出测试结论,找出测试问题;
测试报告生成模块5,用于导出测试过程、测试结论和测试问题,生成测试报告。
在一种可能的实施方式中,测试数据设置模块1设置的被测设备测试数据包括预先设定的测试数据和动态产生的测试数据。
更进一步的,预先设定的测试数据包括关联协商服务、模型和数据服务、数据集服务、控制服务、定值组服务、报告服务、日志服务、文件服务以及远程过程调用相关的数据;
关联协商服务包括被测设备的IP地址、安全证书格式;
模型和数据服务为可修改的数据索引;
数据集服务包括可创建的数据集个数、每个数据集包含条目的个数;
控制服务包括支持的控制模式和对应的控制点、控制返校延时时间;
定值组服务包括定值控制块索引、定值数据集;
报告服务包括支持的报告类型、报告触发方式;
日志服务包括日志触发方式;
文件服务包括支持的服务以及可读、写、删除文件的路径和文件名称;
远程过程调用为支持的远程调用服务;
动态产生的测试数据根据数据类型、当前值以及最大值、最小值和步长产生。
在一种可能的实施方式中,服务设置模块2选择被测设备支持的服务类型,并根据测试数据进行校验,如果没有配置对应的测试数据,则认为不支持所选择的服务类型。
在一种可能的实施方式中,服务设置模块2选择被测设备支持的服务类型时从变电站二次系统通信报文规范规定的57个服务类型中进行选择。
在一种可能的实施方式中,自动测试模块4根据测试用例执行自动测试的步骤包括:
1)进行测试用例前置条件检查,若条件满足,则进行下一步,否则进行中断测试;
2)启动报文监测;
3)选中并关联一个客户端,若成功,进行下一步,否则进行中断测试;
4)选取多个定值,并根据定值的最大值、最小值、步长信息,计算出一个新的定值;
5)读取定值控制块的值;
6)组织测试步骤、预期结果,并依次压入相应队列中;
7)在步骤队列中,逐步取出步骤信息,下发给客户端线程,调用客户端线程执行相应服务,并将步骤实际结果放入实际结果队列;
8)当步骤队列不为空时,重复执行步骤7),否则进行下一步;
9)停止抓包,抛出测试用例执行结束事项;
10)判断实际结果队列与预期结果队列个数是否相同,若不同,跳到步骤14)执行,否则进行下一步;
11)依次取出实际结果与预期结果进行比对,判断肯定与否定响应、错误码、时间检验,若符合预期,则该步骤通过,否则不通过;
12)判断实际队列是否为空,若不为空,重复执行步骤11),否则进行下一步;
13)所有步骤都符合预期,该测试用例结果通过,否则不通过;
14)保存报文和测试记录;
15)更新测试进度和测试用例状态。
本发明能够达到减少测试人员干预、实现自动测试、提高工作效率的目的。具体的,通过预配置和动态方式提供必要的丰富多变的测试参数。测试用例覆盖的服务比较全面,且能够根据配置实现测试的自动化。测试一致性好,几乎是全部自动测试,保证不同类型的装置相同服务的测试过程几乎一致。记录信息丰富,可记录整个测试过程、输入输出数据、测试报文、测试结果等。自动化程度比较高,全部测试过程几乎不需要测试人员介入。
实施例3
一种电子设备,包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现所述的CMS服务器端协议测试方法。
实施例4
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述的CMS服务器端协议测试方法。
所述计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器、随机存取存储器、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。为了便于说明,以上内容仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该计算机可读存储介质是非暂时性的,可以存储在各种电子设备形成的存储装置当中,能够实现本发明实施例方法记载的执行过程。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
Claims (14)
1.一种CMS服务器端协议测试方法,其特征在于,包括:
被测设备测试数据设置;
被测设备服务设置;
对完成测试数据与服务设置的被测设备,自动分析选择需要执行的测试用例;
根据选择的测试用例执行自动测试,记录测试过程,给出测试结论,找出测试问题;
导出测试过程、测试结论和测试问题,生成测试报告。
2.根据权利要求1所述的CMS服务器端协议测试方法,其特征在于,在所述被测设备测试数据设置的步骤中,所述测试数据包括预先设定的测试数据和动态产生的测试数据;
所述预先设定的测试数据包括关联协商服务、模型和数据服务、数据集服务、控制服务、定值组服务、报告服务、日志服务、文件服务以及远程过程调用相关的数据;
关联协商服务包括被测设备的IP地址、安全证书格式;
模型和数据服务为可修改的数据索引;
数据集服务包括可创建的数据集个数、每个数据集包含条目的个数;
控制服务包括支持的控制模式和对应的控制点、控制返校延时时间;
定值组服务包括定值控制块索引、定值数据集;
报告服务包括支持的报告类型、报告触发方式;
日志服务包括日志触发方式;
文件服务包括支持的服务以及可读、写、删除文件的路径和文件名称;
远程过程调用为支持的远程调用服务;
所述动态产生的测试数据根据数据类型、当前值以及最大值、最小值和步长产生。
3.根据权利要求1所述的CMS服务器端协议测试方法,其特征在于,在所述被测设备服务设置的步骤中,服务设置具体包括选择被测设备支持的服务类型,并根据测试数据进行校验,如果没有配置对应的测试数据,则认为不支持所选择的服务类型。
4.根据权利要求3所述的CMS服务器端协议测试方法,其特征在于,所述的服务类型从变电站二次系统通信报文规范规定的57个服务类型中进行选择。
5.根据权利要求1所述的CMS服务器端协议测试方法,其特征在于,所述根据选择的测试用例执行自动测试的步骤包括:
1)进行测试用例前置条件检查,若条件满足,则进行下一步,否则进行中断测试;
2)启动报文监测;
3)选中并关联一个客户端,若成功,进行下一步,否则进行中断测试;
4)选取多个定值,并根据定值的最大值、最小值、步长信息,计算出一个新的定值;
5)读取定值控制块的值;
6)组织测试步骤、预期结果,并依次压入相应队列中;
7)在步骤队列中,逐步取出步骤信息,下发给客户端线程,调用客户端线程执行相应服务,并将步骤实际结果放入实际结果队列;
8)当步骤队列不为空时,重复执行步骤7),否则进行下一步;
9)停止抓包,抛出测试用例执行结束事项;
10)判断实际结果队列与预期结果队列个数是否相同,若不同,跳到步骤14)执行,否则进行下一步;
11)依次取出实际结果与预期结果进行比对,判断肯定与否定响应、错误码、时间检验,若符合预期,则该步骤通过,否则不通过;
12)判断实际队列是否为空,若不为空,重复执行步骤11),否则进行下一步;
13)所有步骤都符合预期,该测试用例结果通过,否则不通过;
14)保存报文和测试记录;
15)更新测试进度和测试用例状态。
6.根据权利要求5所述的CMS服务器端协议测试方法,其特征在于,所述步骤1)进行测试用例前置条件检查的具体内容包括:
客户端列表是否为空;
配置中是否支持测试用例所需的服务;
模型中是否包含定值控制块。
7.根据权利要求5所述的CMS服务器端协议测试方法,其特征在于,所述步骤6)组织测试步骤、预期结果的步骤具体包括:
选择编辑组定值,预期结果为返回肯定响应;
设置编辑组定值,定值取步骤4)中新的定值,预期结果为返回肯定响应;
读编辑组定值,预期结果为返回肯定响应;
比对读到的定值是否与步骤4)中新的定值相同,预期结果为与新的定值相同;
确认编辑组定值,预期结果为肯定响应。
8.一种CMS服务器端协议测试系统,其特征在于,包括:
测试数据设置模块,用于被测设备测试数据设置;
服务设置模块,用于被测设备服务设置;
测试用例选择模块,用于对完成测试数据与服务设置的被测设备,自动分析选择需要执行的测试用例;
自动测试模块,用于根据选择的测试用例执行自动测试,记录测试过程,给出测试结论,找出测试问题;
测试报告生成模块,用于导出测试过程、测试结论和测试问题,生成测试报告。
9.根据权利要求8所述的CMS服务器端协议测试系统,其特征在于,所述测试数据设置模块设置的被测设备测试数据包括预先设定的测试数据和动态产生的测试数据;
所述预先设定的测试数据包括关联协商服务、模型和数据服务、数据集服务、控制服务、定值组服务、报告服务、日志服务、文件服务以及远程过程调用相关的数据;
关联协商服务包括被测设备的IP地址、安全证书格式;
模型和数据服务为可修改的数据索引;
数据集服务包括可创建的数据集个数、每个数据集包含条目的个数;
控制服务包括支持的控制模式和对应的控制点、控制返校延时时间;
定值组服务包括定值控制块索引、定值数据集;
报告服务包括支持的报告类型、报告触发方式;
日志服务包括日志触发方式;
文件服务包括支持的服务以及可读、写、删除文件的路径和文件名称;
远程过程调用为支持的远程调用服务;
所述动态产生的测试数据根据数据类型、当前值以及最大值、最小值和步长产生。
10.根据权利要求8所述的CMS服务器端协议测试系统,其特征在于,所述服务设置模块选择被测设备支持的服务类型,并根据测试数据进行校验,如果没有配置对应的测试数据,则认为不支持所选择的服务类型。
11.根据权利要求10所述的CMS服务器端协议测试系统,其特征在于,所述服务设置模块选择被测设备支持的服务类型时从变电站二次系统通信报文规范规定的57个服务类型中进行选择。
12.根据权利要求8所述的CMS服务器端协议测试系统,其特征在于,所述自动测试模块根据选择的测试用例执行自动测试的步骤包括:
1)进行测试用例前置条件检查,若条件满足,则进行下一步,否则进行中断测试;
2)启动报文监测;
3)选中并关联一个客户端,若成功,进行下一步,否则进行中断测试;
4)选取多个定值,并根据定值的最大值、最小值、步长信息,计算出一个新的定值;
5)读取定值控制块的值;
6)组织测试步骤、预期结果,并依次压入相应队列中;
7)在步骤队列中,逐步取出步骤信息,下发给客户端线程,调用客户端线程执行相应服务,并将步骤实际结果放入实际结果队列;
8)当步骤队列不为空时,重复执行步骤7),否则进行下一步;
9)停止抓包,抛出测试用例执行结束事项;
10)判断实际结果队列与预期结果队列个数是否相同,若不同,跳到步骤14)执行,否则进行下一步;
11)依次取出实际结果与预期结果进行比对,判断肯定与否定响应、错误码、时间检验,若符合预期,则该步骤通过,否则不通过;
12)判断实际队列是否为空,若不为空,重复执行步骤11),否则进行下一步;
13)所有步骤都符合预期,该测试用例结果通过,否则不通过;
14)保存报文和测试记录;
15)更新测试进度和测试用例状态。
13.一种电子设备,其特征在于,包括:
存储器,存储至少一个指令;及
处理器,执行所述存储器中存储的指令以实现如权利要求1至7中任一项所述的CMS服务器端协议测试方法。
14.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的CMS服务器端协议测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211058379.2A CN115396352A (zh) | 2022-08-31 | 2022-08-31 | Cms服务器端协议测试方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211058379.2A CN115396352A (zh) | 2022-08-31 | 2022-08-31 | Cms服务器端协议测试方法、系统、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115396352A true CN115396352A (zh) | 2022-11-25 |
Family
ID=84123790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211058379.2A Pending CN115396352A (zh) | 2022-08-31 | 2022-08-31 | Cms服务器端协议测试方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115396352A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115776456A (zh) * | 2022-11-28 | 2023-03-10 | 重庆长安汽车股份有限公司 | 通信协议测试方法、装置、测试设备及存储介质 |
CN117376187A (zh) * | 2023-10-13 | 2024-01-09 | 国家电网有限公司华东分部 | 一种通讯协议检测方法及检测系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110426589A (zh) * | 2019-09-10 | 2019-11-08 | 南京国电南自电网自动化有限公司 | 一种基于通用接口模板的变电站二次设备自动检测方法、服务器及系统 |
CN111881044A (zh) * | 2020-06-28 | 2020-11-03 | 许昌开普检测研究院股份有限公司 | 一种根据配置文件自动匹配测试案例系统 |
CN113676366A (zh) * | 2021-07-09 | 2021-11-19 | 国网电力科学研究院有限公司 | 一种电力通信协议的一致性测试工具 |
-
2022
- 2022-08-31 CN CN202211058379.2A patent/CN115396352A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110426589A (zh) * | 2019-09-10 | 2019-11-08 | 南京国电南自电网自动化有限公司 | 一种基于通用接口模板的变电站二次设备自动检测方法、服务器及系统 |
CN111881044A (zh) * | 2020-06-28 | 2020-11-03 | 许昌开普检测研究院股份有限公司 | 一种根据配置文件自动匹配测试案例系统 |
CN113676366A (zh) * | 2021-07-09 | 2021-11-19 | 国网电力科学研究院有限公司 | 一种电力通信协议的一致性测试工具 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115776456A (zh) * | 2022-11-28 | 2023-03-10 | 重庆长安汽车股份有限公司 | 通信协议测试方法、装置、测试设备及存储介质 |
CN117376187A (zh) * | 2023-10-13 | 2024-01-09 | 国家电网有限公司华东分部 | 一种通讯协议检测方法及检测系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115396352A (zh) | Cms服务器端协议测试方法、系统、设备及存储介质 | |
CN112180897B (zh) | 基于通用测试模板的继电保护/测控装置自动测试系统及方法 | |
CN109150636B (zh) | 一种全链路信息流的智能变电站辅助对点试验方法及系统 | |
CN104793076A (zh) | 智能自动测试系统及测试方法 | |
CN104468277A (zh) | 变电站网络与通讯协议的一致性测试的方法及装置 | |
CN110766263B (zh) | 变电站二次设备自动验收方法及终端设备 | |
CN110989547A (zh) | 一种智能变电站一键顺控系统的检测方法及系统 | |
CN102866944A (zh) | 一种压力测试系统及方法 | |
CN108345449A (zh) | 一种信息处理方法、装置、存储介质及计算机设备 | |
CN112115044A (zh) | 电力信息通信设备自动化测试方法及系统 | |
CN102111801B (zh) | 第三代移动通信网网络管理接口的测试方法及系统 | |
CN112882927A (zh) | 一种接口自动化测试方法、装置、设备及介质 | |
CN113778903B (zh) | 一种配电终端测试用例的生成方法、系统及存储介质 | |
CN115333985A (zh) | Cms客户端协议测试方法、系统、设备及存储介质 | |
CN110689238A (zh) | 智能变电站mms信息模拟及对点的实现方法及系统 | |
CN108897695A (zh) | 一种需求侧设备的互联测试方法及系统 | |
CN116383061A (zh) | 变电站站控系统基础平台接口测试方法及相关装置 | |
CN115794624A (zh) | 智能变电站自动化单装置闭环测试方法及系统 | |
CN103647760A (zh) | 一种智能变电站数字保护装置的mms通讯平台及其访问方法 | |
CN114915562B (zh) | Iec 61850站控层网络通讯服务仿真的服务端和仿真方法 | |
CN109960660A (zh) | 一种基于Ansible的电网业务入网安全测评方法 | |
CN115190141B (zh) | 基于电力靶场环境的工控安全防护方法 | |
CN114462339B (zh) | 用于回归测试的参数调优、文件建立方法及其装置 | |
CN112433110B (zh) | 用于数字化测试仪的自动检测系统及检测方法 | |
CN117421255B (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 |