一种用于软件测试的用例数据推荐方法、系统和介质转让专利
申请号 : CN202110828715.6
文献号 : CN113282519B
文献日 : 2021-11-12
发明人 : 孟崎 , 贯春宇 , 闫卫杰
申请人 : 北京关键科技股份有限公司
摘要 :
权利要求 :
1.一种用于软件测试的用例数据推荐方法,其特征在于,所述方法包括:步骤S1、获取用户输入的测试需求;
步骤S2、提取所述测试需求中的知识论元子图,所述知识论元子图表示所述测试需求中包含的基于自然语言的短语和单词的知识论元关系;
步骤S3、在知识库中查询与所述知识论元子图对应的知识库子图;以及步骤S4、基于查询到的所述知识库子图,确定向所述用户推荐的所述用例数据;
其中,所述知识库中的各个所述知识库子图通过以下方式来构建:基于深度神经网络来提取所述用例数据中的知识论元;
根据语法结构,利用依存分析或语义解析来确定多个所述知识论元之间的关系,以及基于所述关系来确定所述知识论元对应的事件角色,从而构建所述用例数据的所述知识库子图;
其中,所述步骤S4进一步包括:从所述知识库子图中获取多个候选答案;
通过TRANSE算法确定所述知识库子图中的多条路径;
从所述多条路径中提取出表征所述候选答案特征的特征向量;以及将所述特征向量作为分类器的输入,来获取向所述用户推荐的所述用例数据。
2.根据权利要求1所述的用于软件测试的用例数据推荐方法,其特征在于,在所述步骤S3,通过确定所述知识论元子图中包含的各个论元在所述知识库中的位置来查询所述知识库中与所述知识论元子图对应的知识库子图。
3.一种用于软件测试的用例数据推荐系统,其特征在于,所述系统包括:获取单元,被配置为,获取用户输入的测试需求;
提取单元,被配置为,提取所述测试需求中的知识论元子图,所述知识论元子图表示所述测试需求中包含的基于自然语言的短语和单词的知识论元关系;
查询单元,被配置为,在知识库中查询与所述知识论元子图对应的知识库子图;以及确定单元,被配置为,基于查询到的所述知识库子图,确定向所述用户推荐的所述用例数据;
其中,所述知识库包含在所述用例数据推荐系统中,或通过外部连接将其连接至所述用例数据推荐系统,所述知识库中的各个所述知识库子图通过以下方式来构建:基于深度神经网络来提取所述用例数据中的知识论元;
根据语法结构,利用依存分析或语义解析来确定多个所述知识论元之间的关系,以及基于所述关系来确定所述知识论元对应的事件角色,从而构建所述用例数据的所述知识库子图;
所述确定单元进一步被配置为:
从所述知识库子图中获取多个候选答案;
通过TRANSE算法确定所述知识库子图中的多条路径;
从所述多条路径中提取出表征所述候选答案特征的特征向量;以及将所述特征向量作为分类器的输入,来获取向所述用户推荐的所述用例数据。
4.根据权利要求3所述的用于软件测试的用例数据推荐系统,其特征在于,所述查询单元进一步被配置为,通过确定所述知识论元子图中包含的各个论元在所述知识库中的位置来查询所述知识库中与所述知识论元子图对应的知识库子图。
5.一种存储有指令的非暂时性计算机可读介质,当所述指令由处理器执行时,执行根据权利要求1‑2中任一项所述的用于软件测试的用例数据推荐方法中的步骤。
说明书 :
一种用于软件测试的用例数据推荐方法、系统和介质
技术领域
背景技术
程。软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件
质量,并对其是否能满足设计要求进行评估的过程。
试等同于调试,目的是纠正软件中已经知道的故障,常常由开发人员自己完成这部分的工
作。随着软件和IT行业进入大发展阶段,软件趋向大型化、高复杂度,软件的质量越来越重
要。一些软件测试的基础理论和实用技术开始形成,并且人们开始为软件开发设计了各种
流程和管理方法,软件开发的方式也逐渐由混乱无序的开发过程过渡到结构化的开发过
程,以结构化分析与设计、结构化评审、结构化程序设计以及结构化测试为特征。随着将质
量的概念融入其中,软件测试定义发生了改变,测试不单纯是一个发现错误的过程,而且将
测试作为软件质量保证的主要职能,包含软件质量评价的内容。在《软件测试完全指南》中,
测试是以评价一个程序或者系统属性为目标的任何一种活动;测试是对软件质量的度量。
该定义至今仍被引用。软件开发人员和测试人员开始坐在一起探讨软件工程和测试问题。
软、硬件资源,去开展测试工作。整个测试过程中需要耗费大量资源和时间。
发明内容
试设计的工作,减少资源投入,并缩短测试周期。
模型。在测试人员设计测试用例时,根据测试需求和测试功能,为测试人员智能推荐出尽可
能适配测试需求、功能的测试用例数据,以便测试人员快速构建出大量满足需求的测试用
例数据,减少测试人员的在测试用例设计阶段的工作,在测试设计过程节省大量的时间。
识论元子图表示所述测试需求中包含的基于自然语言的短语和单词的知识论元关系;步骤
S3、在知识库中查询与所述知识论元子图对应的知识库子图;以及步骤S4、基于查询到的所
述知识库子图,确定向所述用户推荐的所述用例数据。
存分析或语义解析来确定多个所述知识论元之间的关系,以及基于所述关系来确定所述知
识论元对应的事件角色,从而构建所述用例数据的所述知识库子图。
的知识库子图。
中提取出表征所述候选答案特征的特征向量;以及将所述特征向量作为分类器的输入,来
获取向所述用户推荐的所述用例数据。
的知识论元子图,所述知识论元子图表示所述测试需求中包含的基于自然语言的短语和单
词的知识论元关系;查询单元,被配置为,在知识库中查询与所述知识论元子图对应的知识
库子图;以及确定单元,被配置为,基于查询到的所述知识库子图,确定向所述用户推荐的
所述用例数据。
通过以下方式来构建:基于深度神经网络来提取所述用例数据中的知识论元;根据语法结
构,利用依存分析或语义解析来确定多个所述知识论元之间的关系,以及基于所述关系来
确定所述知识论元对应的事件角色,从而构建所述用例数据的所述知识库子图。
论元子图对应的知识库子图。
条路径中提取出表征所述候选答案特征的特征向量;以及将所述特征向量作为分类器的输
入,来获取向所述用户推荐的所述用例数据。
步骤。
试设计过程节省大量的时间。
附图说明
附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前
提下,还可以根据这些附图获得其他的附图。
具体实施方式
人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
的工作,从而在测试设计过程节省大量的时间。
S1,可以基于用户输入的方式来获取所述测试需求,也可以通过其他方式,包括但不限于:
通过测试平台的配置,或者通过外部数据导入等。
单词映射到知识库论元或论元关系,进而将需求描述转化为知识库可以进行理解的需求知
识论元子图。
试项目信息等进行归类、汇总、入库、存储,实现测试用例数据积累。
解析来确定多个所述知识论元之间的关系,以及基于所述关系来确定所述知识论元对应的
事件角色,从而构建所述用例数据的所述知识库子图。对于即将入库存存储的测试用例,通
过构建深度神经网络,提取测试用例数据中的知识论元,基于句法结构利用依存分析或者
语义解析确定不同论元之间的关系,同时根据事件的触发词获取事件相应描述的句子,识
别事件描述句子中论元对应事件的角色,构建完整的知识图谱,即该测试用例的知识库子
图。
识库中查询知识论元子图中的知识论元的位置,以得到所述位置上的论元为中心的知识库
子图。
图中的多条路径;从所述多条路径中提取出表征所述候选答案特征的特征向量;以及将所
述特征向量作为分类器的输入,来获取向所述用户推荐的所述用例数据。
特征的特征向量,建立分类器,通过输入特征向量对候选答案进行筛选,从而筛选出可能适
用于当前测试需求的测试用例信息,推荐给测试人员完成测试用例设计。
积累大量的测试用例数据。并依据采集的典型测试用例数据,进行深度处理,生成智能用例
推荐模型。在开展测试时,针对测试需求和功能,通过智能推荐模型为测试人员推荐使用的
测试用例数据。同时通过对大量测试用例数据的学习,提高测试用例智能推荐的准确性和
针对性。
单元,被配置为,获取用户输入的测试需求;提取单元,被配置为,提取所述测试需求中的知
识论元子图,所述知识论元子图表示所述测试需求中包含的基于自然语言的短语和单词的
知识论元关系;查询单元,被配置为,在知识库中查询与所述知识论元子图对应的知识库子
图;以及确定单元,被配置为,基于查询到的所述知识库子图,确定向所述用户推荐的所述
用例数据。
构建:基于深度神经网络来提取所述用例数据中的知识论元;根据语法结构,利用依存分析
或语义解析来确定多个所述知识论元之间的关系,以及基于所述关系来确定所述知识论元
对应的事件角色,从而构建所述用例数据的所述知识库子图。
知识库子图。在一些实施例中,所述确定单元进一步被配置为:从所述知识库子图中获取多
个候选答案;通过TRANSE算法确定所述知识库子图中的多条路径;从所述多条路径中提取
出表征所述候选答案特征的特征向量;以及将所述特征向量作为分类器的输入,来获取向
所述用户推荐的所述用例数据。
步骤。
然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进
行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术
方案的范围。