System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及软件测试,具体涉及一种测试用例生成方法、装置、存储介质和设备。
技术介绍
1、软件测试作为贯穿整个软件开发生命周期中至关重要的一环,其具备不可替代的重要性和必要性。软件测试工作中,测试人员需要进行大量测试用例的手工编写、修改和整理,这部分工作繁琐且难以替代。
2、随着步入信息化时代,自然语言处理(nlp)在众多场景和应用中展露优势,同时近期chatgpt更是进一步掀起了自然语言生成(nlg)任务的热潮,其精准幽默的问答系统、快捷准确的文本撰写能力令人惊叹。在人工智能和机器学习技术的加成下,思考是否能够提升测试效率同时保证测试准确性全面。测试用例生成作为文本生成任务,其理所当然继承了文本生成在自然语言处理领域中的痛点,一方面测试人员编写的测试用例均为中文文本,而中文文本在nlp任务中一直进展缓慢,原因在于如下两点:
3、1、中文文本预处理较为困难,其不同于英文文本词语之间通过空格区分便于进行词语识别与拆分,中文文本断句不同语义均不同,机器很难准确识别和理解;
4、2、现有国内外大模型数据集和文本预训练模型大多针对英文文本所构建,中文文本研究进展缓慢且数据资源较少难以直接复用。
5、另一方面,测试用例作为高度抽象且精炼的文本,包含众多要素如:编号、测试用例描述、属性、类型、测试步骤和测试结果等,同时不同领域需求文档内容差异较大,计算机很难通过简单学习这些需求文档生成包含全面的测试规则点和测试结果的中文测试用例。
6、因此,如何实现计算机学习小样本数据(少量需求
技术实现思路
1、有鉴于此,本专利技术实施例提供一种测试用例生成方法、装置、存储介质和设备,以实现中文文本的测试用例的快速处理。
2、为实现上述目的,本专利技术实施例提供如下技术方案:
3、一种测试用例生成方法,包括:
4、获取需求文档和测试用例;
5、将分词和词性标注后的需求文档和测试用例中的中文词语转换为数值形式并映射到目标数学空间,得到需求文档集合d和测试用例集合t;
6、采用所述需求文档集合d和测试用例集合t构建目标因果推理cvae模型;
7、获取并采用所述目标因果推理cvae模型对待处理需求文档进行分析,得到自动化测试用例。
8、可选的,上述测试用例生成方法中,获取需求文档和测试用例之后,将分词和词性标注后的需求文档和测试用例中的中文词语转换为数值形式并映射到目标数学空间之前,还包括:
9、对所述需求文档和测试用例进行数据清洗。
10、可选的,上述测试用例生成方法中,对所述需求文档和测试用例进行数据清洗之后,将分词和词性标注后的需求文档和测试用例中的中文词语转换为数值形式并映射到目标数学空间之前,还包括:
11、采用分词工具对清洗后的需求文档和测试用例进行分词和词性标注。
12、可选的,上述测试用例生成方法中,采用所述需求文档集合d和测试用例集合t构建目标因果推理cvae模型,包括:
13、采用因果推理模型处理所述测试用例集合t,得到所述测试用例和测试结果之间的因果关系,将所述因果关系作为内部调优指标;
14、基于所述需求文档集合d构建cvae模型;
15、基于所述cvae模型和所述测试用例为集合t构建因果推理cvae模型;
16、采用所述内部调优指标对所述因果推理cvae模型进行迭代训练,得到目标因果推理cvae模型。
17、可选的,上述测试用例生成方法中,所述因果推理模型中的平均干预效果ate为:
18、
19、其中,ate为定义的平均干预效果指标,其表示提供不同干预所计算的期望。干预定义为测试用例描述中的条件,例如测试用例中某个字段输入0(施加干预)或不输入(不施加干预)对应一个二元干预。y0表示施加不干预时的测试结果,y1表示施加干预时的测试结果。经过预训练的测试用例集合t中的每一条测试用例将进行文本的词语级和句式级语义关系学习,最终得到测试用例矩阵dj表示第j个需求文档,xi表示需求文档dj经过双向门控单元(循环)神经网络学习文本语义关系后的测试用例文本向量,n表示测试用例文本向量的总数量。
20、其中,ate为平均干预效果指标,所述n表示测试用例的总数量,所述y0表示第i条测试用例在施加不干预时的测试结果,y1表示第i条测试用例在施加干预时的测试结果,所述xi表示需求文档dj经过双向门控单元(循环)神经网络学习文本语义关系后的测试用例文本向量。
21、可选的,上述测试用例生成方法中,所述cvae模型的损失函数表示为:
22、
23、其中,dj表示经过双向门控单元(循环)神经网络学习文本语义关系后的第j个需求文档向量,x为cvae模型通过训练最终生成的测试用例即本方法的输出,y为真实的人工编写的测试用例。z为隐变量用作捕获cvae生成空间中的潜在分布。θ和φ表示cvae网络模型利用变分下届进行训练过程中的采样参数,随训练过程进行更新。表达式第一项中pθ(x|dj,z,y)为cvae模型中的解码器网络生成的测试用例x对应的后验概率,logpθ(x|dj,z,y)为后验概率的最大似然函数;qφ(z,y|x,dj)为cvae模型中神经网络(识别网络)迭代学习模型生成的测试用例x和需求文档dj能生成隐变量z和真实的用例y的后验条件概率,更新采样最优参数φ并利用数学期望来计算神经网络学习真实用例y与生成用例的最大似然分布的误差,即模型生成的新的测试用例的误差损失值。表达式第二项中p(z|dj,y)为先验概率分布,用来采样计算隐变量z,该分布服从多元高斯分布,qφ(z|x,dj,y)为cvae模型中神经网络计算隐变量的后验概率分布,kl(·)为kl散度函数用以计算两个分布之间的差异,将先验和后验分布尽量逼近获得较为相似的隐变量;qφ(y|x,dj)同样为cvae模型中神经网络迭代学习生成的测试用例x和需求文档dj能生成真实的用例y的后验条件概率,更新采样最优参数φ并利用数学期望计算隐变量z和真实测试用例y以及新生成的测试用例x对齐特征的误差损失值。表达式第三项中,pθ(y|dj)为先验概率分布,表示从需求文档dj中获得人工编写的测试用例y服从的概率,qφ(y|x,dj)与表达式第二项中相同;kl(·)为kl散度函数用以计算两个分布之间的差异,通过kl散度确保生成的测试用例x遵循真实的用例y的编写特征。
24、所述因果推理cvae模型的损失函数为:
25、
26、因果推理cvae模型较cvae模型新增了测试用例中自然而存在的因果推理关系,确保生成的测试用例具有更强的可解释性。其中,dj表示经过双向门控单元(循环)神经网络学习文本语义关系后的第j个需求文档向量,x为因果推理cvae模型通过训练最终生成的测试用例即本方法的输出,y本文档来自技高网...
【技术保护点】
1.一种测试用例生成方法,其特征在于,包括:
2.根据权利要求1所述的测试用例生成方法,其特征在于,获取需求文档和测试用例之后,将分词和词性标注后的需求文档和测试用例中的中文词语转换为数值形式并映射到目标数学空间之前,还包括:
3.根据权利要求1所述的测试用例生成方法,其特征在于,对所述需求文档和测试用例进行数据清洗之后,将分词和词性标注后的需求文档和测试用例中的中文词语转换为数值形式并映射到目标数学空间之前,还包括:
4.根据权利要求1所述的测试用例生成方法,其特征在于,采用所述需求文档集合D和测试用例集合T构建目标因果推理CVAE模型,包括:
5.根据权利要求4所述的测试用例生成方法,其特征在于,所述因果推理模型中的平均干预效果ATE为:
6.根据权利要求5所述的测试用例生成方法,其特征在于,所述CVAE模型的损失函数表示为:
7.根据权利要求2所述的测试用例生成方法,其特征在于,对所述需求文档和测试用例进行数据清洗,包括:
8.一种测试用例生成装置,其特征在于,包括:
9.一种存
10.一种测试用例生成设备,其特征在于,包括:
...【技术特征摘要】
1.一种测试用例生成方法,其特征在于,包括:
2.根据权利要求1所述的测试用例生成方法,其特征在于,获取需求文档和测试用例之后,将分词和词性标注后的需求文档和测试用例中的中文词语转换为数值形式并映射到目标数学空间之前,还包括:
3.根据权利要求1所述的测试用例生成方法,其特征在于,对所述需求文档和测试用例进行数据清洗之后,将分词和词性标注后的需求文档和测试用例中的中文词语转换为数值形式并映射到目标数学空间之前,还包括:
4.根据权利要求1所述的测试用例生成方法,其特征在于,采用所述需求文档集合d和测试用例集合t构建目标因果推理cvae模型,包括:
【专利技术属性】
技术研发人员:杨雅逸,
申请(专利权)人:中国农业银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。