CN117749675A - A CMS communication protocol testing method and system - Google Patents

A CMS communication protocol testing method and system Download PDF

Info

Publication number
CN117749675A
CN117749675A CN202311621596.2A CN202311621596A CN117749675A CN 117749675 A CN117749675 A CN 117749675A CN 202311621596 A CN202311621596 A CN 202311621596A CN 117749675 A CN117749675 A CN 117749675A
Authority
CN
China
Prior art keywords
test
traversal
test case
control block
communication 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
Application number
CN202311621596.2A
Other languages
Chinese (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.)
XJ Electric Co Ltd
Xuchang XJ Software Technology Co Ltd
Original Assignee
XJ Electric Co Ltd
Xuchang XJ Software Technology 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 XJ Electric Co Ltd, Xuchang XJ Software Technology Co Ltd filed Critical XJ Electric Co Ltd
Priority to CN202311621596.2A priority Critical patent/CN117749675A/en
Publication of CN117749675A publication Critical patent/CN117749675A/en
Pending legal-status Critical Current

Links

Landscapes

  • Maintenance And Management Of Digital Transmission (AREA)

Abstract

The invention belongs to the field of communication protocol testing, and particularly relates to a CMS communication protocol testing method and system. According to the invention, by setting the test case capable of configuring the traversal attribute and the corresponding traversal test step, under the condition that the traversal attribute is configured by the test case, according to the test step corresponding to the traversal attribute value to be tested, continuously executing the current test step under the condition that the test step is not executed, executing the next test step after the execution is completed until each test step of the current traversal attribute value is executed, and then testing the new untested traversal attribute value until the untested traversal attribute value does not exist; therefore, after one test case is called, different traversal attribute values of the test case can be circularly tested, tests corresponding to all traversal attribute values are completed, the tests of a plurality of traversal attribute values can be realized without setting a plurality of test cases, reusability of the test cases is improved, a test case library is simplified, and therefore test efficiency is improved.

Description

一种CMS通讯协议测试方法及系统A CMS communication protocol testing method and system

技术领域Technical field

本发明属于通讯协议测试领域,具体涉及一种CMS通讯协议测试方法及系统。The invention belongs to the field of communication protocol testing, and specifically relates to a CMS communication protocol testing method and system.

背景技术Background technique

为优化变电站内的二次设备之间的通信,自主可控新一代变电站采用基于DL/T860的变电站二次系统通信报文的站控层通讯协议(CMS通讯协议:CommunicationMessage Specification),取代原有的MMS协议,在遵循电力系统自动化领域IEC61850标准的前提下,实现变电站站控层与间隔层设备之间的通信服务协议国产化。相应的变电站通讯协议自动测试工具大都局限于MMS协议测试,缺乏针对CMS通讯协议的自动测试手段,只能采用人工手段,测试效率低,同时正确性和可靠性无法保证,因此对CMS通讯协议自动测试方法的开发十分重要。In order to optimize the communication between secondary equipment in the substation, the new generation of autonomous and controllable substations adopts the station control layer communication protocol (CMS Communication Protocol: CommunicationMessage Specification) based on DL/T860 substation secondary system communication messages to replace the original The MMS protocol, on the premise of following the IEC61850 standard in the field of power system automation, realizes the localization of the communication service protocol between the substation station control layer and bay layer equipment. Most of the corresponding automatic test tools for substation communication protocols are limited to MMS protocol testing. They lack automatic testing methods for CMS communication protocols. Manual methods can only be used. The testing efficiency is low, and the accuracy and reliability cannot be guaranteed. Therefore, automatic testing of CMS communication protocols is not possible. The development of test methods is very important.

如申请公布号为CN115396352A的中国发明专利公开了一种CMS服务器端协议测试方法、系统、设备及存储介质;该方案通过对完成测试数据与服务设置的被测设备,自动分析选择需要执行的测试用例并根据选择的测试用例执行测试来实现自动测试;具体通过在步骤队列中,逐步取出步骤信息以执行相应服务,并将步骤实际结果放入实际结果队列,直到步骤队列全部执行完毕,再依次检查步骤实际结果,若所有步骤都符合预期,该测试用例结果通过,否则不通过;然而,该方案中的CMS服务器端协议测试方法依赖于完成测试数据与服务设置的被测设备,即单个测试用例通常只能针对同一组测试数据与服务设置进行测试,若要对不同设置进行测试则需要分别设置相应的测试用例,可能需要设置较多不同的测试用例以完成一项通信功能测试,导致需要的测试用例的数量较大、用例库构成复杂且测试效率较低。For example, the Chinese invention patent application with publication number CN115396352A discloses a CMS server-side protocol testing method, system, equipment and storage medium; this solution automatically analyzes and selects the tests that need to be performed by analyzing the device under test that has completed test data and service settings. Use the test case and execute the test according to the selected test case to realize automatic testing; specifically, in the step queue, step by step information is taken out to execute the corresponding service, and the actual results of the steps are put into the actual result queue until all steps in the queue are executed, and then in sequence Check the actual results of the steps. If all steps are as expected, the test case result passes, otherwise it fails; however, the CMS server-side protocol testing method in this solution relies on the device under test that completes the test data and service settings, that is, a single test Test cases can usually only be tested against the same set of test data and service settings. If you want to test different settings, you need to set up corresponding test cases separately. You may need to set up more different test cases to complete a communication function test, resulting in the need The number of test cases is large, the use case library is complex, and the testing efficiency is low.

发明内容Contents of the invention

本发明的目的在于提供一种CMS通讯协议测试方法及系统,用于解决现有的CMS通讯协议测试方法一项通信功能测试过程中可能需要分别设置不同的测试用例,导致需要的测试用例的数量较大、用例库构成复杂且测试效率较低的问题。The object of the present invention is to provide a CMS communication protocol testing method and system, which is used to solve the problem that the existing CMS communication protocol testing method may need to set different test cases separately during a communication function test process, resulting in the number of required test cases. Larger, use case libraries pose complex and less efficient testing problems.

为了实现上述目的,本发明提供了一种CMS通讯协议测试方法,包括测试任务执行流程中的测试用例执行步骤,其特征在于,所述测试用例执行步骤包括检查测试用例的配置情况,根据所述情况相应进行测试用例的遍历测试;所述测试用例的配置包括遍历属性的配置;测试步骤执行正常的情况下,遍历测试包括如下步骤:In order to achieve the above object, the present invention provides a CMS communication protocol testing method, which includes a test case execution step in the test task execution process. It is characterized in that the test case execution step includes checking the configuration of the test case. According to the Carry out the traversal test of the test case accordingly; the configuration of the test case includes the configuration of the traversal attribute; when the test steps are executed normally, the traversal test includes the following steps:

