《自动化测试方法及测试系统.pdf》由会员分享,可在线阅读,更多相关《自动化测试方法及测试系统.pdf(7页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN104298595A43申请公布日20150121CN104298595A21申请号201410514243722申请日20140929G06F11/3620060171申请人百视通网络电视技术发展有限责任公司地址200050上海市长宁区长宁路1027号1008E72发明人何茂永邱桂红张大钟74专利代理机构上海汉声知识产权代理有限公司31236代理人郭国中54发明名称自动化测试方法及测试系统57摘要本发明提供了一种自动化测试方法及测试系统,包括步骤1定义控件属性与预置测试脚本代码之间的对应关系;步骤2读入测试用例的包括控件属性的测试数据;步骤3针对读入的控制属性,查找到对应的。
2、预置测试脚本代码;步骤4根据预置测试脚本代码形成自动化测试脚本代码;步骤5执行自动化测试脚本代码,自动化测试脚本代码用于模拟手动执行测试用例中各个控件类型的动作。本发明通过控件ID与被测系统映射表中的映射关系、控件类型与被测系统映射表中的映射关系、控件类型与代码映射表中的映射关系,实现了测试用例到自动化测试脚本的自动转化,提高代码重复利用率和测试效率、缩小了代码量,降低了资源消耗和维护复杂度。51INTCL权利要求书1页说明书4页附图1页19中华人民共和国国家知识产权局12发明专利申请权利要求书1页说明书4页附图1页10申请公布号CN104298595ACN104298595A1/1页21一种。
3、自动化测试方法,其特征在于,包括如下步骤步骤1定义控件属性与预置测试脚本代码之间的对应关系;步骤2读入测试用例的测试数据,其中,所述测试数据包括控件属性;步骤3针对读入的控制属性,查找到对应的预置测试脚本代码;步骤4根据预置测试脚本代码形成自动化测试脚本代码;步骤5执行自动化测试脚本代码,其中,自动化测试脚本代码用于模拟手动执行测试用例中各个控件类型的动作。2根据权利要求1所述的自动化测试方法,其特征在于,所述控件属性为控件多种属性的组合。3根据权利要求2所述的自动化测试方法,其特征在于,所述控件属性为控件类型、控件ID两者的组合;或者控件名称、控件ID两者的组合。4根据权利要求1所述的自动化。
4、测试方法,其特征在于,将预置测试脚本代码添加到编写的自动化测试代码框架中,形成自动化测试脚本代码。5根据权利要求4所述的自动化测试方法,其特征在于,所述编写的自动化测试代码框架中设置有代码插入标记,在步骤4中,根据控件属性与预置测试脚本代码之间的对应关系,将预置测试脚本代码自动添加到所述代码插入标记处。6根据权利要求1所述的自动化测试方法,其特征在于,预置测试脚本代码以函数形式存在,自动化测试脚本代码中含有用于调用预置测试脚本代码的调用函数。7根据权利要求2所述的自动化测试方法,其特征在于,在步骤5之前,根据控件ID查找到对应的被测模块,其中,所述被测模块是所述自动化测试方法所针对的被测系统的。
5、某个测试单元;相应地,在步骤5中,自动化测试脚本代码用于模拟手动执行所述被测模块的控件类型的动作。8一种自动化测试系统,其特征在于,所述自动化测试系统用于执行权利要求1至7中任一项所述的自动化测试方法。权利要求书CN104298595A1/4页3自动化测试方法及测试系统技术领域0001本发明涉及自动化测试技术领域,特别涉及一种测试用例转化为自动化测试脚本的方法及系统。背景技术0002在自动化测试领域中,传统的自动化测试脚本的开发一般有两种方法。第一种方法是通过手工运行一次测试,同时使用自动化测试工具的录制功能,把所进行的操作记录下来,生成测试脚本。这种技术生成的脚本回放成功率比较低,后期维护也。
6、比较困难。第二种方法是编写测试框架,对测试需要的基础操作提供接口供调用,测试人员根据用例操作需求,手工编写调用接口的自动化测试脚本,这种方法对测试人员的代码水平要求很高。0003目前自动化测试中,测试人员编写完用例以后,还需要脚本开发人员单独编写一条针对此用例的自动化测试脚本,然后使用自动化测试工具运行脚本进行测试。当测试用例变更后,还需要重新编写这条测试脚本,资源耗费比较大。测试用例和测试脚本之间的维护比较复杂。0004因此有必要研究一种维护相对简的自动化测试技术方案。发明内容0005针对现有技术中的缺陷,本发明要解决的技术问题是如何将测试用例自动地转化为自动化测试脚本,以减少自动化测试脚本。
7、的代码量、资源消耗及测试用例和测试脚本之间的维护。0006为解决上述技术问题,本发明提供了一种只要被测产品中没有产生新的控件类型,就不需要修改自动化测试脚本的技术方案,在该技术方案中,测试用例中可以任意制定被测产品的流程,不会局限某个系统、某个产品的自动化测试方法。0007根据本发明提供的一种自动化测试方法,包括如下步骤0008步骤1定义控件属性与预置测试脚本代码之间的对应关系;0009步骤2读入测试用例的测试数据,其中,所述测试数据包括控件属性;0010步骤3针对读入的控制属性,查找到对应的预置测试脚本代码;0011步骤4根据预置测试脚本代码形成自动化测试脚本代码;0012步骤5执行自动化测。
8、试脚本代码,其中,自动化测试脚本代码用于模拟手动执行测试用例中各个控件类型的动作。0013优选地,所述控件属性为控件多种属性的组合。0014优选地,所述控件属性为0015控件类型、控件ID两者的组合;或者0016控件名称、控件ID两者的组合。0017优选地,将预置测试脚本代码添加到编写的自动化测试代码框架中,形成自动化测试脚本代码。说明书CN104298595A2/4页40018优选地,所述编写的自动化测试代码框架中设置有代码插入标记,在步骤4中,根据控件属性与预置测试脚本代码之间的对应关系,将预置测试脚本代码自动添加到所述代码插入标记处。0019优选地,预置测试脚本代码以函数形式存在,自动化。
9、测试脚本代码中含有用于调用预置测试脚本代码的调用函数。0020优选地,0021在步骤5之前,根据控件ID查找到对应的被测模块,其中,所述被测模块是所述自动化测试方法所针对的被测系统的某个测试单元;0022相应地,在步骤5中,自动化测试脚本代码用于模拟手动执行所述被测模块的控件类型的动作。0023根据本发明提供的一种自动化测试系统,所述自动化测试系统用于执行上述的自动化测试方法。0024与现有技术相比,本发明具有如下的有益效果0025本发明通过控件ID与被测系统映射表中的映射关系、控件类型与被测系统映射表中的映射关系、控件类型与代码映射表中的映射关系,实现了测试用例到自动化测试脚本的自动转化,提。
10、高代码重复利用率、缩小了代码量、提高了自动化测试的效率,降低了资源消耗和维护复杂度。附图说明0026通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显0027图1为实现自动化测试一个测试用例的流程。具体实施方式0028下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。0029本发明的方法需要需求人员、产品开发人员和自动化测试脚本代码开发人员共同配合,产生控件ID。
11、与被测系统映射表、控件类型与代码映射表,例如表1和表2所示,其中,控件ID与被测系统映射表记录了控件名称、测试用例中控件ID、被测系统中的控件ID之间的映射关系,控件类型与代码映射表记录了控件类型、测试用例中控件类型、被测产品中控件类型、测试脚本中控件类型的映射关系。0030表1控件ID与被测系统映射表0031说明书CN104298595A3/4页50032表2控件类型与代码映射表00330034本发明的方法和系统可以连接测试用例管理工具,读取测试用例,通过解析模块解析测试用例信息,生成脚本可读的信息,根据测试用例中的控件ID在控件ID与被测系统映射表中查找对应被测模块,确定被测模块;根据测试。
12、用例中的控件类型在控件类型与代码映射表中查找对应的测试脚本代码,执行自动化测试脚本,最终产生测试结果。0035具体步骤如图1所示,包括0036步骤1读取用户编写的测试用例,例如可以连接测试用例管理工具,从存储有用户编写测试用例的测试用例管理工具中读取,测试用例中的控件类型和操作命令、自动化测试脚本中的控件类型和操作命令、被测试系统中控件类型和操作命令三者一致,测试用例中的控件ID与被测系统的控件ID一致。0037步骤2解析测试用例信息,生成脚本可读的信息。0038步骤3根据测试用例中的控件ID在控件ID与被测系统映射表中查找对应被测模块。具体地,根据测试用例中的控件ID,在控件ID与被测系统映。
13、射表中,首先查找到对应的被测系统中的控件ID,然后根据该被测系统中的控件ID再查找到对应的被测模块,其中,所述被测模块是被测系统的某个测试单元,例如,一个文本框、一个多选框、一个单选框等。0039步骤4根据测试用例中的控件类型在控件类型与代码映射表中查找对应的自动化测试脚本代码。具体为,根据测试用例中的控件类型,在控件类型与代码映射表中,首先查找到对应的测试脚本中控件类型,然后根据该测试脚本中控件类型再查找到对应的自动化测试脚本代码。0040步骤5执行步骤4的控件类型对应的自动化测试脚本代码,该自动化测试脚本代码用于模拟手动执行通过步骤3查找到的被测模块的控件类型的动作。0041步骤6输出自动。
14、化测试脚本代码产生的实际结果。0042步骤7比较自动化测试脚本代码产生的实际结果与测试用例中的预期结果是否一致,如果一致说明测试通过;如果不一致说明测试不通,并且指出不通过的原因0043使用本发明的方法,即使当测试用例变更后,测试人员只需按照关键字规范,手工修改一次测试用例即可。说明书CN104298595A4/4页60044下面对本发明的一个优选具体实施方式进行描述。在本具体实施方式中,包括以下步骤0045STEP1需求人员、产品开发人员和自动化测试脚本代码开发人员共同定义好被测产品中控件类型与控件的ID,产生相应的映射表,标准控件的使用标准定义。0046STEP2产品开发人员和自动化测试脚。
15、本代码开发人员根据映射表为被测产品的每个控件设置控件类型、控件ID。0047STEP3定义测试用例内容以及格式;测试用例内容包含控件类型、控件ID等;测试用例的格式如系统模块名称,控件类型,控件ID,输入内容,操作命令,预期输出,时间输出,测试结果。0048STEP4执行自动化测试脚本代码,包括如下子步骤0049STEP41读取用户编写的测试用例,所述测试用例中的控件类型和操作命令、自动化测试脚本中控件类型和操作命令、被测试系统中控件类型和操作命令三者一致,测试用例中的控件ID与被测系统的控件ID一致。例如,可以首先连接存储有用户编写的测试用例的测试用例管理工具,然后从测试用例管理工具中读取测。
16、试用例。0050STEP42解析测试用例信息,生成脚本可读的信息。0051STEP43根据测试用例中的控件ID在控件ID与被测系统映射表中查找对应被测模块。0052STEP44根据测试用例中的控件类型在控件类型与代码映射表中查找对应的测试脚本代码。0053STEP45执行自动化测试脚本代码,这段自动化测试脚本代码是模拟手动执行测试用例中各种控件类型的动作。0054STEP46输出自动化测试脚本代码产生的实际结果。0055STEP47比较自动化测试脚本代码产生的实际结果与测试用例中的预期结果是否一致,如果一致说明测试通过;如果不一致说明测试不通,并且指出不通过的原因。0056其中,STEP4是自动化测试一个控件过程,在自动化测试脚本代码中,分别实现模拟手动执行每个控件类型的动作,并且使每一个控件类型的动作成为一个独立的模块,根据控件类型可以查找到对应的测试脚本代码。脚本代码可以重复利用,只要被测产品中没有产生新的控件类型,就不需要修改自动化测试脚本。测试用例中可以任意制定被测产品的流程,不会局限某个系统、某个产品。0057以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。说明书CN104298595A1/1页7图1说明书附图CN104298595A。