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

一种基于谱聚类的测试用例复用方法及系统技术方案

技术编号:41408713 阅读:5 留言:0更新日期:2024-05-20 19:35
本发明专利技术公开了一种基于谱聚类的测试用例复用方法及系统,所述方法包括:步骤1、选择测试用例的属性;步骤2、对历史测试用例进行属性提取,并将提取结果以集合的方式存储在测试用例复用库中;步骤3、使用谱聚类算法对具体的属性信息进行谱聚类操作;步骤4、用户输入被测项目的各个属性信息和关键词,使用布谷鸟搜索算法从生成测试用例聚类簇中进行检索匹配,判断是否匹配到测试用例;是,将匹配到的测试用例与输入的数据信息结合,输出适用于被测项目的测试用例;否,测试人员设计新测试用例,输入到测试用例复用库中,使用谱聚类算法生成新的可复用测试用例。

【技术实现步骤摘要】

本专利技术涉及软件测试领域,具体是一种基于谱聚类的测试用例复用方法及系统


技术介绍

1、在现代软件开发中,测试用例是一种关键的工具,用于验证软件的功能是否符合预期,以及检查软件内部的程序结构是否正确。然而,设计和编写测试用例通常是非常耗时的,因为需要大量的人力和时间投入。为了提高测试效率,目前的解决方案是利用历史测试数据和积累的知识来指导新的测试用例的设计和编写。这种方法的核心是通过重用已有的测试用例,从而避免重复工作,并缩短测试周期。通过分析过去的测试结果和经验,测试人员可以更快地确定新的测试需求,并设计出更全面和高效的测试用例。这不仅能够提高测试效率,还可以提高测试人员的技能水平,帮助他们更好地应对各种测试场景,并提高软件测试的质量。

2、专利cn 112527650 a公布了一种测试用例复用方法和复用装置。该专利技术首先对历史测试用例进行来源分析和数据分析,然后对分析得到的数据进行用例信息解析,通过定向脚本数据模块,将匹配的测试用例和输入的测试数据结合进行新测试用例的输出,完成测试用例复用。此方法能用很好的实现相似项目的测试用例复用,但是该方法依然存在诸多问题:

3、1、历史测试用例的归类方法过于简单:该专利技术仅仅对历史测试用例进行基本的来源分析和数据分解,据此对测试用例进行归类,这种方法可能导致在推荐测试用例的过程中出现推荐的测试用例与用户想要的测试用例不一致的情况。

4、2、选择目标设计规范信息的局限性大:用户可能面临的局限性包括但不限于输入选项的有限性、输入参数的约束等。这可能会限制用户根据具体项目的需求进行灵活输入,导致推荐的测试用例出现不符合实际测试场景的情况。

5、3、系统找不到合适的测试用例时处理方法不明确:当系统无法找到匹配的测试用例时,未提供明确的处理方法。


技术实现思路

1、专利技术目的:提供一种基于谱聚类的测试用例复用方法及系统,以解决现有技术存在的上述问题。

2、技术方案:一种基于谱聚类算法的测试用例复用方法,包括:

3、步骤1、选择测试用例的属性;

4、步骤2、对历史测试用例进行属性提取,并将提取结果以集合的方式存储在测试用例复用库中;

5、步骤3、使用谱聚类算法对具体的属性信息进行谱聚类操作;

6、步骤4、用户输入被测项目的各个属性信息和关键词,使用布谷鸟搜索算法从生成测试用例聚类簇中进行检索匹配,判断是否匹配到测试用例;

7、是,将匹配到的测试用例与输入的数据信息结合,输出适用于被测项目的测试用例;

8、否,测试人员设计新测试用例,输入到测试用例复用库中,使用谱聚类算法生成新的可复用测试用例。

9、本专利技术设计谱聚类算法对测试用例添加属性标签并提取相应的属性信息,计算各属性信息的距离,并将相似的属性进行聚类,布谷鸟搜索算法通过输入的关键词搜索最符合的测试用例,通过这两种算法,大大提高了测试用例复用的成功率和与现实场景的符合度,能够高效选择与输入关键词最相似的测试用例,从而提高了测试用例的选择效率,减少了测试用例的冗余和重复,加速了软件测试流程,缩短了测试周期,提高了软件的发布速度和质量。

10、在进一步实施例中,所述测试用例的属性包括测试类型、用例名称、测试描述、前提条件、测试输入、测试步骤、测试结果。

11、在进一步实施例中,在测试用例复用库中,测试用例的属性被用作主键,每个属性的具体信息则作为主键对应的值进行存储。