1)判断测试用例是否配置了遍历属性,若未配置则按照对应的设定测试步骤进行步骤2);否则继续判断遍历属性的配置中是否存在未测试的遍历属性值,若不存在则结束遍历测试,否则按照待测试遍历属性值对应的测试步骤,进行步骤2);1) Determine whether the test case is configured with the traversal attribute. If not, proceed to step 2) according to the corresponding setting test steps; otherwise, continue to determine whether there is an untested traversal attribute value in the configuration of the traversal attribute. If it does not exist, end the traversal. Test, otherwise proceed to step 2) according to the test steps corresponding to the traversal attribute value to be tested;

2)在测试步骤未执行完毕的情况下持续执行当前测试步骤,执行完毕则继续执行下个测试步骤直至各测试步骤执行完毕;在当前遍历属性值对应的测试步骤执行完毕的情况下,重复步骤1)-2)的过程直至结束遍历测试。2) Continue to execute the current test step when the test step has not been completed. After the execution is completed, continue to execute the next test step until each test step is completed; when the test step corresponding to the current traversal attribute value is completed, repeat the steps The process of 1)-2) until the end of the traversal test.

上述技术方案的有益效果如下:通过设置能够配置遍历属性的测试用例以及对应的遍历测试步骤,能够在调用一个测试用例后针对该测试用例的不同遍历属性值进行循环测试,从而完成所有遍历属性值对应的测试,即无需设置多个测试用例即可实现多个遍历属性值对应的测试,能够提高测试用例的重用性,无需按照不同的遍历属性值分别设置测试用例,简化测试用例库,同时也能减少调用次数,从而综合提高测试效率。The beneficial effects of the above technical solution are as follows: by setting test cases that can configure traversal attributes and corresponding traversal test steps, it is possible to perform loop testing on different traversal attribute values of the test case after calling a test case, thereby completing all traversal attribute values. Corresponding tests, that is, tests corresponding to multiple traversal attribute values can be implemented without setting up multiple test cases, which can improve the reusability of test cases. There is no need to set test cases separately according to different traversal attribute values, simplifying the test case library, and also It can reduce the number of calls, thereby comprehensively improving testing efficiency.

进一步地,所述测试用例的配置还包括对象分组配置和单帧发送配置,操作对象分组指的是同类型的多个操作对象的集合,同类型的操作对象可配置的遍历属性一致;根据测试用例的配置属性情况相应进行测试用例遍历测试的方式包括:Further, the configuration of the test case also includes object grouping configuration and single frame transmission configuration. Operation object grouping refers to a collection of multiple operation objects of the same type. The configurable traversal attributes of operation objects of the same type are consistent; according to the test Methods for performing test case traversal testing based on the configuration attributes of the use case include:

a)判断测试用例是否配置了对象分组且未配置单帧发送,若否则进行设定操作对象对应的遍历测试;若是则继续判断对象分组的配置中是否存在未测试的操作对象,若不存在则不再进行遍历测试,否则进行待测试的操作对象对应的遍历测试;a) Determine whether the test case is configured with object grouping and single frame transmission is not configured. If not, perform the traversal test corresponding to the set operation object; if so, continue to determine whether there is an untested operation object in the configuration of the object group. If it does not exist, then The traversal test will no longer be performed, otherwise the traversal test corresponding to the operation object to be tested will be performed;

b)该操作对象对应的遍历测试结束后,重复步骤a)的过程,直至不再进行遍历测试。b) After the traversal test corresponding to the operation object is completed, repeat the process of step a) until no more traversal tests are performed.

上述技术方案的有益效果如下:通过对象分组配置和单帧发送配置的设置,能够在调用一个测试用例后针对该测试用例的不同操作对象进行循环测试,即通过一个测试用例完成同类型的多个操作对象对应的测试,无需针对多个操作对象设置多个测试用例,在实现对多个操作对象进行测试的基础上保证了相对更少的测试用例数量,进一步提高测试用例的重用性,简化用例库。The beneficial effects of the above technical solution are as follows: through the setting of object grouping configuration and single frame transmission configuration, it is possible to perform loop testing on different operation objects of the test case after calling a test case, that is, multiple test cases of the same type can be completed through one test case. For tests corresponding to operating objects, there is no need to set up multiple test cases for multiple operating objects. On the basis of testing multiple operating objects, a relatively smaller number of test cases is ensured, further improving the reusability of test cases and simplifying use cases. library.

进一步地,所述测试任务执行流程包括:Further, the test task execution process includes:

A)判断当前测试任务是否循环执行完毕,如果已循环执行完毕则结束测试,否则继续执行当前测试任务并进行步骤B);A) Determine whether the current test task has been executed cyclically. If it has been executed cyclically, end the test. Otherwise, continue to execute the current test task and proceed to step B);

B)判断当前测试任务中的测试模块是否已执行完毕,如果已执行完毕则重新进行步骤A),否则继续执行当前测试模块并进行步骤C);B) Determine whether the test module in the current test task has been executed. If it has been executed, proceed to step A) again. Otherwise, continue to execute the current test module and proceed to step C);

C)判断当前测试模块中的测试用例是否均已执行完毕,如果未执行完毕则按照所述测试用例执行步骤继续执行当前测试用例并进行步骤D);否则判断当前测试模块是否循环执行完毕,若循环执行完毕则选择下一个测试模块并重新进行步骤B)-C),若循环执行未完毕则继续执行当前测试模块并重复本步骤;C) Determine whether all the test cases in the current test module have been executed. If not, continue to execute the current test case according to the test case execution steps and proceed to step D); otherwise, determine whether the current test module has been executed cyclically. If After the cycle execution is completed, select the next test module and repeat steps B)-C). If the cycle execution is not completed, continue to execute the current test module and repeat this step;

D)判断当前测试用例是否循环执行完毕,如果未完毕则继续执行,否则选择下一个测试用例并重新进行步骤C)-D)的判断;D) Determine whether the current test case has been cyclically executed. If not, continue execution. Otherwise, select the next test case and re-execute the judgment of steps C)-D);

其中,测试任务包括测试模块及其循环次数信息;测试模块包括一个或多个测试用例,测试用例包括一个或多个测试步骤及其循环次数信息。Among them, the test task includes a test module and its cycle number information; the test module includes one or more test cases, and the test case includes one or more test steps and its cycle number information.

上述技术方案的有益效果如下:通过测试任务执行流程以及测试任务、测试模块、测试用例及测试步骤的设置,将测试的执行分为了四个层次,以测试任务为测试整体,每调用一个测试任务进行测试,即可根据该测试任务的内容相应对其包括的测试模块、测试用例及测试步骤均进行测试,从而进一步提高测试效率。The beneficial effects of the above technical solution are as follows: through the test task execution process and the settings of test tasks, test modules, test cases and test steps, the test execution is divided into four levels, with the test task as the test as a whole, and each test task is called When testing, the test modules, test cases and test steps included in the test task can be tested accordingly according to the content of the test task, thereby further improving testing efficiency.

