软件测试用例的冗余校验方法、装置、电子设备及介质制造方法及图纸

技术编号:38219127 阅读:8 留言:0更新日期:2023-07-25 11:30
本公开提供了一种软件测试用例的冗余校验方法、装置、电子设备及介质,可用于金融领域或其他领域。该方法包括:获取针对软件的同一目标类的测试用例集合,测试用例集合包括特定单元测试用例和多个待校验测试用例;根据目标类预设多个特征属性,基于词法分析来构建每个特征属性对应的特征抽取器;针对测试用例集合中的每个测试用例,使用多个特征抽取器来抽取该测试用例的多个特征信息;以特定单元测试用例的至少一个特征信息作为参考特征信息集,分别将每个待校验测试用例的至少一个特征信息与参考特征信息集进行匹配校验;根据匹配校验的结果,确定特定单元测试用例在多个待校验测试用例中的冗余状态。试用例中的冗余状态。试用例中的冗余状态。

【技术实现步骤摘要】
软件测试用例的冗余校验方法、装置、电子设备及介质


[0001]本公开涉及软件测试
,可用于金融领域或其他领域,更具体地涉及一种软件测试用例的冗余校验方法、装置、电子设备、存储介质和程序产品。

技术介绍

[0002]单元测试(Unit Testing)是针对软件的某一模块的正确性进行检验,Junit Test Case通过代码确保实现类中的方法按预期工作。例如,在Java程序中通常编写对应的测试类,测试类通常包含多个测试用例,可以通过JUnit测试用例来测试Java实现类是否符合预期。
[0003]单元测试是已知方法的输入和预期输出,而在编写测试用例的过程中,可能会将同一个方法的正案例或者反案例重复测试,存在冗余的测试类,影响到测试效率。通过对重复测试用例进行校验,来保证代码的简洁。如果不够完整,可以通过覆盖率进行调整优化,而如果存在重复,则很难觉察。

技术实现思路

