System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于GPT的测试脚本生成方法及装置制造方法及图纸_技高网

一种基于GPT的测试脚本生成方法及装置制造方法及图纸

技术编号:43628532 阅读:5 留言:0更新日期:2024-12-11 15:08
本发明专利技术涉及一种基于GPT的测试脚本生成方法及装置,属于计算机技术领域,该方法包括:获取目标数据,并对目标数据进行预处理,目标数据包括第一数据和历史数据;基于预处理后的目标数据对Transformer架构的GPT模型进行预训练,得到预训练后的GPT模型,并基于预处理后的代码数据、历史测试脚本和历史测试用例对预训练后的GPT模型进行优化,得到目标GPT模型;基于目标GPT模型,根据用户界面、代码结构和业务逻辑,生成目标测试用例和目标测试步骤,并根据目标测试用例和目标测试步骤生成目标测试脚本。该方法提高了测试脚本的生成效率和准确率。

【技术实现步骤摘要】

本专利技术属于计算机,尤其涉及一种基于gpt的测试脚本生成方法及装置。


技术介绍

1、相关技术中,随着软件行业的快速发展,软件产品的规模和复杂性也在不断增加,传统的手动测试方法已经无法满足高效、准确的测试需求。因此,软件测试自动化成为了一种趋势和必要手段。通过编写测试脚本,可以模拟用户行为,自动执行测试用例,并验证软件功能的准确性和性能稳定性。

2、然而,测试脚本一般由测试人员来手动编写实现,这不仅需要测试人员有一定的编码能力,还需要投入大量时间和精力。此外,人为编写的脚本还可能会存在一些错误和遗漏,并且当程序或业务逻辑有变更时,还需要重新编写测试脚本以满足具体测试需求。因此如何更好的实现测试脚本的生成成为亟待解决的问题。


技术实现思路

1、鉴于以上现有技术的不足,专利技术的目的在于提供一种基于gpt的测试脚本生成方法及装置。该方法提高了测试脚本的生成效率和准确率。

2、本专利技术的第一方面,提出了一种基于gpt的测试脚本生成方法,包括:s1,获取目标数据,并对所述目标数据进行预处理,所述目标数据包括第一数据和历史数据,所述第一数据包括代码数据和测试需求文档数据,所述历史数据包括历史测试脚本、历史测试用例、历史测试数据;s2,基于所述预处理后的所述目标数据对transformer架构的gpt模型进行预训练,得到预训练后的所述gpt模型,并基于预处理后的所述代码数据、所述历史测试脚本和所述历史测试用例对预训练后的所述gpt模型进行优化,得到目标gpt模型;s3,基于所述目标gpt模型,根据用户界面、代码结构和业务逻辑,生成目标测试用例和目标测试步骤,并根据所述目标测试用例和目标测试步骤生成目标测试脚本。

3、进一步地,对所述目标数据进行预处理,包括:对所述目标数据进行清洗;对清洗后的所述目标数据进行结构化处理,得到所述目标数据的关键信息。

4、进一步地,基于预处理后的所述代码数据、所述历史测试脚本和所述历史测试用例对预训练后的所述gpt模型进行优化,得到目标gpt模型,包括:基于预处理后的所述代码数据、所述历史测试用例和所述历史测试脚本对预训练后的所述gpt模型进行微调,得到微调后的所述gpt模型;采用项目测试用例对微调后的所述gpt模型进行精细化训练,得到所述目标gpt模型。

5、进一步地,基于预处理后的所述代码数据、所述历史测试用例和所述历史测试脚本对预训练后的所述gpt模型进行微调,包括:在预训练后的所述gpt模型中引入代码结构学习机制的情况下,对预处理后的所述代码数据进行第一训练,得到所述代码数据的关键结构和特征;根据所述代码数据的关键结构和特征确定对应的页面结构。

6、进一步地,还包括:预设所述第一训练后的所述gpt模型的输入格式和输出格式;将预处理后的所述历史测试用例分为训练集、验证集和测试集,并基于所述训练集对所述第一训练后的所述gpt模型进行第二训练,并通过反向传播算法和梯度下降法更新所述第二训练的所述gpt模型参数,且继续对所述第二训练后的所述gpt模型进行第三训练;基于所述验证集对所述第三训练后的所述gpt模型进行评估,并基于评估结果对所述第三训练后的所述gpt模型整合。

7、进一步地,还包括:提取预处理后的所述历史测试脚本的目标特征,所述目标特征包括脚本的结构特征、操作特征和数据特征;将预处理后的所述历史测试脚本作为训练集对所述第三训练后的所述gpt模型进行第四训练,以及采用项目测试数据集评估所述第四训练后的所述gpt模型的性能。