进一步地,若测试过程中测试对应的被测通讯设备出现通讯中断,则先判断下一测试步骤是否属于延时、关联、操作提示或其他客户端的服务操作,若是则继续执行当前测试用例,否则提示是否等待通讯恢复或结束测试;若选择等待通讯恢复,则所述被测通讯设备通讯恢复后,继续执行测试用例。Furthermore, if the communication equipment under test corresponding to the test is interrupted during the test, first determine whether the next test step is a delay, association, operation prompt or other client service operation. If so, continue to execute the current test case, otherwise Prompt whether to wait for communication recovery or end the test; if you choose to wait for communication recovery, the test case will continue to be executed after the communication device under test recovers.

上述技术方案的有益效果如下:能够方便对通讯中断的情况进行及时且针对性的处理,方便减小后续测试步骤受通讯异常状态的影响。The beneficial effects of the above technical solution are as follows: it can facilitate timely and targeted processing of communication interruptions, and facilitate the reduction of subsequent test steps affected by abnormal communication status.

进一步地,若测试过程中出现某个测试步骤执行异常,则判断该测试用例是否设置了失败继续执行标志,若设置了则判定该测试用例未通过测试并继续执行该测试用例的后续测试步骤,否则判定该测试用例未通过测试并放弃执行该测试用例的后续测试步骤。Further, if a certain test step execution exception occurs during the test, it is determined whether the test case has a failure to continue execution flag set. If it is set, it is determined that the test case has failed the test and continues to execute the subsequent test steps of the test case. Otherwise, it is determined that the test case has failed and the subsequent test steps of the test case are abandoned.

上述技术方案的有益效果如下:能够通过设置失败继续执行标志,灵活选择测试步骤执行异常对应的后续处理措施,方便减小后续测试步骤受步骤执行异常的影响。The beneficial effects of the above technical solution are as follows: it is possible to flexibly select follow-up processing measures corresponding to test step execution exceptions by setting the failure continuation flag, so as to facilitate the reduction of subsequent test steps being affected by step execution exceptions.

进一步地,所述遍历属性的配置包括对遍历属性类型和对应的遍历属性值的配置;遍历属性类型包括ACSI类型、控制块、FC功能约束以及定值组号中的一个或多个。Further, the configuration of the traversal attribute includes the configuration of the traversal attribute type and the corresponding traversal attribute value; the traversal attribute type includes one or more of ACSI type, control block, FC function constraint and setting group number.

进一步地,ACSI类型对应的遍历属性值包括数据对象DataObject、数据集DATA-SET、缓存报告控制块BRCB、非缓存报告控制块URCB、日志控制块LCB、日志LOG、定值组控制块SGCB、GOOSE控制块GoCB以及多播采样值控制块MSVCB中的一种或多种;Further, the traversal attribute values corresponding to the ACSI type include data object DataObject, data set DATA-SET, cache report control block BRCB, non-cache report control block URCB, log control block LCB, log LOG, and setting group control block SGCB, GOOSE One or more of the control block GoCB and the multicast sample value control block MSVCB;

控制块对应的遍历属性值包括缓存报告控制块BRCB、非缓存报告控制块URCB、日志控制块LCB、定值组控制块SGCB、GOOSE控制块GoCB以及多播采样值控制块MSVCB中的一种或多种;The traversal attribute value corresponding to the control block includes one or more of the cached report control block BRCB, the non-cached report control block URCB, the log control block LCB, the setting group control block SGCB, the GOOSE control block GoCB, and the multicast sampling value control block MSVCB. variety;

FC功能约束对应的遍历属性值包括状态信息ST、测量值MX、控制CO、描述DC、配置CF、取代SV、定值组SG、可编辑的定值组SE以及设点参数SP中的一种或多种;The traversal attribute values corresponding to the FC function constraints include one of status information ST, measurement value MX, control CO, description DC, configuration CF, replacement SV, setting group SG, editable setting group SE, and set point parameter SP. or more;

定值组号对应的遍历属性值包括从设定数值开始直到最大值构成的数值范围中的一个或多个,其最大值根据测试对应的测试模型中的定值组数确定。The traversal attribute value corresponding to the setting group number includes one or more values in the range starting from the set value to the maximum value. The maximum value is determined according to the number of setting groups in the test model corresponding to the test.

上述技术方案的有益效果如下:能够使测试用例对应的遍历测试支持多种遍历属性类型,提高测试用例的适用性。The beneficial effects of the above technical solution are as follows: it enables the traversal test corresponding to the test case to support multiple traversal attribute types, thereby improving the applicability of the test case.

进一步地,所述测试模块包括一个或多个服务类型相同的测试用例,所述服务类型包括变电站二次系统通信报文规范规定的各个服务类型中的一种或多种。Further, the test module includes one or more test cases with the same service type, and the service type includes one or more of the various service types specified in the substation secondary system communication message specification.

上述技术方案的有益效果如下:相当于通过测试模块对测试用例按照服务类型分组,方便按照服务类型进行索引,以便于管理和查找所需的测试用例。The beneficial effects of the above technical solution are as follows: it is equivalent to grouping test cases according to service types through the test module, which facilitates indexing according to service types to facilitate management and search of required test cases.

本发明还提供了一种CMS通讯协议测试系统,包括处理器,所述处理器用于执行程序指令,以实现如上述的CMS通讯协议测试方法。The invention also provides a CMS communication protocol testing system, which includes a processor, and the processor is used to execute program instructions to implement the above CMS communication protocol testing method.

该CMS通讯协议测试系统能够实现与上述CMS通讯协议测试方法相同的有益效果。The CMS communication protocol testing system can achieve the same beneficial effects as the above-mentioned CMS communication protocol testing method.

附图说明Description of drawings

图1为本发明CMS通讯协议测试方法实施例中测试用例的遍历测试的流程框图;Figure 1 is a flow chart of the traversal test of test cases in the CMS communication protocol testing method embodiment of the present invention;

图2为本发明CMS通讯协议测试方法实施例中进行测试用例遍历测试的方式的流程框图;Figure 2 is a flow chart of a method for performing test case traversal testing in the embodiment of the CMS communication protocol testing method of the present invention;

图3为本发明CMS通讯协议测试方法实施例中CMS通讯协议测试的整体流程原理框图;Figure 3 is a schematic block diagram of the overall process of CMS communication protocol testing in the embodiment of the CMS communication protocol testing method of the present invention;

图4为本发明CMS通讯协议测试方法实施例中GIS设备智能监测和控制系统的结构框图;Figure 4 is a structural block diagram of the GIS equipment intelligent monitoring and control system in the embodiment of the CMS communication protocol testing method of the present invention;

图5为本发明CMS通讯协议测试方法实施例中制定测试方案流程的流程框图;Figure 5 is a flow chart of the process of formulating a test plan in the embodiment of the CMS communication protocol testing method of the present invention;

图6为本发明CMS通讯协议测试方法实施例中加载测试方案流程的流程框图;Figure 6 is a flow chart of the loading test solution process in the embodiment of the CMS communication protocol testing method of the present invention;

