一种应用程序测试方法、装置、存储介质及电子设备与流程

文档序号:35870577发布日期:2023-10-28 03:54阅读:23来源:国知局
一种应用程序测试方法、装置、存储介质及电子设备与流程

本发明涉及测试,尤其涉及一种应用程序测试方法、装置、计算机可读存储介质及电子设备。


背景技术:

1、随着网络的高速发展,互联网产品越来越成熟,互联网产品的快速迭代使得互联网产品在开发过程中的研发与测试也变得尤为重要。在现有技术中,研发人员一般根据产品需求进行功能版本迭代,测试人员则根据需求设计测试用例。

2、然而,研发人员在研发过程中新增或调整业务逻辑后,可能会使应用程序中的其它功能出现bug或者存在一些隐藏性、功能性的bug,如果测试人员不具备检查代码的能力,可能无法检查到这些bug,则会导致无法顺利实现程序测试,并且不同测试人员对相同需求难免会产生理解误差,设计输出的测试用例也会有所差异,导致程序测试的测试过程不统一,从而影响测试结果的准确性。


技术实现思路

1、本发明实施例的目的在于,提供一种应用程序测试方法、装置、计算机可读存储介质及电子设备,能够对应用程序进行统一的自动化测试,实现界面化与全方位的测试能力,提高测试结果的准确性。

2、为了实现上述目的,本发明实施例提供了一种应用程序测试方法,包括:

3、获取待测试业务的原应用程序的基础数据,并根据所述基础数据生成基础流程图;

4、获取所述待测试业务的部署运行程序的运行数据,并根据所述运行数据生成运行流程图;

5、对所述基础流程图和所述运行流程图进行流程校验,并在校验通过时,根据所述运行流程图生成业务流程图;

6、为所述业务流程图中的每一个节点生成并注入与节点匹配的测试用例,获得可执行业务流程图;

7、通过图形化的方式执行所述可执行业务流程图中的每一个节点匹配的测试用例。

8、进一步的,所述方法还包括:

9、根据程序相互依赖关系扫描所述待测试业务的所有远程调用服务的服务入口,生成依赖回归执行图;

10、根据所述待测试业务的所有远程调用服务的服务地址,反向查找出所有远程调用关系并生成远程回归执行图;

11、则,所述通过图形化的方式执行所述可执行业务流程图中的每一个节点匹配的测试用例,包括:

12、基于所述依赖回归执行图和所述远程回归执行图,通过图形化的方式执行所述可执行业务流程图中的每一个节点匹配的测试用例。

13、进一步地,所述获取待测试业务的原应用程序的基础数据,并根据所述基础数据生成基础流程图,包括:

14、通过扫描器对待测试业务的原应用程序的程序入口进行扫描,获取基础数据;其中,所述基础数据包括自定义流程定义符、配置的函数体和入参数据;

15、将所述自定义流程定义符与所述原应用程序进行一致性匹配,生成基础流程图。

16、进一步地,所述获取所述待测试业务的部署运行程序的运行数据,并根据所述运行数据生成运行流程图,包括:

17、通过扫描器对所述待测试业务的部署运行程序进行扫描,获取运行数据;其中,所述运行数据包括运行状态、开关配置、常量和初始化变量;

18、根据所述运行数据生成运行流程图。

19、进一步地,所述对所述基础流程图和所述运行流程图进行流程校验,包括:

20、根据所述基础流程图中的节点与关联关系,对所述基础流程图和所述运行流程图进行流程校验,以判断所述基础流程图与所述运行流程图是否满足完全包含的关系;

21、当所述基础流程图完全包含所述运行流程图时,判定校验通过,否则,判定校验不通过。

22、进一步地,所述为所述业务流程图中的每一个节点生成并注入与节点匹配的测试用例,获得可执行业务流程图,包括:

23、从所述基础流程图中获取入参列表、逻辑语法、程序启动时加载的配置变量/开关;

24、利用所述运行流程图的流程信息进行逐行解析,以匹配所述入参列表中的入参变量,解析所述逻辑语法和所述配置变量/开关;

25、获取服务器请求配置;其中,所述服务器请求配置包括程序启动的服务器地址及端口,运行程序中的所有服务的扩展地址集合及每个服务的请求方式、入参类型,根据服务器地址、端口和服务扩展地址生成的请求地址信息;

26、对所述入参列表中的每个入参变量进行解析与定位;其中,所述解析与定位包括解析每个入参变量的数据类型,定位每位入参变量的使用位置及当前所在位置,解析每个入参变量是否有逻辑比较过程并记录有逻辑比较过程的入参变量的比较方式,定位分析每个入参变量的值是否有更改并标记有更改的入参变量的更改位置及更改值;

27、根据所述逐行解析后获得的数据和所述解析与定位后获得的数据,为所述业务流程图中的每一个分支与节点生成入参变量动态列表;

28、对所述业务流程图中的每一个分支所使用的入参变量动态列表进行汇总,并根据每个入参变量的列表值生成预期返回结果;

29、基于所述服务器请求配置、所述入参变量动态列表和所述预期返回结果,将所述服务器请求配置以一对多的关系生成可执行的测试用例;

30、为所述业务流程图中的每一个分支与节点绑定生成的测试用例,获得可执行业务流程图。

31、进一步地,所述方法还包括:

32、将每条测试用例在执行过程中与所述可执行业务流程图中的链路进行关联绑定;

33、通过将节点与节点之间的关联进行点亮的方式,标记每条测试用例执行的链路过程和结果。

34、为了实现上述目的,本发明实施例还提供了一种应用程序测试装置,用于实现上述任一项所述的应用程序测试方法,所述装置包括:

35、基础流程图生成模块,用于获取待测试业务的原应用程序的基础数据,并根据所述基础数据生成基础流程图;

36、运行流程图生成模块,用于获取所述待测试业务的部署运行程序的运行数据,并根据所述运行数据生成运行流程图;

37、业务流程图生成模块,用于对所述基础流程图和所述运行流程图进行流程校验,并在校验通过时,根据所述运行流程图生成业务流程图;

38、可执行业务流程图生成模块,用于为所述业务流程图中的每一个节点生成并注入与节点匹配的测试用例,获得可执行业务流程图;

39、测试用例执行模块,用于通过图形化的方式执行所述可执行业务流程图中的每一个节点匹配的测试用例。

40、本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行上述任一项所述的应用程序测试方法。

41、本发明实施例还提供了一种电子设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器在执行所述计算机程序时实现上述任一项所述的应用程序测试方法。

42、与现有技术相比,本发明实施例提供了一种应用程序测试方法、装置、计算机可读存储介质及电子设备,获取待测试业务的原应用程序的基础数据,并根据基础数据生成基础流程图;获取待测试业务的部署运行程序的运行数据,并根据运行数据生成运行流程图;对基础流程图和运行流程图进行流程校验,并在校验通过时,根据运行流程图生成业务流程图;为业务流程图中的每一个节点生成并注入与节点匹配的测试用例,获得可执行业务流程图;通过图形化的方式执行可执行业务流程图中的每一个节点匹配的测试用例。通过采用本发明实施例,测试人员无需具备代码检查能力即可根据可执行业务流程图通过图形化的方式选择每个节点自动执行不同的测试用例,可视化地操作完成对每个节点的测试,从而能够对应用程序进行统一的自动化测试,实现界面化与全方位的测试能力,提高测试结果的准确性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1