本公开涉及计算机,尤其涉及一种测试用例代码生成方法及相关设备。
背景技术:
1、对于网络用户界面(web ui)软件的测试工作而言,自动化测试具有有效缩短测试周期并降低产品历史功能回归成本等优势。
2、然而,一方面,编写高质量的运行稳定的web ui自动化测试脚本通常需要测试人员对所使用的测试框架、操作web ui页面的底层库或者用户自定义的与页面完成交互操作的测试库有熟悉的理解。另一方面,通常情况下,软件产品的测试周期都相对较短,留给测试人员编写自动化测试脚本的时间非常有限,这对测试人员是一个较大的挑战。再有,业务的迭代、页面布局或者交互逻辑等等方面的变动,均可能会导致已有自动化测试脚本的失效,需要测试人员对自动化测试脚本进行长期维护,因而自动化测试也具有较高的维护成本。
技术实现思路
1、有鉴于此,本公开的实施例提供一种测试用例代码生成方法,可以基于接收的需求描述文本自动生成测试用例代码,从而大大提升测试用例代码开发的效率。
2、本公开实施例所述的测试用例代码生成方法包括:对需求描述文本进行操作关键词识别,得到至少一个目标操作关键词;分别确定与所述至少一个目标操作关键词对应的至少一个提示词;基于所述至少一个提示词生成提示信息;以及基于所述提示信息调用大语言模型得到与所述需求描述文本对应的代码文本。
3、在本公开的实施例中,上述对需求描述文本进行操作关键词识别包括:对所述需求描述文本进行分词,得到至少一个描述词;以及分别将所述至少一个描述词与预先建立的操作关键词库中的候选操作关键词进行匹配,得到所述至少一个目标操作关键词。
4、在本公开的实施例中,上述确定与所述至少一个操作关键词对应的至少一个提示词包括:基于预先建立的操作关键词与提示词之间的映射关系,分别确定与所述至少一个目标操作关键词中的每一个目标操作关键词对应的提示词;以及将与所述每一个目标操作关键词对应的提示词及其关联信息进行组合,得到与所述至少一个目标操作关键词对应的至少一个提示词。
5、在本公开的实施例中,上述方法进一步包括:基于预先建立的提示词库分别确定与所述至少一个提示词对应的关联信息;其中,所述关联信息包括:与所述提示词对应的输入输出代码示例。
6、在本公开的实施例中,上述基于所述至少一个提示词生成提示信息包括:将所述至少一个提示词进行组合,得到提示词列表;将所述至少一个提示词对应的输入输出代码示例进行组合,得到与所述提示词列表对应的输入输出代码示例列表;基于所述至少一个提示词生成代码编写限制条件列表;基于预先设定的提示信息模板,将所述提示词列表、所述输入输出代码示例列表、所述代码编写限制条件列表、代码所应用的测试框架以及所述需求描述文本进行组合,得到所述提示信息。
7、在本公开的实施例中,上述关联信息进一步包括:与所述提示词对应的代码编写限制条件。
8、在本公开的实施例中,上述基于所述至少一个提示词生成代码编写限制条件列表包括:将与所述至少一个提示词对应的代码编写限制条件进行组合;以及去除重复的代码编写限制条件,得到与所述提示词列表对应的代码编写限制条件列表。
9、在本公开的实施例中,上述方法进一步包括:在对所述需求描述文本进行操作关键词识别之前,基于预先建立的格式化规则对所述需求描述文本进行格式化处理。
10、在本公开的实施例中,上述方法进一步包括:对所述代码文本进行纠错处理,得到目标代码。
11、在本公开的实施例中,上述纠错处理包括以下处理之一或其任意组合:缩写关键字还原处理、语法纠错处理以及格式纠错处理。
12、在本公开的实施例中,上述方法进一步包括:通过字符流显示方式在浏览器中逐字符显示所述。
13、在本公开的实施例中,上述方法进一步包括:通过字符流显示方式在浏览器中逐字符显示所述代码文本;以及在得到所述目标代码之后,删除已在所述浏览器中显示的所述代码文本,并在所述浏览器中显示所述目标代码。
14、基于上述测试用例代码生成方法,本公开的实施例还提供了一种测试用例代码生成装置,包括:
15、目标操作关键词识别模块,用于对需求描述文本进行操作关键词识别,得到至少一个目标操作关键词;
16、提示词确定模块,用于分别确定与所述至少一个目标操作关键词对应的至少一个提示词;
17、提示信息生成模块,用于基于所述至少一个提示词生成提示信息;以及
18、代码生成模块,用于基于所述提示信息调用大语言模型得到与所述需求描述文本对应的代码文本。
19、此外,本公开的实施例还提供了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述测试用例代码生成方法。
20、本公开的实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行上述测试用例代码生成方法。
21、本公开的实施例还提供了一种计算机程序产品,包括计算机程序指令,当所述计算机程序指令在计算机上运行时,使得计算机执行上述测试用例代码生成方法。
22、在上述测试用例代码生成方法及相关设备中,可以基于接收的需求描述文本调用大语言模型自动生成测试用例代码,从而大大提升测试用例代码开发的效率。
23、进一步,在web ui自动化测试领域,上述测试用例代码生成方法及相关设备可以基于接收的需求描述文本以及大语言模型自动生成web ui的自动化测试用代码从而提高测试效率、缩短测试周期并降低自动化测试脚本的维护成本。
1.一种测试用例代码生成方法,包括:
2.根据权利要求1所述的方法,其中,所述对需求描述文本进行操作关键词识别包括:
3.根据权利要求1所述的方法,其中,所述确定与所述至少一个操作关键词对应的至少一个提示词包括:基于预先建立的操作关键词与提示词之间的映射关系,分别确定与所述至少一个目标操作关键词中的每一个目标操作关键词对应的提示词,得到与所述至少一个目标操作关键词对应的至少一个提示词。
4.根据权利要求1所述的方法,进一步包括:基于预先建立的提示词库分别确定与所述至少一个提示词对应的关联信息;其中,所述关联信息包括:与所述提示词对应的输入输出代码示例。
5.根据权利要求4所述的方法,其中,所述基于所述至少一个提示词生成提示信息包括:
6.根据权利要求5所述的方法,其中,所述基于所述至少一个提示词生成代码编写限制条件列表包括:基于预先设定的通用代码编写限制条件生成所述代码编写限制条件列表。
7.根据权利要求5所述的方法,其中,所述关联信息进一步包括:与所述提示词对应的代码编写限制条件;
8.根据权利要求1所述的方法,进一步包括:在所述需求描述文本进行操作关键词识别之前,基于预先建立的格式化规则对所述需求描述文本进行格式化处理。
9.根据权利要求1所述的方法,进一步包括:对所述代码文本进行纠错处理,得到目标代码。
10.根据权利要求9所述的方法,其中,所述纠错处理包括以下处理之一或其任意组合:缩写关键字还原处理、语法纠错处理以及格式纠错处理。
11.根据权利要求1所述的方法,进一步包括:通过字符流显示方式在浏览器中逐字符显示所述代码文本。
12.根据权利要求9所述的方法,进一步包括:
13.一种测试用例代码生成装置,包括:
14.一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1-12中任意一项所述的测试用例代码生成方法。
15.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行权利要求1-12中任意一项所述的测试用例代码生成方法。
16.一种计算机程序产品,包括计算机程序指令,当所述计算机程序指令在计算机上运行时,使得计算机执行如权利要求1-12中任意一项所述的测试用例代码生成方法。