图7为本发明CMS通讯协议测试方法实施例中载入历史任务流程的流程框图。Figure 7 is a flow chart of the historical task process of loading in the CMS communication protocol testing method embodiment of the present invention.

具体实施方式Detailed ways

为了使本发明的目的、技术方案及优点更加清楚明了,以下结合附图及实施例,对本发明进行进一步详细说明。In order to make the purpose, technical solutions and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings and embodiments.

CMS通讯协议测试方法实施例CMS Communication Protocol Test Method Example

本实施例给出了一种CMS通讯协议测试方法的技术方案,该测试方法包括测试任务执行流程中的测试用例执行步骤,该测试用例执行步骤包括检查测试用例的配置情况,根据配置情况相应进行测试用例的遍历测试;This embodiment provides a technical solution for a CMS communication protocol testing method. The test method includes test case execution steps in the test task execution process. The test case execution steps include checking the configuration of the test case and proceeding accordingly according to the configuration. Test case traversal testing;

测试用例的配置包括遍历属性;参照图1,测试步骤执行正常的情况下,遍历测试包括如下步骤:The configuration of the test case includes traversal attributes; referring to Figure 1, when the test steps are executed normally, the traversal test includes the following steps:

1)判断测试用例是否配置了遍历属性,若未配置则按照对应的设定测试步骤进行步骤2);否则继续判断遍历属性的配置中是否存在未测试的遍历属性值,若不存在则结束遍历测试,否则按照待测试遍历属性值对应的测试步骤,进行步骤2);需要注意的是,图1中所提到的“属性值”均指的是遍历属性值。1) Determine whether the test case is configured with the traversal attribute. If not, proceed to step 2) according to the corresponding setting test steps; otherwise, continue to determine whether there is an untested traversal attribute value in the configuration of the traversal attribute. If it does not exist, end the traversal. Test, otherwise follow the test steps corresponding to the traversal attribute value to be tested and proceed to step 2); it should be noted that the "attribute value" mentioned in Figure 1 refers to the traversal attribute value.

遍历属性的配置包括对遍历属性类型和对应的遍历属性值的配置;本实施例中,遍历属性支持ACSI类型、控制块、FC功能约束、定值组号等,即可配置的遍历属性类型包括ACSI类型、控制块、FC功能约束以及定值组号中的一个或多个,可配置的属性值即为配置的遍历属性对应的属性值中的一个或多个;对遍历属性进行配置即对遍历属性类型和遍历属性类型对应的属性值进行配置;具体地,ACSI类型对应的遍历属性值包括数据对象DataObject、数据集DATA-SET、缓存报告控制块BRCB、非缓存报告控制块URCB、日志控制块LCB、日志LOG、定值组控制块SGCB、GOOSE控制块GoCB以及多播采样值控制块MSVCB中的一个或多个;The configuration of the traversal attribute includes the configuration of the traversal attribute type and the corresponding traversal attribute value; in this embodiment, the traversal attribute supports ACSI type, control block, FC function constraint, fixed value group number, etc. The configurable traversal attribute types include One or more of the ACSI type, control block, FC function constraint and setting group number, the configurable attribute value is one or more of the attribute values corresponding to the configured traversal attribute; configuring the traversal attribute means Configure the traversal attribute type and the attribute value corresponding to the traversal attribute type; specifically, the traversal attribute value corresponding to the ACSI type includes the data object DataObject, the data set DATA-SET, the cache report control block BRCB, the non-cache report control block URCB, and the log control One or more of block LCB, log LOG, setting group control block SGCB, GOOSE control block GoCB and multicast sample value control block MSVCB;

控制块对应的遍历属性值包括缓存报告控制块BRCB、非缓存报告控制块URCB、日志控制块LCB、定值组控制块SGCB、GOOSE控制块GoCB以及多播采样值控制块MSVCB中的一个或多个;The traversal attribute value corresponding to the control block includes one or more of the cached report control block BRCB, the non-cached report control block URCB, the log control block LCB, the setting group control block SGCB, the GOOSE control block GoCB and the multicast sampling value control block MSVCB. indivual;

FC功能约束属性对应的遍历值包括状态信息ST、测量值MX、控制CO、描述DC、配置CF、取代SV、定值组SG、可编辑的定值组SE以及设点参数SP中的一个或多个;The traversal value corresponding to the FC function constraint attribute includes one or more of status information ST, measurement value MX, control CO, description DC, configuration CF, replacement SV, setting group SG, editable setting group SE, and set point parameter SP. multiple; multiple;

定值组号对应的遍历属性值包括从设定数值开始(本实施例为从1开始)直到最大值构成的数值范围中的一个或多个,其最大值根据测试对应的测试模型中的定值组数确定。The traversal attribute value corresponding to the fixed value group number includes one or more numerical ranges starting from the set value (starting from 1 in this embodiment) to the maximum value. The maximum value is based on the fixed value in the test model corresponding to the test. The number of value groups is determined.

2)初始化测试用例的测试状态信息(测试状态信息本身用于测试结果判定,初始化测试用例的测试状态信息即将上一次测试过程中保存或者更改的参数或集合进行复位或清空,以便进行新的遍历属性值对应的测试),在测试步骤未执行完毕的情况下持续执行当前测试步骤,执行完毕则继续执行下个测试步骤直至各测试步骤执行完毕;在当前遍历属性值对应的测试步骤执行完毕的情况下,重复步骤1)-2)的过程直至结束遍历测试。2) Initialize the test status information of the test case (the test status information itself is used to determine the test results. The test status information of the initialized test case resets or clears the parameters or sets saved or changed during the last test to facilitate a new traversal. The test corresponding to the attribute value), continue to execute the current test step when the test step has not been completed, and continue to execute the next test step until the execution of each test step is completed; when the test step corresponding to the current traversal attribute value is executed In this case, repeat steps 1)-2) until the traversal test is completed.

由此,本实施例中的CMS通讯协议测试方法通过设置能够配置遍历属性的测试用例以及对应的遍历测试步骤,能够在调用一个测试用例后针对该测试用例的不同遍历类型的不同遍历属性值进行循环测试,从而完成配置的所有遍历属性值对应的测试,即无需设置多个测试用例即可实现多个遍历属性值的测试,能够提高测试用例的重用性,无需按照不同的遍历属性值分别设置测试用例,简化测试用例库,同时也能减少调用测试用例的次数,综合提高测试效率。Therefore, the CMS communication protocol testing method in this embodiment can set up test cases that can configure traversal attributes and corresponding traversal test steps, and can perform different traversal attribute values of different traversal types of the test case after calling a test case. Loop testing to complete the tests corresponding to all configured traversal attribute values. That is, you can implement multiple traversal attribute value tests without setting up multiple test cases. This can improve the reusability of test cases and does not need to be set separately according to different traversal attribute values. Test cases simplify the test case library, while also reducing the number of test case calls and comprehensively improving testing efficiency.