12、在进一步实施例中,所述谱聚类算法的步骤为:

13、步骤01、从测试用例复用库中提取各个属性的具体信息,构建属性矩阵。其中每一行代表一个测试用例,每一列代表一个属性。

14、步骤02、将每个测试用例的属性信息转换为一个特征向量,本专利技术通过词袋模型(bag of words)来实现。对于每个属性将其表示为一个向量,特征向量的每个维度对应一个词汇,特征向量的每个元素表示词汇在属性信息中出现的频率或者权重,使用余弦相似度来计算各个属性的相似度距离,包括:

15、

16、其中,和分别代表两个向量,表示两个向量的点积,和分别表示两个向量的模,通过余弦相似度计算,得到范围在,之间的相似度值,值越接近1表示两个属性之间的相似度越高;

17、步骤03、将每个测试用例表示为图中的一个节点,每个节点具有一个唯一的标识符,可以是测试用例的id或者其他标识符。

18、根据余弦相似度,计算每对测试用例之间的相似度,得到相似度矩阵,其中每个元素表示测试用例 i和测试用例 j之间的相似度;对于相似度矩阵中的每个元素大于设定的阈值时,在图中添加一条边,连接测试用例和测试用例 j,边的权重即为相似度;

19、步骤04、据相似度图计算拉普拉斯矩阵,其计算公式为,其中为度矩阵,为邻接矩阵;

20、步骤05、对拉普拉斯矩阵进行特征向量分解,得到特征向量矩阵;

21、步骤06、根据前几个最小的特征值所对应的特征向量,构建新的特征空间;

22、步骤07、将特征空间中的测试用例通过k-means聚类算法进行聚类,确定聚类数目k,在k-means聚类过程中,首先随机选择k个初始质心,然后将每个数据点分配到距离最近的质心所在的簇中,接着更新每个簇的质心,重复在k-means聚类过程直到质心不再变化或达到最大迭代次数。

23、在进一步实施例中,使用布谷鸟搜索算法从生成测试用例聚类簇中进行检索匹配的过程为:

24、步骤001:在生成的测试用例聚类簇中随机选择多个簇作为初始种群的一部分;需要确保种群大小涵盖需要测试的各种情况。

25、步骤002:根据输入的关键词,计算关键词与每个簇的相似度,相似度的计算公式表示为:

26、

27、其中, testcase表示初始化种群中的测试用例集合, inputkeywords表示输入的关键词集合,j( )表示使用 jaccard相似度计算,计算公式为:

28、

29、其中,a,b分别为输入的两个向量,表示两者交集大小,表示两者并集大小;

30、步骤003、遍历测试用例复用库,选择适应度较高的测试用例作为最优解进行输出。

31、结合步骤003,通过布谷鸟搜索算法输出测试用例,输出模块将测试用例和被测项目的测试数据结合,进行测试用例的输出。

32、一种基于谱聚类的测试用例复用系统,包括:

33、输入模块,用于输入待测项目测试用例的属性和数据信息;

34、检索模块,用于将被测项目属性信息与测试用例聚类簇进行检索匹配;

35、输出模块,用本文档来自技高网...

【技术保护点】

1.一种基于谱聚类算法的测试用例复用方法,其特征在于,包括:

2.根据权利要求1所述的一种基于谱聚类算法的测试用例复用方法,其特征是:所述测试用例的属性包括测试类型、用例名称、测试描述、前提条件、测试输入、测试步骤、测试结果。

3.根据权利要求1所述的一种基于谱聚类算法的测试用例复用方法,其特征是:在测试用例复用库中,测试用例的属性被用作主键,每个属性的具体信息则作为主键对应的值进行存储。

4.根据权利要求1所述的一种基于谱聚类算法的测试用例复用方法,其特征是:使用布谷鸟搜索算法从生成测试用例聚类簇中进行检索匹配的过程为:

5.一种基于谱聚类的测试用例复用系统,其特征在于,包括:

【技术特征摘要】

1.一种基于谱聚类算法的测试用例复用方法,其特征在于,包括:

2.根据权利要求1所述的一种基于谱聚类算法的测试用例复用方法,其特征是:所述测试用例的属性包括测试类型、用例名称、测试描述、前提条件、测试输入、测试步骤、测试结果。

3.根据权利要求1所述的一种基于谱聚类算法的测试用例复用方法,其特...

【专利技术属性】
技术研发人员:王坤张腾标钱柳健陶宇周振宇姚文强
申请(专利权)人:江苏省电子信息产品质量监督检验研究院江苏省信息安全测评中心
类型:发明
国别省市:

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

1