一种生成测试用例的方法及装置制造方法及图纸

技术编号:35831943 阅读:21 留言:0更新日期:2022-12-03 14:01
本发明专利技术公开了一种生成测试用例的方法及装置,涉及计算机技术领域。该方法的一具体实施方式包括:从一个或多个接口对应的软件开发工具包中获取测试条件;所述测试条件包括:多个接口之间的依赖关系、接口的参数范围和URL调试路径;根据所述URL调试路径和所述参数范围,生成测试URL以及所述测试URL对应的入参;根据所述入参对所述测试URL进行访问调试,生成所述测试URL对应的出参;根据所述多个接口之间的依赖关系以及各个接口分别对应的所述出参和所述入参,生成多个接口对应的全链路测试用例。该实施方式提高了互动类产品的测试效率,并且提高了产品测试覆盖率。并且提高了产品测试覆盖率。并且提高了产品测试覆盖率。

【技术实现步骤摘要】
一种生成测试用例的方法及装置


[0001]本专利技术涉及计算机
,尤其涉及一种生成测试用例的方法及装置。

技术介绍

[0002]互动类产品为了追求用户体验,在互动玩法和游戏体验上不断求新求变,因此在产品迭代上呈现出越来越快的节奏。
[0003]由于互动类产品迭代越来越快,因此在互动类产品的测试阶段,没有现成的测试数据或者线上流量数据作为集成回归测试的数据输入,而需要测试人员模仿用户真实行为完成各种互动任务环节,以根据互动数据来生成测试数据。
[0004]在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0005]通过测试人员点击应用界面或者触发接口来模仿用户真实行为的方式,需要测试人员逐次点击互动界面或逐个触发互动接口,这需要投入大量的时间,降低了测试效率;并且,对于涉及多个接口依赖的较为复杂的产品功能,人工测试难以确保测试覆盖率。

技术实现思路

