[发明专利]一种测试用例动态配置、加载、运行的方法有效
申请号: | 201611171236.7 | 申请日: | 2016-12-17 |
公开(公告)号: | CN106776322B | 公开(公告)日: | 2019-12-10 |
发明(设计)人: | 张鑫锯;张倪旺;沈思忠 | 申请(专利权)人: | 福建瑞之付微电子有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 35100 福州元创专利商标代理有限公司 | 代理人: | 蔡学俊;丘鸿超 |
地址: | 350003 福建省福州市鼓楼区*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 测试 动态 配置 加载 运行 方法 | ||
本发明涉及一种测试用例动态配置、加载、运行的方法。该方法:首先,在测试套件中引入外部配置文件,通过配置解析器读取并解析外部配置文件来实现对测试模块和测试用例的动态配置;然后,根据配置解析器返回的数据,通过动态加载器为测试框架动态生成相应的加载测试模块和测试用例的语句块来实现对测试模块和测试用例的动态加载;最后,通过测试执行引擎来实现测试用例的动态执行。本发明实现了测试用例代码可配置性,以及测试框架的稳定性。
技术领域
本发明涉及一种测试用例动态配置、加载、运行的方法。
背景技术
在现有的测试套件中,测试用例代码(指以代码或脚本等形式来表达测试目的的测试用例)与测试框架的关系和联系往往是以硬编码方式而存在的。测试代码与测试框架的关系与联系包括:将测试代码配置到测试框架;测试框架加载并运行已配置到测试框架中的测试代码等。现有的硬编码方式使得测试代码的配置、加载、运行等都是固化在测试框架代码中的,每当测试需求发生变化时(如,需要增加或减少一个测试模块和测试用例),都需要在测试框架代码的相应处进行增、删、改等调整。这种方式既增加了不必要的手工调整代码的工作量,极大降低了测试工作的整体效率,也难免会造成相应的错误和遗漏,显然,无法灵活地适应外部测试需求的变化。
为了解决上述问题,我们迫切希望发明一种方法,以不通过修改测试代码与测试框架间的配置、加载、运行等关系和联系的代码的方式来实现动态配置、加载、运行测试代码等目的,以提高测试用例代码的可配置性和测试框架的稳定性。
发明内容
本发明的目的在于提供一种测试用例动态配置、加载、运行的方法,该方法以不通过修改测试代码与测试框架间的配置、加载、运行等关系和联系的代码的方式来实现动态配置、加载、运行测试代码等目的,以提高测试用例代码的可配置性和测试框架的稳定性。
为实现上述目的,本发明的技术方案是:一种测试用例动态配置、加载、运行的方法,包括如下步骤,
S1:在测试套件中引入外部配置文件,通过配置解析器读取并解析外部配置文件来实现对测试模块和测试用例的动态配置;
S2:根据配置解析器返回的数据,通过动态加载器为测试框架动态生成相应的加载测试模块和测试用例的语句块来实现对测试模块和测试用例的动态加载;
S3:通过测试执行引擎来实现测试用例的动态执行。
在本发明一实施例中,该方法通过JavaScript实现。
在本发明一实施例中,所述外部配置文件包括一测试用例库,所述测试用例库由若干个测试模块组成,所述测试模块以文件夹方式存在,且该测试模块由一个测试模块主文件和若干该测试模块的具体测试用例文件组成。
在本发明一实施例中,所述外部配置文件为json配置文件,其中一个json对象即一个测试模块。
在本发明一实施例中,所述配置解析器实现外部配置文件解析的过程如下,
S51:通过Ajax加载json配置文件,加载成功后,执行步骤S52;否则,结束解析过程;
S52:解析modules下的json对象;
S53:拼接测试模块路径,生成相应数据结构;
S54:解析json对象下的cases字段,以逗号分割字符串,返回cases数组;
S55:读取cases数组中数据,拼接测试用例路径,生成相应数据结构;判断cases数组是否遍历完毕,若是,执行步骤S56;否则,返回步骤S54;
S56:判断modules下的json对象是否解析完毕,若是,执行步骤S57;否则,返回步骤S52;
S57:返回数据结构,结束解析过程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建瑞之付微电子有限公司,未经福建瑞之付微电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611171236.7/2.html,转载请声明来源钻瓜专利网。