本实施例中,测试用例的配置还包括对象分组配置和单帧发送配置,操作对象分组指的是同类型的多个操作对象的集合,同类型的操作对象可配置的遍历属性一致;则参照图2,根据测试用例的配置属性情况相应进行测试用例遍历测试的方式包括:In this embodiment, the configuration of the test case also includes object grouping configuration and single frame sending configuration. Operation object grouping refers to a collection of multiple operation objects of the same type. The configurable traversal attributes of operation objects of the same type are consistent; then refer to Figure 2. Methods for performing test case traversal testing based on the configuration attributes of the test case include:

a)判断测试用例是否配置了对象分组且未配置单帧发送,若否则进行设定操作对象对应的遍历测试;若是则继续判断对象分组的配置中是否存在未测试的操作对象,若不存在则不再进行遍历测试,否则实例化待测试操作对象后,进行该操作对象对应的遍历测试;由于同类型的操作对象可配置的遍历属性一致,则操作对象分组中的操作对象均能够适用于相同的遍历属性的配置,因此同一测试用例的操作对象分组中的各个操作对象的遍历测试能够共用相同的遍历测试配置及相关的测试步骤,从而实现通过同一测试用例完成多个操作对象的遍历测试的效果。a) Determine whether the test case is configured with object grouping and single frame transmission is not configured. If not, perform the traversal test corresponding to the set operation object; if so, continue to determine whether there is an untested operation object in the configuration of the object group. If it does not exist, then The traversal test is no longer performed. Otherwise, after instantiating the operation object to be tested, the traversal test corresponding to the operation object is performed; since the configurable traversal properties of the same type of operation objects are consistent, the operation objects in the operation object group can all be applied to the same The configuration of the traversal attributes, so the traversal tests of each operation object in the operation object group of the same test case can share the same traversal test configuration and related test steps, thereby achieving the completion of the traversal test of multiple operation objects through the same test case Effect.

b)该操作对象对应的遍历测试结束后,重复步骤a)的过程,直至不再进行遍历测试。b) After the traversal test corresponding to the operation object is completed, repeat the process of step a) until no more traversal tests are performed.

上述步骤a)、b)所提到的以及图2的方框中所展示的遍历测试即对应为上述步骤1)-2)的遍历测试步骤,其中,测试用例配置了对象分组说明待测试的操作对象有多个,配置单帧发送则说明在一帧CMS报文中会将所有的操作对象都进行发送(未配置单帧发送则每帧CMS报文中仅包含一个操作对象);因此,只要配置了单帧发送或未配置对象分组,则说明仅会向测试对象发送一帧包含操作对象的CMS报文,因此仅需单次循环以对该帧CMS报文进行遍历测试,即仅需进行设定操作对象对应的遍历测试;而如果配置了对象分组且未配置单帧发送,则说明会向测试对象发送多帧包含操作对象的CMS报文,因此需要多次循环以对每帧CMS报文分别进行遍历测试,即对每个操作对象分别进行遍历测试。The traversal test mentioned in the above steps a) and b) and shown in the box of Figure 2 corresponds to the traversal test step of the above steps 1)-2), in which the test case is configured with object grouping instructions to be tested. There are multiple operation objects. Configuring single frame transmission means that all operation objects will be sent in one frame of CMS message (if single frame transmission is not configured, each frame of CMS message only contains one operation object); therefore, As long as single frame transmission is configured or object grouping is not configured, it means that only one frame of CMS message containing the operation object will be sent to the test object, so only a single loop is needed to traverse the CMS message of the frame, that is, only Carry out the traversal test corresponding to the set operation object; if object grouping is configured and single frame transmission is not configured, it means that multiple frames of CMS messages containing the operation object will be sent to the test object, so multiple loops are needed to process each CMS frame. The packets are traversed separately, that is, each operation object is traversed separately.

本实施例通过对象分组配置和单帧发送配置的设置,能够在调用一个测试用例后针对该测试用例的不同操作对象进行循环测试,即通过一个测试用例完成同类型的多个操作对象对应的测试,无需针对多个操作对象设置多个测试用例,在实现对多个操作对象进行测试的基础上保证了相对更少的测试用例数量,进一步提高测试用例的重用性,简化用例库。In this embodiment, through the settings of object grouping configuration and single frame transmission configuration, it is possible to perform loop testing on different operation objects of the test case after calling a test case, that is, through one test case, the tests corresponding to multiple operation objects of the same type are completed. , there is no need to set multiple test cases for multiple operation objects, and a relatively smaller number of test cases is ensured on the basis of testing multiple operation objects, further improving the reusability of test cases and simplifying the use case library.

并且,参照图3,本实施例中,包含上述的测试用例执行步骤的测试任务执行流程包括:Moreover, referring to Figure 3, in this embodiment, the test task execution process including the above test case execution steps includes:

A)判断当前测试任务是否循环执行完毕,如果已循环执行完毕则结束测试,否则继续执行当前测试任务并进行步骤B);A) Determine whether the current test task has been executed cyclically. If it has been executed cyclically, end the test. Otherwise, continue to execute the current test task and proceed to step B);

B)判断当前测试任务中的测试模块是否已执行完毕,如果已执行完毕则重新进行步骤A),否则继续执行当前测试模块并进行步骤C);B) Determine whether the test module in the current test task has been executed. If it has been executed, proceed to step A) again. Otherwise, continue to execute the current test module and proceed to step C);

C)判断当前测试模块中的测试用例是否均已执行完毕,如果未执行完毕则按照上述测试用例执行步骤(即上述步骤a)-b))继续执行当前测试用例并进行步骤D);否则判断当前测试模块是否循环执行完毕,若循环执行完毕则选择下一个测试模块并重新进行步骤B)-C),若循环执行未完毕则继续执行当前测试模块并重复本步骤;C) Determine whether all the test cases in the current test module have been executed. If not, continue to execute the current test case according to the above test case execution steps (i.e. the above steps a)-b)) and proceed to step D); otherwise, judge Whether the loop execution of the current test module is completed. If the loop execution is completed, select the next test module and re-execute steps B)-C). If the loop execution is not completed, continue to execute the current test module and repeat this step;

D)判断当前测试用例是否循环执行完毕,如果未完毕则继续执行,否则选择下一个测试用例并重新进行步骤C)-D)的判断。D) Determine whether the loop execution of the current test case has been completed. If not, continue execution. Otherwise, select the next test case and re-execute the judgment of steps C)-D).