8、进一步地,基于所述目标gpt模型,根据用户界面、代码结构和业务逻辑,生成目标测试用例和目标测试步骤,并根据所述目标测试用例和目标测试步骤生成目标测试脚本,包括:根据用户界面、代码结构和业务逻辑,生成覆盖关键路径和边界条件的所述目标测试用例;将所述目标测试用例转化为具体的所述目标测试步骤;确定所述目标测试脚本的目标框架;在所述目标框架下,根据所述目标测试用例和目标测试步骤生成目标测试脚本。

9、本专利技术的第二方面,提出了一种基于gpt的测试脚本生成装置,包括:获取模块,用于获取目标数据,并对所述目标数据进行预处理,所述目标数据包括第一数据和历史数据,所述第一数据包括代码数据和测试需求文档数据,所述历史数据包括历史测试脚本、历史测试用例、历史测试数据;训练模块,用于基于所述预处理后的所述目标数据对transformer架构的gpt模型进行预训练,得到预训练后的所述gpt模型,并基于预处理后的所述代码数据、所述历史测试脚本和所述历史测试用例对预训练后的所述gpt模型进行优化,得到目标gpt模型;生成模块,用于基于所述目标gpt模型,根据用户界面、代码结构和业务逻辑,生成目标测试用例和目标测试步骤,并根据所述目标测试用例和目标测试步骤生成目标测试脚本。

10、本专利技术的第三方面,提出了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本专利技术第一方面中任一项所述的方法。

11、本专利技术的第四方面,提出了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行本专利技术第一方面中任一项所述的方法。

12、本专利技术有益效果如下:

13、本专利技术所述的基于gpt的测试脚本生成方法,获取目标数据,并对目标数据进行预处理,目标数据包括第一数据和历史数据,第一数据包括代码数据和测试需求文档数据,历史数据包括历史测试脚本、历史测试用例、历史测试数据;基于预处理后的目标数据对transformer架构的gpt模型进行预训练,得到预训练后的gpt模型,并基于预处理后的代码数据、历史测试脚本和历史测试用例对预训练后的gpt模型进行优化,得到目标gpt模型;基于目标gpt模型,根据用户界面、代码结构和业务逻辑,生成目标测试用例和目标测试步骤,并根据目标测试用例和目标测试步骤生成目标测试脚本。该方法自动化生成测试脚本,提高了测试脚本的生成效率和准确率,减少了手动编写测试脚本的时间和成本。

本文档来自技高网...

【技术保护点】

1.一种基于GPT的测试脚本生成方法,其特征在于,包括:

2.根据权利要求1所述的基于GPT的测试脚本生成方法,其特征在于,对所述目标数据进行预处理,包括:

3.根据权利要求1所述的基于GPT的测试脚本生成方法,其特征在于,基于预处理后的所述代码数据、所述历史测试脚本和所述历史测试用例对预训练后的所述GPT模型进行优化,得到目标GPT模型,包括:

4.根据权利要求3所述的基于GPT的测试脚本生成方法,其特征在于,基于预处理后的所述代码数据、所述历史测试用例和所述历史测试脚本对预训练后的所述GPT模型进行微调,包括:

5.根据权利要求4所述的基于GPT的测试脚本生成方法,其特征在于,还包括:

6.根据权利要求5所述的基于GPT的测试脚本生成方法,其特征在于,还包括:

7.根据权利要求1所述的基于GPT的测试脚本生成方法,其特征在于,基于所述目标GPT模型,根据用户界面、代码结构和业务逻辑,生成目标测试用例和目标测试步骤,并根据所述目标测试用例和目标测试步骤生成目标测试脚本,包括:

8.一种基于GPT的测试脚本生成装置,其特征在于,包括:

9.一种电子设备,其特征在于,包括:

10.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行根据权利要求1至7中任一项所述的方法。

...

【技术特征摘要】

1.一种基于gpt的测试脚本生成方法,其特征在于,包括:

2.根据权利要求1所述的基于gpt的测试脚本生成方法,其特征在于,对所述目标数据进行预处理,包括:

3.根据权利要求1所述的基于gpt的测试脚本生成方法,其特征在于,基于预处理后的所述代码数据、所述历史测试脚本和所述历史测试用例对预训练后的所述gpt模型进行优化,得到目标gpt模型,包括:

4.根据权利要求3所述的基于gpt的测试脚本生成方法,其特征在于,基于预处理后的所述代码数据、所述历史测试用例和所述历史测试脚本对预训练后的所述gpt模型进行微调,包括:

5.根据权利要求4所述的基于gpt的测试脚本生成...

【专利技术属性】
技术研发人员:徐真真
申请(专利权)人:中电信数智科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1