System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于大型语言模型的测试用例生成系统技术方案_技高网

基于大型语言模型的测试用例生成系统技术方案

技术编号:40342729 阅读:7 留言:0更新日期:2024-02-09 14:29
本发明专利技术涉及软件测试技术领域,具体涉及一种基于大型语言模型的测试用例生成系统,包括:用例收集模块,所述用例收集模块自多个数据源获取测试样本数据形成用例数据集;用例扩增模块,依照所述用例数据集生成指示信息,所述用例扩增模块向所述大型语言模型输入所述指示信息;所述大型语言模型依照所述指示信息生成预测用例;用例修正模块,对所述预测用例进行修正后形成扩充用例并输出。有益效果在于:引入了大型语言模型对多方数据源输入的测试样本数据进行识别,从而使得大型语言模型能够理解所需要的测试用例的内容,包括典型的测试用例的形式、设计规范、边界条件等,进而使得大型语言模型自行生成扩充用例,仅需要进行简单的修正后即可使用。

【技术实现步骤摘要】

本专利技术涉及软件测试,具体涉及一种基于大型语言模型的测试用例生成系统


技术介绍

1、测试用例是在软件测试过程中使用的一组输入、执行步骤和预期结果的规范化描述。它用于验证软件系统是否按照预期工作,检测潜在的错误和缺陷。测试用例的设计和编写是软件测试过程中的关键步骤。良好的测试用例能够有效地检测潜在的错误和缺陷,提高软件的质量和可靠性。大型语言模型,是指使用大量文本数据训练的深度学习模型,可以生成自然语言文本或理解语言文本的含义。大语言模型可以处理多种自然语言任务,如文本分类、问答、对话等,是通向人工智能的一条重要途径。

2、现有技术中,已存在有通过软件辅助测试用例的生成的方案,比如,中国专利cn201610739639.0公开了一种测试用例生成方法,属于软件测试
,方法包括:预设多个基础测试用例,并针对一个基础测试用例,根据正确值列表中的正确取值或者错误值列表中的错误取值,分别更改每个基础测试动作的数值,以分别形成多个不同的衍生测试动作,并且根据多个不同的衍生测试动作组成关联于基础测试用例的多个不同的衍生测试用例;将所有基础测试用例和所有衍生测试用例均作为测试用例,并将所有基础测试动作和所有衍生测试动作均作为测试动作,随后根据测试用例和测试动作对系统进行自动测试。上述技术方案的有益效果是:实现测试用例的自动编写,从而缩短测试用时、提升测试效率,节省人力成本。

3、但是,在实际实施过程中,专利技术人发现,上述方案在使用过程中,往往需要预先设计较为全面的测试用例,软件仅能够实现简单的变量、参数等的替换,无法实现自设计规范至用例的自动生成过程。


技术实现思路

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、针对现有技术中的用例生成软件仅能够实现简单的参数替换,无法依照设计规范自行生成用例的问题,本方案中,引入了大型语言模型对多方数据源输入的本文档来自技高网...

【技术保护点】

1.一种基于大型语言模型的测试用例生成系统,其特征在于,包括:

2.根据权利要求1所述的测试用例生成系统,其特征在于,所述用例收集模块包括:

3.根据权利要求1所述的测试用例生成系统,其特征在于,所述用例扩增模块包括:

4.根据权利要求3所述的测试用例生成系统,其特征在于,所述用例扩增模块还包括:

5.根据权利要求1所述的测试用例生成系统,其特征在于,所述用例修正模块包括:

6.根据权利要求5所述的测试用例生成系统,其特征在于,所述冗余分析模块包括:

7.根据权利要求5所述的测试用例生成系统,其特征在于,所述相似性分组模块包括:

8.根据权利要求1所述的测试用例生成系统,其特征在于,还包括:

【技术特征摘要】

1.一种基于大型语言模型的测试用例生成系统,其特征在于,包括:

2.根据权利要求1所述的测试用例生成系统,其特征在于,所述用例收集模块包括:

3.根据权利要求1所述的测试用例生成系统,其特征在于,所述用例扩增模块包括:

4.根据权利要求3所述的测试用例生成系统,其特征在于,所述用例扩增模块还包括:

...

【专利技术属性】
技术研发人员:冯英健朱瑞星
申请(专利权)人:上海深至信息科技有限公司
类型:发明
国别省市:

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

1