本技术涉及计算机,特别是涉及一种软件测试方法、装置、计算机设备及计算机可读存储介质。
背景技术:
1、随着软件测试技术的发展,开发并利用自动化测试脚本完成特定场景下的软件测试工作,以代替简单重复的人工测试而言,能够大大提高软件测试的效率。
2、传统技术中,是通过软件测试人员针对特定的软件测试需求,编写独立的自动化测试代码,这种方法对软件测试人员的程序开发技能要求很高且对后期测试用例的维护难度大,使得软件自动化测试效率较低。
技术实现思路
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、对计划执行列表中的各个执行用例按测试步骤进行数据拆分,得到各个单独的执行步骤;
43、针对每个执行步骤,确定执行步骤中的目标字段,基于目标字段确定对应的目标插件,并根据目标插件从执行步骤中获取匹配的目标参数,基于目标参数生成执行步骤对应的执行语句;
44、基于各个执行步骤对应的执行语句进行软件测试。
45、上述软件测试方法、装置、计算机设备及计算机可读存储介质,通过直接获取已编写的测试用例,按照测试目标对各个测试用例进行组合,得到测试计划,再基于测试计划生成对应的计划执行列表,从而确定了软件测试的各个测试节点的测试顺序,再按照测试步骤对计划执行列表中各个执行用例进行数据拆分,得到各个单独的执行步骤,再针对每个执行步骤中的目标字段及目标参数,生成对应的执行语句,最后根据生成的各个执行步骤对应的执行语句,生成并运行与测试目标对应的软件测试脚本,完成软件的自动化测试,在生成软件测试脚本并执行的过程中,只需要提供相应的测试用例以及测试目标,即可快速准确实现与测试目标对应的自动化测试脚本的生成,相比现有技术通过软件测试人员针对特定的软件测试需求,编写独立的自动化测试脚本的方法而言,全称无需人工编写测试脚本,就可以快速生成标准化的软件测试脚本,能够有效提高软件自动化测试效率。