本发明涉及软件测试领域,尤其涉及测试点生成方法、装置及计算机可读存储介质。
背景技术:
1、软件测试技术是软件开发过程中的一个重要组成部分,是贯穿整个软件开发生命周期、对软件产品(包括阶段性产品)进行验证和确认的活动过程,其目的是尽快尽早地发现在软件产品中所存在的各种问题——与用户需求、预先定义的不一致性,检查软件产品的bug,写成测试报告,交于开发人员修改。软件测试人员的基本目标是发现软件中的错误。传统的软件功能测试依赖于手动编写测试点,这在大型和复杂的软件项目中,使得测试用例变得非常耗时,导致测试效率地下。
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、本发明实施例提出的一种软件测试方法,通过根据待测软件的需求文档获取关键要素,进而将所述关键要素作为输入信息,输入至映射模型中,并根据所述映射模型基于所述计算得到的输出信息生成目标测试点集,根据所述目标测试点集对所述待测软件进行测试,通过自动生成目标测试点集,从而根据自动生成的各个目标测试点对待测软件进行测试,提高了测试点的生成效率,进而提高了软件测试效率。
1.一种软件测试方法,其特征在于,所述软件测试方法包括以下步骤:
2.如权利要求1所述的软件测试方法,其特征在于,所述根据所述映射模型基于所述输入信息计算得到的输出信息生成目标测试点集的步骤包括:
3.如权利要求2所述的软件测试方法,其特征在于,所述对所述初始测试点集进行覆盖度检测后,获取所述初始测试点集对应的覆盖度的步骤包括:
4.如权利要求2所述的软件测试方法,其特征在于,所述根据所述覆盖度以及所述初始测试点集生成所述目标测试点集的步骤包括:
5.如权利要求4所述的软件测试方法,其特征在于,所述在所述初始测试点对应的质量分数大于或等于预设质量分数时,将所述初始测试点集作为所述目标测试点集的步骤之后,还包括:
6.如权利要求1所述的软件测试方法,其特征在于,所述根据待测软件的需求文档获取关键要素的步骤包括:
7.一种软件测试装置,其特征在于,所述软件测试装置包括需求解析模块、测试点生成模块、可视化模块以及软件测试模块:
8.如权利要求8所述的软件测试装置,其特征在于,所述测试点生成模块还包括:
9.一种软件测试设备,其特征在于,所述软件测试设备包括如权利要求7-8任一项所述的软件测试装置;
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有软件测试程序,所述软件测试程序被处理器执行时实现如权利要求1至6中任一项所述的软件测试方法的步骤。