本技术主要涉及测试,具体涉及一种测试用例生成方法及装置。
背景技术:
1、以业务为主的系统,日常版本迭代过程中,面对新增模块的需求,时常会涉及大批量字段的效验和测试,作为测试人员,测试前期需要耗费大量时间编写字段验证用例,并且此类用例重复性极高。而现有的测试主要是人工编写测试用例,测试用例生成的效率较低。
2、也即,现有技术中测试用例生成的效率较低。
技术实现思路
1、本技术提供一种测试用例生成方法及装置,旨在解决现有技术中测试用例生成的效率较低的问题。
2、第一方面,本技术提供一种测试用例生成方法,所述测试用例生成方法包括:
3、获取业务系统的新增功能模块的测试请求;
4、根据所述测试请求获取所述新增功能模块的至少两个关联文档,所述至少两个关联文档包括ued图、接口文档、数据库脚本中至少两种类型的文档;
5、获取所述至少两个关联文档的测试用例生成方案;
6、基于所述测试用例生成方案生成所述新增功能模块的测试用例集。
7、可选地,所述至少两个关联文档包括ued图,所述基于所述测试用例生成方案生成所述新增功能模块的测试用例集,包括:
8、识别所述ued图中的多个第一字段和各个所述第一字段的关联标识;
9、基于所述多个第一字段的关联标识确定各个所述第一字段的字段类型;
10、基于各个所述第一字段和各个所述第一字段的字段类型生成ued图测试用例。
11、可选地,所述识别所述ued图中的多个第一字段和各个所述第一字段的关联标识,包括:
12、对所述ued图进行文字识别,得到多个所述第一字段;
13、对各个所述第一字段的预设位置进行标识识别,得到各个所述第一字段的关联标识。
14、可选地,所述至少两个关联文档包括接口文档,所述基于所述测试用例生成方案生成所述新增功能模块的测试用例集,包括:
15、识别所述接口文档中的多个接口请求url、多个请求方法名、多个请求头、多个请求参数以及响应结果模板;
16、基于多个接口请求url、多个请求方法名、多个请求头、多个请求参数进行组合,得到多个组装结果,其中,每个所述组装结果包括一个接口请求url、一个请求方法名、一个请求头以及一个请求参数;
17、分别判断各个所述组装结果对应的响应结果是否与所述响应结果模板匹配;
18、将响应结果与所述响应结果模板匹配的组装结果确定为接口文档测试用例。
19、可选地,所述识别所述接口文档中的多个接口请求url、多个请求方法名、多个请求头、多个请求参数以及响应结果模板,包括:
20、利用yaml加载所述接口文档;
21、通过dict识别所述接口文档中的多个接口请求url、多个请求方法名、多个请求头、多个请求参数以及响应结果模板。
22、可选地,所述至少两个关联文档包括数据库脚本,所述基于所述测试用例生成方案生成所述新增功能模块的测试用例集,包括:
23、逐行读取所述数据库脚本的内容;
24、当读取到预设字段时,提取所述预设字段所在行的行内容;
25、识别所述行内容中的多个第二字段;
26、基于所述多个第二字段组合得到数据库脚本测试用例。
27、可选地,所述测试用例生成方法还包括:
28、获取所述新增功能模块关联的多个关联模块;
29、基于所述测试用例集同步测试所述新增功能模块和所述多个关联模块,得到测试结果。
30、第二方面,本技术提供一种测试用例生成装置,所述测试用例生成装置包括:
31、请求获取单元,用于获取业务系统的新增功能模块的测试请求;
32、文档获取单元,用于根据所述测试请求获取所述新增功能模块的至少两个关联文档,所述至少两个关联文档包括ued图、接口文档、数据库脚本中至少两种类型的文档;
33、方案获取单元,用于获取所述至少两个关联文档的测试用例生成方案;
34、生成单元,用于基于所述测试用例生成方案生成所述新增功能模块的测试用例集。
35、可选地,所述至少两个关联文档包括ued图,所述基于所述测试用例生成方案生成所述新增功能模块的测试用例集,包括:
36、识别所述ued图中的多个第一字段和各个所述第一字段的关联标识;
37、基于所述多个第一字段的关联标识确定各个所述第一字段的字段类型;
38、基于各个所述第一字段和各个所述第一字段的字段类型生成ued图测试用例。
39、可选地,所述识别所述ued图中的多个第一字段和各个所述第一字段的关联标识,包括:
40、对所述ued图进行文字识别,得到多个所述第一字段;
41、对各个所述第一字段的预设位置进行标识识别,得到各个所述第一字段的关联标识。
42、可选地,所述至少两个关联文档包括接口文档,所述基于所述测试用例生成方案生成所述新增功能模块的测试用例集,包括:
43、识别所述接口文档中的多个接口请求url、多个请求方法名、多个请求头、多个请求参数以及响应结果模板;
44、基于多个接口请求url、多个请求方法名、多个请求头、多个请求参数进行组合,得到多个组装结果,其中,每个所述组装结果包括一个接口请求url、一个请求方法名、一个请求头以及一个请求参数;
45、分别判断各个所述组装结果对应的响应结果是否与所述响应结果模板匹配;
46、将响应结果与所述响应结果模板匹配的组装结果确定为接口文档测试用例。
47、可选地,所述识别所述接口文档中的多个接口请求url、多个请求方法名、多个请求头、多个请求参数以及响应结果模板,包括:
48、利用yaml加载所述接口文档;
49、通过dict识别所述接口文档中的多个接口请求url、多个请求方法名、多个请求头、多个请求参数以及响应结果模板。
50、可选地,所述至少两个关联文档包括数据库脚本,所述基于所述测试用例生成方案生成所述新增功能模块的测试用例集,包括:
51、逐行读取所述数据库脚本的内容;
52、当读取到预设字段时,提取所述预设字段所在行的行内容;
53、识别所述行内容中的多个第二字段;
54、基于所述多个第二字段组合得到数据库脚本测试用例。
55、可选地,所述测试用例生成方法还包括:
56、获取所述新增功能模块关联的多个关联模块;
57、基于所述测试用例集同步测试所述新增功能模块和所述多个关联模块,得到测试结果。
58、第三方面,本技术提供一种计算机设备,所述计算机设备包括:
59、一个或多个处理器;
60、存储器;以及
61、一个或多个应用程序,其中所述一个或多个应用程序被存储于所述存储器中,并配置为由所述处理器执行以实现第一方面中任一项所述的测试用例生成方法。
62、第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行第一方面中任一项所述的测试用例生成方法中的步骤。
63、本技术提供一种测试用例生成方法及装置,该测试用例生成方法包括:获取业务系统的新增功能模块的测试请求;根据测试请求获取新增功能模块的至少两个关联文档,至少两个关联文档包括ued图、接口文档、数据库脚本中至少两种类型的文档;获取至少两个关联文档的测试用例生成方案;基于测试用例生成方案生成新增功能模块的测试用例集。本技术在获取到测试请求时,获取新增功能模块的至少两个关联文档,根据至少两个关联文档按照对应的测试用例生成方案生成新增功能模块的测试用例集,可以根据自动识别关联文档并生成测试用例集,能够自动生成测试用例集,可以提高测试用例生成的效率。