一种基于特征字的继电保护装置自动测试方法与装置制造方法
【专利摘要】本发明涉及一种基于特征字的继电保护装置自动测试方法与装置,其特点在于面向特定测试业务的测试用例的生成,而不像现有技术那样,测试用例必须面对特定装置。通过引入特征字,可以编制基于特征字的面向特定测试业务的测试用例模板,在对具体装置进行测试时,根据装置的信息点与测试用例模板中特征字的映射关系,将测试用例模板实例化,生成面向特定测试业务的测试用例,从而适用于该保护装置的测试,该方法可以显著减少测试用例的编写工作量,快速完成新被测装置的测试工作。该方法使测试用例最大程度的重用,提高自动测试系统的测试效率。
【专利说明】—种基于特征字的继电保护装置自动测试方法与装置【技术领域】
[0001]本发明涉及继电保护装置的自动化测试领域,特别是一种基于特征字的自动测试方法。
【背景技术】
[0002]现有的继电保护装置自动测试系统如附图1所示,包括:测试仪客户端;测试仪;自动测试执行模块;开入开出卡;保护装置。
[0003]在常规测试中,测试仪、开入开出卡和被测装置构成测试主回路,测试仪输出电流、电压,通过开入开出卡,送入被测装置。测试仪客户端和自动测试执行模块构成软件测试控制部分,保护装置的输入条件来自于测试仪。对测试仪的控制是测试仪客户端通过测试用例完成的,测试仪有测试报告输出,测试过程中,需要自动测试执行模块和开入开出卡的配合。自动测试执行模块负责同时与测试仪客户端、装置通讯及对开入开出卡控制。
[0004]简单来讲,自动测试系统的测试过程包括:
[0005]I)自动测试执行模块根据特定装置的信息点表配置测试用例;
[0006]2)自动测试执行模块调用测试用例进行自动测试,通过测试仪客户端交互控制测试仪输出;通过与开入开出卡交互,控制被测装置的输入信息;通过与被测装置的报文交互获取测试结果;
[0007]自动测试执行模块执行测试用例,以信息点方式与装置进行交互;装置动作后将返回遥信、定值设定结果等信息点,回传给自动测试执行模块;自动测试执行模块根据装置反馈结果进行判断;`
[0008]3)自动测试执行模块完成测试数据整理入库,形成测试报告。
[0009]上述由自动测试执行模块配置的测试用例基于特定装置的信息点,测试用例直接引用装置点表信息编写,测试工具与被测装置之间采用信息点方式交互,这种测试用例针对性很强,即只适用于特定装置测试。
[0010]现有自动测试系统的优点在于:将常规手动测试过程自动化;对同种类型装置,测试用例固定化,具备测试用例库;对同种类型装置,测试用例重复使用;测试用例可随意组合,实现不同目的的测试。
[0011]其缺点在于:现有自动测试系统测试,针对具体的测试装置,需要根据装置信息点表编写具体的测试用例,对于不同型号装置,测试用例不再适用,需要编写新的测试用例;测试用例编写和维护工作量巨大;测试用例不易编写。
[0012]一台装置的保护测试用例通常有200~300个,就需要编写200~300个测试用例。多台装置的测试所需的测试用例数量就更庞大了。如此多测试用例,编写和维护工作都极为繁重。
[0013]如何能减少自动测试系统中测试用例的数量,用有限的测试用例测试不同类型的装置,是亟待解决的问题。
【发明内容】
[0014]本发明的目的是提供一种基于特征字的继电保护装置自动测试方法,用以解决目前采用自动测试系统进行保护装置测试,对于同种型号的装置,测试用例可以重复使用,但对于不同类型的装置,尽管测试业务相同,但测试用例不能通用,测试用例的编写和管理维护需要投入很大精力,基于此方法构建的自动测试系统适应力较差的问题。
[0015]为实现上述目的,本发明的方案包括:
[0016]一种基于特征字的继电保护装置自动测试方法,步骤如下:
[0017]I)在对特定装置进行测试时,根据特定装置的信息点与测试用例模板中特征字的映射关系,将测试用例模板映射为可执行的测试用例;所述测试用例模板是以设定的特征字规则,面向测试业务编写的测试用例;
[0018]2 )由自动测试执行模块执行所述可执行的测试用例,进行自动测试。
[0019]所述将测试用例模板映射为可执行的测试用例是在进行测试之前完成的。
[0020]特征字映射模块调用测试用例模板库中的至少一个测试用例模板,经过映射,形成测试用例库。
[0021]所述将测试用例模板映射为可执行的测试用例是在程序初始化时完成的。
[0022]一种基于特征字的继电保护装置自动测试装置,包括:
[0023]I)在对特定装置进行测试时,根据特定装置的信息点与测试用例模板中特征字的映射关系,将测试用例模板映射为可执行的测试用例的模块;所述测试用例模板是以设定的特征字规则,面向测试业务编写的测试用例;
[0024]2 )由自动测试执行模块执行所述可执行的测试用例,进行自动测试的模块。
[0025]所述将测试用例模板映射为可执行的测试用例是在进行测试之前完成的。
[0026]特征字映射模块调用测试用例模板库中的至少一个测试用例模板,经过映射,形成测试用例库。
[0027]所述将测试用例模板映射为可执行的测试用例是在程序初始化时完成的。
[0028]征字是面向业务对象,替代装置信息点的形式参数。使用特征字编辑具有通用意义的测试用例模板,通过映射关系,特征字被装置信息点替代后使用。本发明的自动测试方法,其特点在于面向特定测试业务的测试用例的生成,而不像现有技术那样,测试用例必须面对特定装置。通过引入特征字,可以编制基于特征字的面向特定测试业务的测试用例模板,在对具体装置进行测试时,根据装置的信息点与测试用例模板中特征字的映射关系,将测试用例模板实例化,生成面向特定测试业务的测试用例,从而适用于该保护装置的测试,该方法可以显著减少测试用例的编写工作量,快速完成新被测装置的测试工作。该方法使测试用例最大程度的重用,提高自动测试系统的测试效率。
【专利附图】
【附图说明】
[0029]图1是继电保护装置自动测试系统结构图;
[0030]图2是本发明的实施例1的原理图;
[0031]图3是本发明的实施例2的原理图。
【具体实施方式】[0032]下面结合附图对本发明做进一步详细的说明。
[0033]本发明的自动测试方法,改进在于软件控制部分,至少增加了特征字映射模块和(包含特征字的)测试用例模板。自动测试执行模块通过报文交互与被测装置通信获取装置的信息点表,装置的信息点与特征字存在映射关系,自动测试执行模块完成测试用例模板对装置信息点的映射。自动测试执行模块通过控制测试仪和开入开出卡实现对测试装置的加量控制及获取信息反馈,利用反馈结果判断待测保护功能是否成功动作。
[0034]具体来说,基于特征字编写的测试用例模板是规范化的测试文件,测试点以特征字的形式出现。装置信息点与特征字对应的特征字映射表,以特征字映射模块形式出现在测试系统中,只要在测试用例模板中的遥控、定值设定等特征字控制量下发到装置之前,完成特征字与装置信息点的映射,装置就可以正确识别测试模板的控制命令。基于特征字的测试用例由自动测试执行模块编辑,多个测试用例可以集合成库进行管理,自动测试执行模块可以随时调用。
[0035]通过引入特征字,将测试用例以模板形式固定下来,测试用例直接面向测试业务编写,针对具体装置的测试,通过调用测试用例库中的测试用例模板,根据装置的信息点与特征字映射关系将测试用例模板实例化,再用于具体装置的测试,提高测试用例的可重用性。
[0036]编写基于特征字的测试用例模板,特征字本身是有具体含义的。根据特征字含义可以编制出面向具体业务需求的测试用例,而不再面向装置信息点编写测试用例。编写有限的测试用例模板用于测试,可以有效简化测试用例数量。
[0037]基于特征字的测试用例采用规范化的编写方法,遵循预定义的语法规则,通常以文本方式体现。针对定值测试、遥测测试等不同类型的测试业务,需要编写不同的测试用例。这些面向不同测试业务的测试用例构成了基于特征字的测试用例库。
[0038]以保护测试中软压板的投退功能为例,由于装置自身字符设置限制等因素,导致装置A、B、C中过流I段软压板遥控信息点描述方式不同,如装置A描述为“过流I段”,信息体地址为B220 ;装置B描述为“过流一段”,信息体地址为B231 ;装置C描述为“过流I软压板”,信息体地址为B215,针对这三台装置编写的测试用例,要分别使用对应的信息体地址编写,对应通讯报文中标示,引入特征字方法以后,可统一采用“过流I段软压板”这一特征字,装置只需分别提供各自名称与该特征字的映射关系,自动测试执行模块调用测试用例,将测试用例中的特征字分别与各装置名称和信息体地址映射,即可适用三台装置分别测试。
[0039]特征字映射模块完成装置信息点与测试用例模板中特征字的转换。在自动测试系统中直接编写或调用的测试用例模板,具体装置并不能识别,测试用例中的控制指令也不能被装置执行,为了解决这个问题,在装置和测试用例模板之间建立一个联系通道,这就是被测装置信息与特征字对应的特征字映射表。保护装置包含遥信、遥测、遥控、遥脉及定值等类型信息点。面对不同的测试业务,这些信息点的全部或部分需要进行测试。编写被测装置信息点与特征字库对应的特征字映射表就是要建立信息点与特征字的对应关系。不同类型的装置包含不同的信息点表,信息点与特征字映射关系也不同。该映射关系可以以表格或其他文件形式存在。
[0040]为了便于理解,装置信息点与特征字映射关系可以看做是具体装置与测试用例模板的“通讯协议”,借助于该映射关系,测试用例模板可以被具体装置准确识别。由测试用例模板到测试用例,本文称之为实例化。
[0041]显然基于特征字编写的测试用例模板可以对装置实例化后实现重用。测试用例中的测试点不是基于特定装置信息点编写,而是通过特征字与装置信息点建立联系,通过实例化过程以适用特定保护装置的测试,这种方法很好的提高了测试用例自身的通用性,能显著降低测试工作量。大量的测试用例模板可以形成测试用例目标库以便进行管理使用。
[0042]根据特征字映射模块在自动测试过程中所处的位置不同,本发明有以下两种实施例。
[0043]实施例1
[0044]如图2所示,所有测试之前完成实例化,这个过程分以下步骤进行:
[0045]a)特征字映射模块调用包含特征字的测试用例模板库中的一个(或多个)测试用例模板;
[0046]b)特征字映射模块将调用的测试用例模板映射为包含被测装置信息点的测试用例(形成包含被测装置信息点的测试用例库);
[0047]c)自动测试执行模块调用上述映射完成后的测试用例;
[0048]d)自动测试执行模块按照传统的测试方式执行测试用例;
[0049]e)自动测试执行模块根据被测装置的反馈信息判断测试结果。
[0050]以上过程与传统测试系统相比,离线增加了一个特征字映射模块,通过将基于特征字的测试用例映射成包含被测装置点信息的测试用例,供自动测试执行模块调用,之后的测试过程与传统方法一致。本实施例中,为了批量处理,也可以调用多个测试用例模板,然后经过映射形成测试用例库,如以上步骤中括号中的内容。传统的测试方式包括:自动测试执行模块执行测试用例,以信息点方式与被测装置进行交互;被测装置动作后将返回遥信、定值设定结果等信息点,回传给自动测试执行模块;自动测试执行模块根据被测装置反馈结果进行判断。
[0051]实施例2
[0052]如图3,单个测试对象测试前逐个完成实例化,与实施例1的差别仅在于前几个步骤:
[0053]a)调用测试用例模板库中的测试用例模板;
[0054]b)程序初始化中加载特征字映射模块,特征字映射模块将调用的测试用例模板映射为包含被测装置信息点的测试用例,完成实例化;
[0055]c)自动测试执行模块执行测试用例…(后略)。
[0056]以上过程特点在于程序初始化时完成测试用例特征字对信息点的映射。
[0057]以上给出一种具体的实施方式,但本发明不局限于所描述的实施方式。本发明的基本思路在于上述方案,对本领域普通技术人员而言,根据本发明的教导,设计出各种变形的方法、模块并不需 要花费创造性劳动。在不脱离本发明的原理和精神的情况下对实施方式进行的变化、修改、替换和变型仍落入本发明的保护范围内。
【权利要求】
1.一种基于特征字的继电保护装置自动测试方法,其特征在于,步骤如下: I)在对特定装置进行测试时,根据特定装置的信息点与测试用例模板中特征字的映射关系,将测试用例模板映射为可执行的测试用例;所述测试用例模板是以设定的特征字规贝U,面向测试业务编写的测试用例; 2 )由自动测试执行模块执行所述可执行的测试用例,进行自动测试。
2.根据权利要求1所述的一种基于特征字的继电保护装置自动测试方法,其特征在于,所述将测试用例模板映射为可执行的测试用例是在进行测试之前完成的。
3.根据权利要求2所述的一种基于特征字的继电保护装置自动测试方法,其特征在于,特征字映射模块调用测试用例模板库中的至少一个测试用例模板,经过映射,形成测试用例库。
4.根据权利要求1所述的一种基于特征字的继电保护装置自动测试方法,其特征在于,所述将测试用例模板映射为可执行的测试用例是在程序初始化时完成的。
5.一种基于特征字的继电保护装置自动测试装置,其特征在于,包括: I)在对特定装置进行测试时,根据特定装置的信息点与测试用例模板中特征字的映射关系,将测试用例模板映射为可执行的测试用例的模块;所述测试用例模板是以设定的特征字规则,面向测试业务编写的测试用例; 2)由自动测试执行模块执行所述可执行的测试用例,进行自动测试的模块。
6.根据权利要求5所述的一种基于特征字的继电保护装置自动测试装置,其特征在于,所述将测试用例模板映射为可执行的测试用例是在进行测试之前完成的。
7.根据权利要求6所述的一种基于特征字的继电保护装置自动测试装置,其特征在于,特征字映射模块调用测试用例模板库中的至少一个测试用例模板,经过映射,形成测试用例库。
8.根据权利要求5所述的一种基于特征字的继电保护装置自动测试装置,其特征在于,所述将测试用例模板映射为可执行的测试用例是在程序初始化时完成的。
【文档编号】G01R31/00GK103675528SQ201310610303
【公开日】2014年3月26日 申请日期:2013年11月26日 优先权日:2013年11月26日
【发明者】温东旭, 邢玉龙, 杨震辉, 马仪成, 郑晓庆 申请人:许继电气股份有限公司, 许昌许继软件技术有限公司