System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种测试实例生成方法及自动化测试系统技术方案_技高网

一种测试实例生成方法及自动化测试系统技术方案

技术编号:40780398 阅读:4 留言:0更新日期:2024-03-25 20:24
本发明专利技术属于自动化测试技术领域,具体涉及一种测试实例生成方法及自动化测试系统,方法包括通过NLP引擎构建生成网络将测试需求文本描述作为输入,自动生成的测试用例作为输出;构建判别网络,将自动生成的测试用例和样本用例作为输入,判别网络判断输入的数据属于样本用例的概率;根据判别网络对自动生成的测试用例和样本用例判别差异度,并根据该差异度对NLP引擎进行优化,直到判别网络对自动生成的测试用例的输出满足需求;利用满足需求的NLP引擎生成测试用例,并对测试用例进行校验,将满足校验要求的测试用例用于仪器测试;本发明专利技术大大降低了测试的成本、提升了自动化效果。

【技术实现步骤摘要】

本专利技术属于自动化测试,具体涉及一种测试实例生成方法及自动化测试系统


技术介绍

1、仪表微控制芯片是一种集数据采集、处理、存储、通信等高集成度仪表核心模块。仪表核心模块基于仪表专用控制器芯片及少量外围电路组合而成,其具有体积小、驱动库丰富、软件可裁剪等特点,根据产品特点,设计相应的外设电路,方便快速设计出温度、流量、液位、压力以及电动执行器等仪表类产品,减少其研发人力物力投入,大大缩短产品研发周期。

2、目前,部分仪表核心模块已有针对仪表自身故障监测的相关方案研究,但是,目前的测试方案还不够完善。仪表自身故障的监测只针对仪表内部软、硬故障做出相应的预警和算法校正,无法对仪表核心模块的外围接口功能、总线通信功能以及仪表核心模块内部功能算法块进行测试。

3、大部分测试方案仍采用手动生成测试用例,这种方案存在一系列不足,包括耗时耗力、有限的覆盖范围,易产生错误,难以应对系统变化,容易受主观偏见影响,难以扩展复用,在大规模项目中不切实际,可能忽略隐藏问题等。此外,手动生成测试用例可能受限于测试人员的主观经验,导致不准确和不全面的测试覆盖。

4、但是,自动生成测试用例在复杂环境下容易出现遗漏和疏漏,无法满足高效率和全面性的测试需求。同时训练数据可能存在偏差和不平衡,导致生成的测试用例也具有相同的问题,导致测试用例无法充分覆盖各种情况,或者过多地关注某些常见情况而忽略其他重要情况。


技术实现思路

1、为了实现对外围接口功能的测试,并对总线通信功能以及仪表核心模块内部算法功能库进行测试,本专利技术提出一种测试实例生成方法,具体包括以下步骤:

2、根据仪表核心模块的测试需求,人工编写对应的测试用例,并对测试用例进行预处理,获得对应的样本用例;

3、通过nlp引擎构建生成网络将测试需求文本描述作为输入,自动生成的测试用例作为输出;

4、构建判别网络,将自动生成的测试用例和样本用例作为输入,判别网络判断输入的数据属于样本用例的概率;

5、根据判别网络对自动生成的测试用例和样本用例判别差异度,并根据该差异度对nlp引擎进行优化,直到判别网络对自动生成的测试用例的输出满足需求;

6、利用满足需求的nlp引擎生成测试用例,并对测试用例进行校验,将满足校验要求的测试用例用于仪器测试。

7、进一步的,对测量用例进行预处理包括对测试需求文本进行分词或者子词划分,将分词或者子词划分后的文本转换为数字表示,即利用单词索引或者词向量的方式表示。

8、进一步的,通过nlp引擎构建的生成网络包括多个编码器以及与编码器数量相同的解码器,其中编码器用于从输入的数据中提取特征,每个编码器由级联的自注意层和前馈网络层构成;解码器用于根据提取的特征生成测试用例,解码器由级联的自注意层、编码器-解码器注意力层和前馈网络层构成。

9、进一步的,对生成网络和判别网络之间的训练包括以下步骤:

10、固定生成网络的网络参数,以最大化gan目标函数为目标,求测试用例样本与自动生成测试用例之间的js散度,根据gan目标函数计算损失函数对判别网络进行第一次训练;

11、完成对判别网络的训练后,固定判别网络的网络参数,以最小化自动生成的测试用例和测试样本之间的js散度,根据js散度计算损失函数对生成网络进行第一次训练;

12、完成训练后的根据生成网络与判别网络输出的测试用例分布计算代价矩阵;

13、基于ipot算法根据代价矩阵对传输矩阵进行更新,并根据代价矩阵和传输矩阵计算代价变化距离;

14、固定判别网络,对生成网络进行第二次训练,最小化代价变化距离,根据代价变化距离计算损失函数对生成网络进行优化;

15、固定生成网络,对判别网络进行第二次训练,最大化代价变化距离,根据代价变化距离计算损失函数对生成网络进行优化。

16、不断对判别网络和生成网络进行第二次优化,直到生成样本和真实样本的js散度小于预设阈值。

17、进一步的,代价变化距离的计算包括:

18、