[0006]有鉴于此,本专利技术实施例提供一种生成测试用例的方法及装置,通过软件开发工具包封装多个接口之间的依赖关系、接口的参数范围和URL调试路径等测试条件,由此可以直接从软件开发工具包中读取测试条件,并自动生成测试URL及相应的入参,然后根据测试URL和入参自动完成URL访问调试。从而不再需要测试人员进行拼接URL、访问浏览器进行调试、再保存出参等一系列手工操作,减少测试代码的手工重复工作,进而提高测试效率。并且,还可根据多个接口之间的依赖关系以及各个接口分别对应的出参和入参,生成多个接口对应的全链路测试用例,从而能有效针对互动类产品的各环节路径进行识别分析,实现互动类产品的全路径测试用例,大幅降低测试人员测试验证工作量,进一步提高测试效率,同时提高产品测试覆盖率。
[0007]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种生成测试用例的方法。
[0008]本专利技术实施例的一种生成测试用例的方法包括:从一个或多个接口对应的软件开发工具包中获取测试条件;所述测试条件包括:多个接口之间的依赖关系、接口的参数范围和URL调试路径;
[0009]根据所述URL调试路径和所述参数范围,生成测试URL以及所述测试URL对应的入参;
[0010]根据所述入参对所述测试URL进行访问调试,生成所述测试URL对应的出参;
[0011]根据所述多个接口之间的依赖关系以及各个接口分别对应的所述出参和所述入参,生成多个接口对应的全链路测试用例。
[0012]可选地,所述测试条件还包括接口的调用次数;所述根据所述多个接口之间的依赖关系以及各个接口分别对应的所述出参和所述入参,生成多个接口对应的全链路测试用
例,包括:
[0013]根据所述依赖关系和调用次数,生成用户行为的全路径用例图;
[0014]根据所述全路径用例图,确定所述多个接口分别对应的所述出参和所述入参的映射关系;
[0015]根据所述映射关系,生成所述全链路测试用例。
[0016]可选地,所述根据所述多个接口之间的依赖关系以及各个接口分别对应的所述出参和所述入参,生成多个接口对应的全链路测试用例,包括:
[0017]基于Java反射技术,获取所述依赖关系对应的接口类路径;
[0018]根据所述接口类路径生成所述多个接口对应的URL测试链路;
[0019]根据所述URL测试链路和所述映射关系,生成多个接口对应的全链路测试用例。
[0020]可选地,所述根据所述全路径用例图,确定所述多个接口分别对应的所述出参和所述入参的映射关系,包括:
[0021]获取各个接口分别对应的参数结构;
[0022]根据所述参数结构、各个所述接口分别对应的所述出参和所述入参、以及所述全路径用例图中的调用顺序,确定每个接口与其具有依赖关系的其他接口之间的参数转换关系;
[0023]根据所述参数转换关系确定所述映射关系。
[0024]可选地,该方法还包括:
[0025]接收测试人员针对目标接口发起的测试指令,所述测试指令包括所述目标接口对应的入参;
[0026]根据所述测试指令对所述目标接口进行测试,得到所述目标接口对应的出参;
[0027]根据所述目标接口的入参和出参、以及所述目标接口与其他接口之间的依赖关系,更新所述全链路测试用例。
[0028]可选地,所述测试条件还包括:各个所述接口分别对应的依赖接口;
[0029]将每一个所述接口作为当前接口执行:在生成所述测试URL对应的出参之后,保存所述出参;
[0030]根据所述测试条件,确定所述当前接口对应的依赖接口;
[0031]根据所述依赖接口的测试条件以及所述当前接口的出参,生成所述依赖接口的出参。
[0032]可选地,该方法还包括:
[0033]预先将所述一个或多个接口的所述测试条件封装于所述软件开发工具包中,并提供给待测试的应用服务。
[0034]为实现上述目的,根据本专利技术实施例的又一方面,提供了一种生成测试用例的装置。
[0035]本专利技术实施例的一种生成测试用例的装置包括:
[0036]测试条件获取模块,用于从一个或多个接口对应的软件开发工具包中获取测试条件;所述测试条件包括:多个接口之间的依赖关系、接口的参数范围和URL调试路径;
[0037]调试模块,用于根据所述URL调试路径和所述参数范围,生成测试URL以及所述测试URL对应的入参;根据所述入参对所述测试URL进行访问调试,生成所述测试URL对应的出
参;
[0038]用例生成模块,用于根据所述多个接口之间的依赖关系以及各个接口分别对应的所述出参和所述入参,生成多个接口对应的全链路测试用例。
[0039]为实现上述目的,根据本专利技术实施例的又一方面,提供了一种生成测试用例的电子设备。
[0040]本专利技术实施例的一种生成测试用例的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术实施例的一种生成测试用例的方法。
[0041]为实现上述目的,根据本专利技术实施例的再一方面,提供了一种计算机可读存储介质。
[0042]本专利技术实施例的一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本专利技术实施例的一种生成测试用例的方法。
[0043]上述专利技术中的一个实施例具有如下优点或有益效果:通过软件开发工具包封装多个接口之间的依赖关系、接口的参数范围和URL调试路径等测试条件,由此可以直接从软件开发工具包中读取测试条件,并自动生成测试URL及相应的入参,然后根据测试URL和入参自动完成URL访问调试。从而不再需要测试人员进行拼接URL、访问浏览器进行调试、再保存出参等一系列手工操作,减少测试代码的手工重复工作,从而提高测试效率。并且,还可根据多个接口之间的依赖关系以及各个接口分别对应的出参和入参,生成多个接口对应的全链路测本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种生成测试用例的方法,其特征在于,包括:从一个或多个接口对应的软件开发工具包中获取测试条件;所述测试条件包括:多个接口之间的依赖关系、接口的参数范围和URL调试路径;根据所述URL调试路径和所述参数范围,生成测试URL以及所述测试URL对应的入参;根据所述入参对所述测试URL进行访问调试,生成所述测试URL对应的出参;根据所述多个接口之间的依赖关系以及各个接口分别对应的所述出参和所述入参,生成多个接口对应的全链路测试用例。2.根据权利要求1所述的方法,其特征在于,所述测试条件还包括接口的调用次数;所述根据所述多个接口之间的依赖关系以及各个接口分别对应的所述出参和所述入参,生成多个接口对应的全链路测试用例,包括:根据所述依赖关系和调用次数,生成用户行为的全路径用例图;根据所述全路径用例图,确定所述多个接口分别对应的所述出参和所述入参的映射关系;根据所述映射关系,生成所述全链路测试用例。3.根据权利要求2所述的方法,其特征在于,所述根据所述多个接口之间的依赖关系以及各个接口分别对应的所述出参和所述入参,生成多个接口对应的全链路测试用例,包括:基于Java反射技术,获取所述依赖关系对应的接口类路径;根据所述接口类路径生成所述多个接口对应的URL测试链路;根据所述URL测试链路和所述映射关系,生成多个接口对应的全链路测试用例。4.根据权利要求2所述的方法,其特征在于,所述根据所述全路径用例图,确定所述多个接口分别对应的所述出参和所述入参的映射关系,包括:获取各个接口分别对应的参数结构;根据所述参数结构、各个所述接口分别对应的所述出参和所述入参、以及所述全路径用例图中的调用顺序,确定每个接口与其具有依赖关系的其他接口之间的参数转换关系;根据所述参数转换关系确定所述映射关系。5.根据权利要求1所述的方法,其特征在于,还包括:接收测试人员针对目标接...

【专利技术属性】
技术研发人员:陶亮陈渠刘哲辉
申请(专利权)人:北京京东世纪贸易有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1