[0004]鉴于上述问题,本公开提供了一种可提高测试效率的软件测试用例的冗余校验方法、装置、电子设备、存储介质和程序产品。
[0005]根据本公开的第一个方面,提供了一种软件测试用例的冗余校验方法,包括:获取针对软件的同一目标类的测试用例集合,测试用例集合包括特定单元测试用例和多个待校验测试用例;根据目标类预设多个特征属性,基于词法分析来构建每个特征属性对应的特征抽取器;针对测试用例集合中的每个测试用例,使用多个特征抽取器来抽取该测试用例的多个特征信息;以特定单元测试用例的至少一个特征信息作为参考特征信息集,分别将每个待校验测试用例的至少一个特征信息与参考特征信息集进行匹配校验;根据匹配校验的结果,确定特定单元测试用例在多个待校验测试用例中的冗余状态。
[0006]根据本公开的实施例,目标类包括Java实现类,多个特征属性包括数据准备、断言执行、Mock结果和测试场景。
[0007]根据本公开的实施例,参考特征信息集包括第一参考特征信息;以特定单元测试用例的至少一个特征信息作为参考特征信息集,分别将每个待校验测试用例的至少一个特征信息与参考特征信息集进行匹配校验,包括:从特定单元测试用例的多个特征信息中任意选取一个特征信息,作为第一参考特征信息;针对多个待校验测试用例中的每个待校验测试用例,将该待校验测试用例中与第一参考特征信息的特征属性相对应的特征信息,作为第一目标特征信息;计算第一目标特征信息与第一参考特征信息的第一文本相似度;在确定第一文本相似度高于相似度阈值的情况下,确定第一目标特征信息与第一参考特征信息相似。
[0008]根据本公开的实施例,多个特征信息均为字符串形式,第一文本相似度包括莱文斯坦比;计算第一目标特征信息与第一参考特征信息的第一文本相似度包括:根据第一目
标特征信息的字符串长度和第一参考特征信息的字符串长度,计算第一目标特征信息与第一参考特征信息的莱文斯坦距离;根据莱文斯坦距离,确定第一目标特征信息与第一参考特征信息的莱文斯坦比。
[0009]根据本公开的实施例,该方法还包括:判断第一参考特征信息在多个待校验测试用例中是否存在相似的特征信息,如果是,则针对特定单元测试用例的另一个特征信息返回从特定单元测试用例的多个特征信息中任意选取一个特征信息的操作;否则,确定第一参考特征信息具有唯一属性。
[0010]根据本公开的实施例,特征信息为T个,T≥3且为整数;参考特征信息集还包括第二参考特征信息;以特定单元测试用例的至少一个特征信息作为参考特征信息集,分别将每个待校验测试用例的至少一个特征信息与参考特征信息集进行匹配校验,还包括:在确定特定单元测试用例的T个特征信息中均不存在具有唯一属性的特征信息的情况下,从特定单元测试用例的T个特征信息中任意选取t个特征信息并按照预定顺序进行组合,得到第二参考特征信息,1<t≤T且t为整数;针对多个待校验测试用例中的每个待校验测试用例,将该待校验测试用例中与第二参考特征信息的特征属性相对应的t个特征信息按照预定顺序进行组合,得到第二目标特征信息;计算第二目标特征信息与第二参考特征信息的第二文本相似度;在确定第二文本相似度高于相似度阈值的情况下,确定第二目标特征信息与第二参考特征信息相似。
[0011]根据本公开的实施例,该方法还包括:判断第二参考特征信息在多个待校验测试用例中是否存在相似的组合特征信息,如果是,则针对特定单元测试用例的另外t个特征信息返回从特定单元测试用例的T个特征信息中任意选取t个特征信息并按照预定顺序进行组合的操作;否则,确定第二参考特征信息具有唯一属性。
[0012]根据本公开的实施例,根据匹配校验的结果,确定特定单元测试用例在多个待校验测试用例中的冗余状态,包括:在匹配校验的结果为第一校验结果的情况下,确定多个待校验测试用例中不存在与特定单元测试用例冗余的测试用例,其中,第一校验结果表征了特定单元测试用例中存在至少一个具有唯一属性的特征信息。
[0013]根据本公开的实施例,根据匹配校验的结果,确定特定单元测试用例在多个待校验测试用例中的冗余状态,还包括:在匹配校验的结果为第二校验结果的情况下,确定多个待校验测试用例中存在至少一个与特定单元测试用例冗余的测试用例,其中,第二校验结果表征了特定单元测试用例中均不存在具有唯一属性的特征信息。
[0014]根据本公开的实施例,确定多个待校验测试用例中存在至少一个与特定单元测试用例冗余的测试用例之后,还包括:在多个待校验测试用例中,删除至少一个与特定单元测试用例冗余的测试用例。
[0015]本公开的第二方面提供了一种软件测试用例的冗余校验装置,包括:测试用例获取模块,用于获取针对软件的同一目标类的测试用例集合,测试用例集合包括特定单元测试用例和多个待校验测试用例;特征抽取器构建模块,用于根据目标类预设多个特征属性,基于词法分析来构建每个特征属性对应的特征抽取器;特征信息抽取模块,用于针对测试用例集合中的每个测试用例,使用多个特征抽取器来抽取该测试用例的多个特征信息;匹配校验模块,用于以特定单元测试用例的至少一个特征信息作为参考特征信息集,分别将每个待校验测试用例的至少一个特征信息与参考特征信息集进行匹配校验;冗余状态确定
模块,用于根据匹配校验的结果,确定特定单元测试用例在多个待校验测试用例中的冗余状态。
[0016]本公开的第三方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行上述软件测试用例的冗余校验方法。
[0017]本公开的第四方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述软件测试用例的冗余校验方法。
[0018]本公开的第五方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述软件测试用例的冗余校验方法。
[0019]根据本公开提供的冗余校验方法、装置、电子设备、存储介质和程序产品,基于词法分析,针对Java开发本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种软件测试用例的冗余校验方法,包括:获取针对所述软件的同一目标类的测试用例集合,所述测试用例集合包括特定单元测试用例和多个待校验测试用例;根据所述目标类预设多个特征属性,基于词法分析来构建每个所述特征属性对应的特征抽取器;针对所述测试用例集合中的每个测试用例,使用多个所述特征抽取器来抽取该测试用例的多个特征信息;以所述特定单元测试用例的至少一个特征信息作为参考特征信息集,分别将每个所述待校验测试用例的至少一个特征信息与所述参考特征信息集进行匹配校验;根据所述匹配校验的结果,确定所述特定单元测试用例在所述多个待校验测试用例中的冗余状态。2.根据权利要求1所述的方法,其中,所述目标类包括Java实现类,所述多个特征属性包括数据准备、断言执行、Mock结果和测试场景。3.根据权利要求1所述的方法,其中,所述参考特征信息集包括第一参考特征信息;所述以所述特定单元测试用例的至少一个特征信息作为参考特征信息集,分别将每个所述待校验测试用例的至少一个特征信息与所述参考特征信息集进行匹配校验,包括:从所述特定单元测试用例的多个特征信息中任意选取一个特征信息,作为所述第一参考特征信息;针对所述多个待校验测试用例中的每个待校验测试用例,将该待校验测试用例中与所述第一参考特征信息的特征属性相对应的特征信息,作为第一目标特征信息;计算所述第一目标特征信息与所述第一参考特征信息的第一文本相似度;在确定所述第一文本相似度高于相似度阈值的情况下,确定所述第一目标特征信息与所述第一参考特征信息相似。4.根据权利要求3所述的方法,其中,所述多个特征信息均为字符串形式,所述第一文本相似度包括莱文斯坦比;所述计算所述第一目标特征信息与所述第一参考特征信息的第一文本相似度包括:根据所述第一目标特征信息的字符串长度和所述第一参考特征信息的字符串长度,计算所述第一目标特征信息与所述第一参考特征信息的莱文斯坦距离;根据所述莱文斯坦距离,确定所述第一目标特征信息与所述第一参考特征信息的所述莱文斯坦比。5.根据权利要求3所述的方法,还包括:判断所述第一参考特征信息在所述多个待校验测试用例中是否存在相似的特征信息,如果是,则针对所述特定单元测试用例的另一个特征信息返回所述从所述特定单元测试用例的多个特征信息中任意选取一个特征信息的操作;否则,确定所述第一参考特征信息具有唯一属性。6.根据权利要求5所述的方法,其中,所述特征信息为T个,T≥3且为整数;所述参考特征信息集还包括第二参考特征信息;所述以所述特定单元测试用例的至少一个特征信息作为参考特征信息集,分别将每个所述待校验测试用例的至少一个特征信息与所述参考特征信息集进行匹配校验,还包括:
在确定所述特定单元测试用例的T个特征信息中均不存在所述具有唯一属性的特征信息的情况下,从所述特定单元测试用例的T个特征信息中任意选取t个特征信息并按照预定顺序进行组合,得到所述第二参考特征信息,1<t≤T且t为整数;针对所述多个待校验测试用例中的每个待校验测试用例,将该待校验测试用例中与所述第二参考特征信息的特征属性相...

【专利技术属性】
技术研发人员:刘涛刘华杰张珂欣尚天顺
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

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

1