19、其中,dcvd(pz,pdata)表示代价变化距离,pz表示测试需求分布,pdata表示测试用例样本分布;tij表示优化后的传输矩阵,c(di,gj)表示动态的代价函数拟合生成的测试用例数据的分布,di表示优化i次后的判断网络;gj表示优化j次的生成网络;m表示判别网络优化次数,n表示生成网络优化次数。

20、进一步的,传输矩阵的计算包括:

21、

22、其中,t(t+1)表示迭代后t+1次后的传输矩阵;t表示传输矩阵;

23、∏(pz,pdata)代表从测试需求分布pz传输到测试用例样本分布pdata的所有传输矩阵的集合,β表示近端点优化的惩罚因子;dh(t,t(t))表示传输矩阵与迭代t次后的传输矩阵水平方向差分;<c,t>表示传输矩阵t和代价矩阵c的集合。

24、进一步的,代价矩阵的计算包括:

25、

26、其中,c(d,g)表示动态的代价函数拟合生成的测试用例数据的分布,获得代价矩阵;d表示判别网络;g表示生成网络;f(d,θ)表示cnn判别网络输出,θ表示网络参数;f(g,θ)表示transformer生成网络输出;‖·‖2表示2-范数。

27、进一步的,对生成网络进行第一次训练,即以最小化自动生成的测试用例和测试样本之间的js散度为目标进行训练,其生成网络的损失函数表示为:

28、lossg=-log(d(g(z)))

29、自动生成的测试用例和测试样本之间的js散度表示为:

30、js(d,g)=(∑d(x)log(d(x)/m(x,z))+∑d(g(z))log(d(g(z))/m(x,z)))/2

31、对生成网络进行第二次训练时,生成网络的损失函数表示为:

32、

33、其中,js(d,g)表示自动生成的测试用例和测试样本之间的js散度;d(x)表示在判别网络中判断测试用例样本x的来源;m(x,z)表示d(x)与d(g(z))的平均分布,表示为m(x,z)=(d(x)+d(g(z)))/2;lossg表示第二次训练时生成网络的损失函数;表示在测试用例样本分布和测试需求分布的期望值;dcvd(f(x),f(g(z)))表示测试用例样本与自动生成的测试用例的代价变化距离;f(x)表示测试用例样本分布;f(g(z))表示自动生成测试用例分布;g(z)表示在生成网络中基于z生成的测试用例;pdata为测试用例样本分布,z为与测试用例样本功能相同的测试需求文本描述,pz为测试需求分布。

34、进一步的,判别网络进行第一次训练时,以最大化gan目标函数对判别网络进行训练,其判别网络损失函数表示为:

35、lossd=-log(d(x))-log(1-d(g(z)))<本文档来自技高网...

【技术保护点】

1.一种测试实例生成方法,其特征在于,具体包括以下步骤:

2.根据权利要求1所述的一种测试实例生成方法,其特征在于,对测量用例进行预处理包括对测试需求文本进行分词或者子词划分,将分词或者子词划分后的文本转换为数字表示,即利用单词索引或者词向量的方式表示。

3.根据权利要求1所述的一种测试实例生成方法,其特征在于,通过NLP引擎构建的生成网络包括多个编码器以及与编码器数量相同的解码器,其中编码器用于从输入的数据中提取特征,每个编码器由级联的自注意层和前馈网络层构成;解码器用于根据提取的特征生成测试用例,解码器由级联的自注意层、编码器-解码器注意力层和前馈网络层构成。

4.根据权利要求1所述的一种测试实例生成方法,其特征在于,对生成网络和判别网络之间的训练包括以下步骤:

5.根据权利要求4所述的一种测试实例生成方法,其特征在于,代价变化距离的计算包括:

6.根据权利要求5所述的一种测试实例生成方法,其特征在于,传输矩阵的计算包括:

7.根据权利要求5所述的一种测试实例生成方法,其特征在于,代价矩阵的计算包括:p>

8.根据权利要求4所述的一种测试实例生成方法,其特征在于,对生成网络进行第一次训练,即以最小化自动生成的测试用例和测试样本之间的JS散度为目标进行训练,第一次训练的过程中生成网络损失函数表示为:

9.根据权利要求4所述的一种测试实例生成方法,其特征在于,判别网络进行第一次训练时,以最大化GAN目标函数对判别网络进行训练,第一次训练过程中判别网络的损失函数表示为:

10.一种自动化测试系统,包括上位机测试模块、ARM测试板、仪表核心模块和总线网络,其中:

...

【技术特征摘要】

1.一种测试实例生成方法,其特征在于,具体包括以下步骤:

2.根据权利要求1所述的一种测试实例生成方法,其特征在于,对测量用例进行预处理包括对测试需求文本进行分词或者子词划分,将分词或者子词划分后的文本转换为数字表示,即利用单词索引或者词向量的方式表示。

3.根据权利要求1所述的一种测试实例生成方法,其特征在于,通过nlp引擎构建的生成网络包括多个编码器以及与编码器数量相同的解码器,其中编码器用于从输入的数据中提取特征,每个编码器由级联的自注意层和前馈网络层构成;解码器用于根据提取的特征生成测试用例,解码器由级联的自注意层、编码器-解码器注意力层和前馈网络层构成。

4.根据权利要求1所述的一种测试实例生成方法,其特征在于,对生成网络和判别网络之间的训练包括以下步骤:

5.根据权利要求4...

【专利技术属性】
技术研发人员:陈俊华范昕黄学达
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:

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

1