其中,测试任务包括测试模块及其循环次数信息;测试模块包括一个或多个测试用例,本实施例中为一个或多个服务类型相同的测试用例,测试用例则包括一个或多个测试步骤及其循环次数信息;由此可见,本实施例中的测试任务执行流程以及测试任务、测试模块、测试用例及测试步骤的设置相当于将测试的执行分为了四个层次,以测试任务为测试整体,每调用一个测试任务进行测试,即可根据该测试任务的内容相应对其包括的测试模块、测试用例及测试步骤均进行测试,从而进一步提高测试效率。另外,本实施例中,测试用例库设置为分为测试模块、测试用例、测试步骤三个层次的通讯协议规则知识库,方便选择相应的测试用例。Among them, the test task includes the test module and its cycle number information; the test module includes one or more test cases. In this embodiment, it is one or more test cases with the same service type. The test case includes one or more test steps and Its cycle number information; it can be seen that the test task execution process and the settings of test tasks, test modules, test cases and test steps in this embodiment are equivalent to dividing the test execution into four levels, with the test task as the overall test , every time a test task is called for testing, the test modules, test cases and test steps included in it can be tested according to the content of the test task, thereby further improving testing efficiency. In addition, in this embodiment, the test case library is set as a communication protocol rule knowledge base divided into three levels: test module, test case, and test step, to facilitate the selection of corresponding test cases.

具体地,服务类型包括变电站二次系统通信报文规范规定的各个服务类型,例如关联类服务、目录类服务、数据类服务、数据集类服务、定值类服务、报告类服务、日志类服务、控制类服务、文件类服务、测试服务、关联协商服务、远程过程调用类服务等。Specifically, the service types include various service types stipulated in the substation secondary system communication message specifications, such as association services, directory services, data services, data set services, fixed value services, report services, and log services. , control services, file services, test services, association negotiation services, remote procedure call services, etc.

本实施例中,测试用例的配置还可以包括全局唯一的用例编号即描述等信息,测试用例中测试步骤所使用的操作对象类型分为逻辑设备、逻辑节点、数据对象、数据集、缓存报告控制块、非缓存报告控制块、日志控制块、定值组控制块、日志等。测试步骤即为测试用例的最小执行单元,一种测试步骤实现一种基础服务,测试步骤相关的配置包含用例内唯一的步骤编号、描述、基础服务类型编码、客户端列表、重复执行次数、操作对象、操作参数、预期响应等信息;具体地,针对CMS通讯协议,测试步骤类型包括关联、异常中止、释放关联、读服务器目录、读逻辑设备目录、读逻辑节点目录、读所有数据值、读所有数据定义、读所有控制块值、读数据值、设置数据值、读数据目录、读数据定义、创建数据集、删除数据集、读数据集目录、读数据集值、设置数据集值、选择、带值选择、撤销、执行、时间激活操作、选择激活定值组、选择编辑定值组、设置编辑定值组值、确认编辑定值组值、读编辑定值组值、读定值组控制块值、读缓存报告控制块值、设置缓存报告控制块值、读非缓存报告控制块值、设置非缓存报告控制块值、读日志控制块值、设置日志控制块值、按时间查询日志、查询指定条目之后的日志、读日志状态值、读文件、写文件、删除文件、读文件属性值、列文件目录、延时、启动报告模拟、停止报告模拟、启动报告收集、停止报告收集、阻塞式报告收集、纯判断、操作提示、取代、取代设值、取代设品质、写系统定值、组合控制、总召报告、周期报告、记录条目号等。In this embodiment, the configuration of the test case can also include information such as a globally unique use case number, that is, a description. The types of operation objects used in the test steps in the test case are divided into logical devices, logical nodes, data objects, data sets, and cache report controls. block, non-cached report control block, log control block, setting group control block, log, etc. A test step is the smallest execution unit of a test case. A test step implements a basic service. The configuration related to the test step includes the unique step number, description, basic service type code, client list, number of repeated executions, and operations within the use case. Objects, operating parameters, expected responses and other information; specifically, for the CMS communication protocol, the test step types include association, abnormal abort, release association, read server directory, read logical device directory, read logical node directory, read all data values, read All data definitions, Read all control block values, Read data values, Set data values, Read data directory, Read data definitions, Create data set, Delete data set, Read data set directory, Read data set values, Set data set values, Select , with value selection, undo, execution, time activation operation, select to activate setting group, select to edit setting group, set and edit setting group value, confirm editing setting group value, read and edit setting group value, read setting group Control block value, read cache report control block value, set cache report control block value, read non-cache report control block value, set non-cache report control block value, read log control block value, set log control block value, query log by time , Query the log after the specified entry, read log status value, read file, write file, delete file, read file attribute value, list file directory, delay, start report simulation, stop report simulation, start report collection, stop report collection, Blocking report collection, pure judgment, operation prompts, replacement, replacement setting value, replacement setting quality, writing system setting value, combination control, general call report, periodic report, recording entry number, etc.

本实施例中,进行CMS通讯协议测试时的整体流程原理参照图4,首先加载测试用例库和测试对象(即IED对象,相当于CMS通讯协议测试对应的服务端模型)对应的模型配置文件;然后通过制定测试方案流程或加载测试方案流程制定或加载测试方案,并选择待测IED对象;或者通过载入历史任务流程载入历史任务;之后,启动并进行测试;测试执行过程中随时可以暂停测试,暂停状态下既可以选择保存历史任务后结束测试,也可以选择继续测试或终止测试;测试完成自动输出测试报告。In this embodiment, refer to Figure 4 for the overall process principle when testing the CMS communication protocol. First, load the test case library and the model configuration file corresponding to the test object (i.e., the IED object, which is equivalent to the server model corresponding to the CMS communication protocol test); Then develop or load the test plan through the test plan process or load test plan process, and select the IED object to be tested; or load historical tasks through the load historical task process; then start and test; you can pause at any time during the test execution process During the test, in the paused state, you can choose to save the historical tasks and then end the test, or you can choose to continue the test or terminate the test; the test report is automatically output when the test is completed.

具体地,参照图5,本实施例的CMS通讯协议测试方法中的制定测试方案流程包括如下步骤:Specifically, referring to Figure 5, the test plan formulation process in the CMS communication protocol testing method of this embodiment includes the following steps:

新建测试任务,并设置测试任务循环次数;选择该测试任务所需的测试模块,并设置测试模块的循环次数;在选择的测试模块中选择所需的测试用例,并设置测试用例循环次数;所需的测试模块对应的测试用例均选择完毕后,则保存该测试任务,以完成测试方案的制定。Create a new test task and set the number of test task cycles; select the test module required for the test task and set the number of cycles of the test module; select the required test case in the selected test module and set the number of test case cycles; so After all the test cases corresponding to the required test modules are selected, the test task is saved to complete the formulation of the test plan.

参照图6,本实施例的CMS通讯协议测试方法中的加载测试方案流程包括如下步骤:Referring to Figure 6, the loading test solution process in the CMS communication protocol testing method of this embodiment includes the following steps:

首先载入测试方案,如果需要修改测试方案(即测试任务),则对测试方案中的测试模块、测试用例设置进行修改,修改完毕可保存覆盖其他测试方案或另存为新的测试方案。First load the test plan. If you need to modify the test plan (i.e. test task), modify the test module and test case settings in the test plan. After the modification is completed, you can save it to cover other test plans or save it as a new test plan.

参照图7,本实施例的CMS通讯协议测试方法中的载入历史任务流程包括如下步骤:Referring to Figure 7, the loading history task process in the CMS communication protocol testing method of this embodiment includes the following steps:

载入保存的历史任务,恢复任务执行进度信息,该任务执行进度信息包括测试任务当前循环次数、各测试模块当前循环次数、各测试用例当前循环次数、当前执行测试用例、各测试用例的历史测试结果等数据。Load the saved historical task and restore the task execution progress information. The task execution progress information includes the current cycle number of the test task, the current cycle number of each test module, the current cycle number of each test case, the currently executed test case, and the historical tests of each test case. Results and other data.

并且,本实施例的CMS通讯协议测试方法中还设置有异常状态自恢复处理机制,如针对通讯异常状态的处理和测试用例中某个步骤执行异常的处理,其中,针对通讯异常状态的处理方式包括:若测试过程中测试对应的被测通讯设备(即IED设备)出现通讯中断,则先判断下一测试步骤是否属于延时、关联、操作提示或其他客户端的服务操作,若是则继续执行当前测试用例,否则提示是否等待通讯恢复或结束测试;若选择等待通讯恢复,则被测通讯设备通讯恢复后,继续执行测试用例。由此能够方便对通讯中断的情况进行及时且针对性的处理,方便减小后续测试步骤受通讯异常状态的影响。In addition, the CMS communication protocol testing method of this embodiment is also provided with an abnormal state self-recovery processing mechanism, such as processing of communication abnormal states and abnormal execution of a certain step in the test case. Among them, the processing method of communication abnormal states is Including: If the communication device under test (i.e. IED device) corresponding to the test is interrupted during the test, first determine whether the next test step is a delay, association, operation prompt or other client service operation, and if so, continue to execute the current test step. Test case, otherwise it will prompt whether to wait for communication recovery or end the test; if you choose to wait for communication recovery, the test case will continue to be executed after the communication device under test recovers. This can facilitate timely and targeted processing of communication interruptions, and reduce the impact of subsequent test steps from abnormal communication status.

针对试用例中某个步骤执行异常的处理方式包括:若测试过程中出现某个测试步骤执行异常,则判断该测试用例是否设置了失败继续执行标志,若设置了则判定该测试用例未通过测试并继续执行该测试用例的后续测试步骤,否则判定该测试用例未通过测试并放弃执行该测试用例的后续测试步骤;由此能够通过设置失败继续执行标志,灵活选择测试步骤执行异常对应的后续处理措施,方便减小后续测试步骤受步骤执行异常的影响。The handling method for an execution exception of a certain step in the test case includes: if an execution exception of a certain test step occurs during the test process, determine whether the test case has a failure to continue execution flag set, and if it is set, determine that the test case has failed the test. And continue to execute the subsequent test steps of the test case, otherwise it is determined that the test case has failed the test and gives up executing the subsequent test steps of the test case; thus, the failure to continue execution flag can be set, and the test step can be flexibly selected to perform subsequent processing corresponding to the exception. Measures can be taken to reduce the impact of abnormal step execution in subsequent test steps.

CMS通讯协议测试系统实施例CMS Communication Protocol Test System Implementation

本实施例给出了一种CMS通讯协议测试系统的技术方案,包括处理器,该处理器用于执行程序指令,以实现如上述的CMS通讯协议测试方法实施例中的CMS通讯协议测试方法。This embodiment provides a technical solution for a CMS communication protocol testing system, which includes a processor. The processor is used to execute program instructions to implement the CMS communication protocol testing method in the above CMS communication protocol testing method embodiment.

由于本实施例中的CMS通讯协议测试系统的具体工作方式及原理已经在上述的CMS通讯协议测试方法实施例中进行了详细说明,则此处不再赘述。Since the specific working methods and principles of the CMS communication protocol testing system in this embodiment have been described in detail in the above-mentioned CMS communication protocol testing method embodiment, they will not be described again here.

本发明具有如下特点:The invention has the following characteristics:

1)通过设置能够配置遍历属性的测试用例以及对应的遍历测试步骤,能够在调用一个测试用例后针对该测试用例的不同遍历类型的不同遍历属性值进行循环测试,从而完成所有遍历属性值对应的测试,即无需设置多个测试用例即可实现多个遍历属性值对应的的测试,能够提高测试用例的重用性,无需按照不同的遍历属性值分别设置测试用例,简化测试用例库,同时也能减少调用次数,从而综合提高测试效率。1) By setting up test cases that can configure traversal attributes and corresponding traversal test steps, it is possible to perform loop tests on different traversal attribute values of different traversal types of the test case after calling a test case, thereby completing all traversal attribute values corresponding to Testing, that is, you can implement tests corresponding to multiple traversal attribute values without setting up multiple test cases, which can improve the reusability of test cases. There is no need to set test cases separately according to different traversal attribute values, simplifying the test case library, and at the same time Reduce the number of calls, thus comprehensively improving testing efficiency.

2)通过对象分组配置和单帧发送配置的设置,能够在调用一个测试用例后针对该测试用例的不同操作对象进行循环测试,即通过一个测试用例调用完成同类型的多个操作对象对应的测试,无需针对多个操作对象设置多个测试用例,在实现对多个操作对象进行测试的基础上保证了相对更少的测试用例数量,进一步提高测试用例的重用性,简化用例库。2) Through the settings of object grouping configuration and single frame transmission configuration, it is possible to perform loop testing on different operating objects of the test case after calling a test case, that is, completing the testing corresponding to multiple operating objects of the same type through one test case call. , there is no need to set multiple test cases for multiple operation objects, and a relatively smaller number of test cases is ensured on the basis of testing multiple operation objects, further improving the reusability of test cases and simplifying the use case library.

3)通过测试任务执行流程以及测试任务、测试模块、测试用例及测试步骤的设置,将测试的执行分为了四个层次,以测试任务为测试整体,每调用一个测试任务进行测试,即可根据该测试任务的内容相应对其包括的测试模块、测试用例及测试步骤均进行测试,从而进一步提高测试效率。3) Through the test task execution process and the settings of test tasks, test modules, test cases and test steps, the test execution is divided into four levels. The test task is the test as a whole. Each time a test task is called for testing, it can be based on According to the content of the test task, the test modules, test cases and test steps included in it are tested, thereby further improving the testing efficiency.

应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。It should be understood that the above-described specific embodiments of the present invention are only used to illustrate or explain the principles of the present invention, and do not constitute a limitation of the present invention.

Claims (9)

1. The CMS communication protocol testing method comprises a test case execution step in a test task execution flow, and is characterized in that the test case execution step comprises the steps of checking the configuration condition of the test case and correspondingly performing traversal test of the test case according to the condition; the configuration of the test case comprises the configuration of the traversal attribute; under the condition that the test step is executed normally, the traversal test comprises the following steps:
1) Judging whether the test case is configured with the traversal attribute, if not, performing the step 2) according to the corresponding set test step; otherwise, continuing to judge whether an untested traversal attribute value exists in the configuration of the traversal attribute, ending the traversal test if the untested traversal attribute value does not exist, otherwise, executing the step 2 according to the testing step corresponding to the traversal attribute value to be tested;
2) Continuously executing the current test step under the condition that the test step is not executed, and continuously executing the next test step until each test step is executed after the execution is completed; and (3) repeating the processes of the steps 1) -2) until the traversal test is finished under the condition that the test step corresponding to the current traversal attribute value is executed.
2. The CMS communication protocol testing method of claim 1, wherein the configuration of the test cases further comprises an object grouping configuration and a single frame transmission configuration, the operation object grouping refers to a set of multiple operation objects of the same type, and configurable traversal attributes of the operation objects of the same type are consistent; the method for correspondingly performing the test case traversal test according to the configuration attribute condition of the test case comprises the following steps:
a) Judging whether the test case is configured with object grouping and is not configured with single frame transmission, if not, performing traversal test corresponding to the set operation object; if yes, continuing to judge whether an untested operation object exists in the configuration of the object group, if not, not performing the traversal test, otherwise, performing the traversal test corresponding to the operation object to be tested;
b) And d) after the traversing test corresponding to the operation object is finished, repeating the process of the step a) until the traversing test is not performed.
3. The CMS communication protocol testing method of claim 1 or 2, wherein the test task execution flow comprises:
a) Judging whether the current test task is circularly executed, ending the test if the current test task is circularly executed, otherwise, continuing to execute the current test task and performing the step B);
b) Judging whether the test module in the current test task is executed completely, if so, re-executing the step A), otherwise, continuing to execute the current test module and executing the step C);
c) Judging whether all the test cases in the current test module are executed, if not, continuing to execute the current test cases according to the test case execution step and performing the step D); otherwise, judging whether the current test module is completely circularly executed, if so, selecting the next test module and repeating the steps B) -C), and if not, continuing to execute the current test module and repeating the steps;
d) Judging whether the current test case is circularly executed, if not, continuing to execute, otherwise, selecting the next test case and repeating the judgment of the steps C) -D);
the test task comprises a test module and cycle number information thereof; the test module comprises one or more test cases, and the test cases comprise one or more test steps and cycle number information thereof.
4. The CMS communication protocol testing method of claim 1 or 2, wherein if the communication interruption occurs in the corresponding communication device under test during the testing, it is first determined whether the next testing step belongs to a delay, association, operation prompt or service operation of other clients, if yes, the current test case is continuously executed, otherwise, whether the communication is waiting for recovery or ending the testing is prompted; if the communication waiting is selected to be recovered, the tested communication equipment continues to execute the test case after the communication is recovered.
5. The CMS communication protocol test method of claim 1 or 2, wherein if an abnormal execution of a certain test step occurs during the test, it is determined whether the test case has set a fail continue flag, if so, it is determined that the test case fails the test and continues to execute the subsequent test step of the test case, otherwise, it is determined that the test case fails the test and the subsequent test step of the test case is abandoned.
6. The CMS communication protocol testing method of claim 1 or 2, wherein the configuration of the traversal attribute comprises configuration of a traversal attribute type and a corresponding traversal attribute value; the traversal attribute types include one or more of ACSI type, control block, FC function constraint, and constant value group number.
7. The method according to claim 6, wherein the traversal attribute values corresponding to the ACSI type include one or more of a DATA object DataObject, a DATA SET DATA-SET, a buffer report control block BRCB, a non-buffer report control block URCB, a LOG control block LCB, a LOG, a constant value group control block SGCB, a GOOSE control block gcb, and a multicast sample value control block MSVCB;
the traversal attribute values corresponding to the control blocks comprise one or more of a buffer report control block BRCB, a non-buffer report control block URCB, a log control block LCB, a fixed value group control block SGCB, a GOOSE control block GoCB and a multicast sampling value control block MSVCB;
the traversal attribute values corresponding to the FC function constraint comprise one or more of state information ST, measured value MX, control CO, description DC, configuration CF, substitution SV, fixed value group SG, editable fixed value group SE and set point parameter SP;
the traversal attribute values corresponding to the constant value group numbers comprise one or more of a numerical range formed from a set numerical value to a maximum value, and the maximum value is determined according to the constant value group number in the test model corresponding to the test.
8. The CMS communication protocol testing method of claim 3, wherein the testing module comprises one or more test cases of the same service type, the service type comprising one or more of the service types specified by the substation secondary system communication message specification.
9. A CMS communication protocol testing system comprising a processor for executing program instructions to implement the CMS communication protocol testing method of any of claims 1-8.
CN202311621596.2A 2023-11-29 2023-11-29 A CMS communication protocol testing method and system Pending CN117749675A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311621596.2A CN117749675A (en) 2023-11-29 2023-11-29 A CMS communication protocol testing method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311621596.2A CN117749675A (en) 2023-11-29 2023-11-29 A CMS communication protocol testing method and system

Publications (1)

Publication Number Publication Date
CN117749675A true CN117749675A (en) 2024-03-22

Family

ID=90251750

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311621596.2A Pending CN117749675A (en) 2023-11-29 2023-11-29 A CMS communication protocol testing method and system

Country Status (1)

Country Link
CN (1) CN117749675A (en)

Similar Documents

Publication Publication Date Title
CN102156673B (en) Test case description oriented GUI (Graphical User Interface) automatic test system and test method thereof
CN108366067B (en) System and method for testing consistency of universal service protocol of power system
CN103544095B (en) The method for supervising of server program and system thereof
CN103646104A (en) Hard real-time fault diagnosis method and system
CN108614870B (en) System and method for fast batch storage of data information collected from external power equipment
CN112306877A (en) Power system fault operation and maintenance method and system
CN116627609A (en) Hive batch processing-based scheduling method and device
CN112445692B (en) A use case testing method and terminal
CN114238081A (en) A method and system suitable for batch testing of small satellites
CN117749675A (en) A CMS communication protocol testing method and system
Han et al. Automated warship software testing system based on loadrunner automation API
CN114915562B (en) IEC 61850 station control layer network communication service simulation server and simulation method
CN112069144A (en) Method and device for collecting system logs by multi-control cluster
CN113609025A (en) A software program testing method, device, medium and equipment
JP2024526023A (en) A self-optimizing analysis system for core dumps
CN114661620A (en) A functional module-based interface automated testing system and method
CN106933723A (en) A kind of measurement result storage method for being applied to Network Analyzer
CN116225944B (en) A software testing system and method for pre-setting networking environment
CN110308667A (en) A kind of method, system, device and the storage medium of automatic setting interference checking
CN116450305B (en) SOAR platform assembly execution method and device based on distributed task scheduling
CN113722129B (en) Storage reliability test method and related device
CN112445665B (en) A method and system for reproducing faults in star service software modules
CN111858326B (en) A comprehensive integration testing method for embedded real-time operating systems
CN111580953A (en) Method and device for making a scheduling simulation scene, storage medium and electronic device
CN111831561B (en) Plug-in type test case library system

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