CN112416778A - 测试用例推荐方法、装置和电子设备 - Google Patents

测试用例推荐方法、装置和电子设备 Download PDF

Info

Publication number
CN112416778A
CN112416778A CN202011331448.3A CN202011331448A CN112416778A CN 112416778 A CN112416778 A CN 112416778A CN 202011331448 A CN202011331448 A CN 202011331448A CN 112416778 A CN112416778 A CN 112416778A
Authority
CN
China
Prior art keywords
case
project
initial
keywords
test case
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011331448.3A
Other languages
English (en)
Inventor
李森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN202011331448.3A priority Critical patent/CN112416778A/zh
Publication of CN112416778A publication Critical patent/CN112416778A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供了一种测试用例推荐方法、装置和电子设备,首先获取到目标项目的项目文档,然后从该项目文档中获取初始关键词,基于该初始关键词确定与该目标项目相关联的最终关键词;最后将该最终关键词输入至预先训练完成的用例推荐模型中,输出该目标项目的测试用例;该方式可以从目标项目的项目文档中自动获取初始关键词,从而可以避免因人工分析需求时存在的识别歧义,所导致的需求分析不足的问题,并且,该方式还对初始关键词进行扩展得到最终关键词,基于该最终关键词所输出的测试用例更加丰富,从而可以保证所设计的测试用例满足测试需求。

Description

测试用例推荐方法、装置和电子设备
技术领域
本发明涉及软件测试技术领域,尤其是涉及一种测试用例推荐方法、装置和电子设备。
背景技术
测试用例是指对一项特定的软件产品进行测试任务的描述,通常包括测试输入、执行条件以及预期结果等,通过测试用例可以核实软件产品是否满足特定软件需求;现有软件项目中,当需要对软件测试用例的需求进行分析时,往往需要参与、设计过多个相似项目的经验丰富的人员参与,这种人工分析需求的方式对参与人员要求较高,工作反复且进行时间较长,并且,存在因语言翻译、文化差异、使用角色等各因素带来的识别歧义,容易导致需求分析不足,从而无法保证所设计的测试用例满足测试需求。
发明内容
本发明的目的在于提供一种测试用例推荐方法、装置和电子设备,以提高需求分析的准确性,保证所设计的测试用例满足测试需求。
本发明提供的一种测试用例推荐方法,所述方法包括:获取目标项目的项目文档;从所述项目文档中获取初始关键词,基于所述初始关键词确定与所述目标项目相关联的最终关键词;其中,所述最终关键词包括所述初始关键词,以及与所述初始关键词相关的关键词;将所述最终关键词输入至预先训练完成的用例推荐模型中,输出所述目标项目的测试用例。
进一步的,所述从所述项目文档中获取初始关键词的步骤包括:将所述项目文档输入至预先训练完成的词汇模型中,输出所述初始关键词。
进一步的,所述词汇模型通过下述方式训练得到:获取第一项目文档样本;其中,所述第一项目文档样本中标记有关键词标签;将所述第一项目文档样本输入至初始词汇模型中,以通过所述初始词汇模型提取所述第一项目文档样本中的关键词,得到输出结果;基于所述关键词标签和所述输出结果确定第一损失值,基于所述第一损失值更新所述初始词汇模型的权重参数;继续执行获取第一项目文档样本的步骤,直至所述初始词汇模型收敛,得到所述词汇模型。
进一步的,预设词库中包括多个关键词组,每个所述关键词组中包括预设有关联关系的多个关键词;所述基于所述初始关键词确定与所述目标项目相关联的最终关键词的步骤包括:从所述预设词库中查找包括所述初始关键词的至少一部分关键字的目标关键词组;将所述目标关键词组中的多个关键词,确定为与所述目标项目相关联的所述最终关键词。
进一步的,所述方法还包括:如果所述预设词库中不包含所述初始关键词,将所述初始关键词更新至所述预设词库中。
进一步的,所述用例推荐模型通过下述方式得到:获取第二项目文档样本;其中,所述第二项目文档样本携带有与所述第二项目文档样本对应的第一参考测试用例;将所述第二项目文档样本输入至初始用例推荐模型中,以通过所述初始用例推荐模型输出第一测试用例;基于所述第一测试用例和所述第一参考测试用例确定第二损失值,基于所述第二损失值更新所述初始用例推荐模型的权重参数;继续执行获取第二项目文档样本的步骤,直至所述初始用例推荐模型收敛,得到训练后的第一用例推荐模型;获取项目文档验证样本,基于所述项目文档验证样本和所述第一用例推荐模型,确定所述用例推荐模型;其中,所述项目文档验证样本携带有与所述项目文档验证样本对应的第二参考测试用例。
进一步的,所述基于所述项目文档验证样本和所述第一用例推荐模型,确定所述用例推荐模型的步骤包括:将所述项目文档验证样本输入至所述第一用例推荐模型中,以通过所述第一用例推荐模型输出验证测试用例;基于所述验证测试用例和所述第二参考测试用例确定第三损失值,基于所述第三损失值更新所述第一用例推荐模型的权重参数;继续执行获取项目文档验证样本的步骤,直至所述第一用例推荐模型收敛,得到所述用例推荐模型。
进一步的,所述将所述最终关键词输入至预先训练完成的用例推荐模型中,输出所述目标项目的测试用例的步骤包括:将所述最终关键词输入至所述预先训练完成的用例推荐模型中,输出初始测试用例;响应用户针对于所述初始测试用例的选择指令,从所述初始测试用例中确定所述目标项目的测试用例。
进一步的,预设的标准化用例库中包括多种用例模块,每种所述用例模块包括归属于该用例模块对应属性的多个测试用例;所述将所述最终关键词输入至预先训练完成的用例推荐模型中,输出所述目标项目的测试用例的步骤之后,所述方法还包括:从所述预设的标准化用例库中获取所述用例模块,其中,所述用例模块包括登陆模块、会员模块和用户模块;将所述目标项目的测试用例与所述标准化用例库中,归属于同一用例模块的多个测试用例进行比较,确认所述目标项目的测试用例的覆盖率。
进一步的,所述标准化用例库中的每个测试用例包括预设的多个维度的特征标签;其中,所述特征标签包括所述测试用例所属指定项目的名称,以及所述指定项目的所属技术领域。
进一步的,所述将所述最终关键词输入至预先训练完成的用例推荐模型中,输出所述目标项目的测试用例的步骤之后,所述方法还包括:执行所述目标项目的测试用例;统计所述目标项目的测试用例的执行结果;其中,所述执行结果包括:所述目标项目的测试用例执行完成,或者,所述目标项目的测试用例中未执行成功的测试用例;如果所述执行结果中包括所述未执行成功的测试用例,生成告警消息;其中,所述告警消息用于指示所述目标项目的测试用例中,至少一部分测试用例未执行成功。
本发明提供的一种测试用例推荐装置,所述装置包括:获取模块,用于获取目标项目的项目文档;确定模块,用于从所述项目文档中获取初始关键词,基于所述初始关键词确定与所述目标项目相关联的最终关键词;其中,所述最终关键词包括所述初始关键词,以及与所述初始关键词相关的关键词;输出模块,用于将所述最终关键词输入至预先训练完成的用例推荐模型中,输出所述目标项目的测试用例。
本发明提供的一种电子设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现上述任一项所述的测试用例推荐方法。
本发明提供的一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述任一项所述的测试用例推荐方法。
本发明提供的测试用例推荐方法、装置和电子设备,首先获取到目标项目的项目文档,然后从该项目文档中获取初始关键词,基于该初始关键词确定与该目标项目相关联的最终关键词;最后将该最终关键词输入至预先训练完成的用例推荐模型中,输出该目标项目的测试用例;该方式可以从目标项目的项目文档中自动获取初始关键词,从而可以避免因人工分析需求时存在的识别歧义,所导致的需求分析不足的问题,并且,该方式还对初始关键词进行扩展得到最终关键词,基于该最终关键词所输出的测试用例更加丰富,从而可以保证所设计的测试用例满足测试需求。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种测试用例推荐方法的流程图;
图2为本发明实施例提供的另一种测试用例推荐方法的流程图;
图3为本发明实施例提供的另一种测试用例推荐方法的流程图;
图4为本发明实施例提供的另一种测试用例推荐方法的流程图;
图5为本发明实施例提供的另一种测试用例推荐方法的流程图;
图6为本发明实施例提供的另一种测试用例推荐方法的流程图;
图7为本发明实施例提供的一种测试用例推荐系统的部署示意图;
图8为本发明实施例提供的一种测试用例推荐装置的结构示意图;
图9为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有软件项目中,当需要对软件测试用例的需求进行分析时,需要参与、设计过多个相似项目的经验丰富的人员参与,对参与人员的要求较高,工作反复且进行时间较长,该过程往往需要与客户多次对接需求、评审需求等,但仍不可避免存在需求识别歧义、需求识别遗漏等严重风险问题。
目前多数公司仍广泛采用人工分析分解需求的方式,其中,该需求可以理解为该产品要实现的功能,需要测试人员编写测试用例对该功能进行验证,去测试这个需求是否能够实现,是否存在bug;通过需求管理平台对识别到的测试用例需求点进行统一的管理,这种人工分析需求的方式存在因语言翻译、文化差异和使用角色等因素带来的识别歧义,并且,需要在前期投入大量人力进行多轮需求范围确认,但仍不可避免范围覆盖不达标,其中,范围覆盖可以理解为测试用例需求的范围与实际想要的效果,以及是否已经全部覆盖要测试的功能点;当需求分析存在不足时,无法保证针对当前需求设计的测试用例及扩展用例满足测试需求,导致该需求分析的质量和整体软件质量不可控;另外,该方式虽然可以满足项目内所涉及的人员了解需求详情,但仅能支撑项目进展维护工作,对于测试人员来说,无法识别到存在的功能点异常的风险。
基于此,本发明实施例提供了一种测试用例推荐方法、装置和电子设备,该技术可以应用于可以对测试用例进行推荐的设备中。为便于对本实施例进行理解,首先对本发明实施例所公开的一种测试用例推荐方法进行详细介绍;如图1所示,该方法包括如下步骤:
步骤S102,获取目标项目的项目文档。
上述项目文档可以理解为在目标项目的生命周期中,进入测试阶段之前的所有文档;该项目文档可以包括合同,立项书,需求分析说明书,概要设计说明书,详细设计说明书,部署方案,资源分配说明书等;在实际实现时,当需要确定针对目标项目的测试用例时,通常需要先获取到该目标项目的项目文档。
步骤S104,从项目文档中获取初始关键词,基于初始关键词确定与目标项目相关联的最终关键词;其中,最终关键词包括初始关键词,以及与初始关键词相关的关键词。
上述初始关键词可以理解为从该项目文档中提取到的关键词,如提取到“登陆”关键词等;上述最终关键词可以理解为对初始关键词进行扩展后,所得到的包含该初始关键词,以及与该初始关键词有关联关系的其他关键词的集合;比如,所提取到的初始关键词为“登陆”,与该初始关键词相关的关键词包括“账号”“密码”,可以将“登陆”“账号”和“密码”确定为与目标项目相关联的最终关键词。
步骤S106,将最终关键词输入至预先训练完成的用例推荐模型中,输出目标项目的测试用例。
上述用例推荐模型中通常包含多层卷积层,多层卷积层之间可能穿插有激励层、池化层等;上述测试用例可以理解为是对一项特定的软件产品进行测试任务的描述,通常包括测试输入、执行条件以及预期结果等;当确定与目标项目相关联的最终关键词后,将该最终关键词输入至预先训练完成的用例推荐模型中,可以输出目标项目的测试用例,通过该测试用例可以验证该目标项目的软件产品是否满足特定软件需求。
本发明实施例提供的一种测试用例推荐方法,首先获取到目标项目的项目文档,然后从该项目文档中获取初始关键词,基于该初始关键词确定与该目标项目相关联的最终关键词;最后将该最终关键词输入至预先训练完成的用例推荐模型中,输出该目标项目的测试用例;该方式可以从目标项目的项目文档中自动获取初始关键词,从而可以避免因人工分析需求时存在的识别歧义,所导致的需求分析不足的问题,并且,该方式还对初始关键词进行扩展得到最终关键词,基于该最终关键词所输出的测试用例更加丰富,从而可以保证所设计的测试用例满足测试需求。
本发明实施例还提供另一种测试用例推荐方法,该方法在上述实施例方法的基础上实现;该方法重点描述从项目文档中获取初始关键词的具体过程,如图2所示,该方法包括如下步骤:
步骤S202,获取目标项目的项目文档。
步骤S204,将项目文档输入至预先训练完成的词汇模型中,输出初始关键词。
上述词汇模型中通常包含多层卷积层,多层卷积层之间可能穿插有激励层、池化层等;当获取到目标项目的项目文档后,将该项目文档输入至预先训练完成的词汇模型中,可以输出该项目文档所对应的初始关键词。在实际实现时,上述词汇模型可以通过下述步骤一至步骤三训练得到:
步骤一,获取第一项目文档样本;其中,第一项目文档样本中标记有关键词标签。
上述第一项目文档样本可以是企业中现有的已经成型的项目文档,该项目文档中可以包括项目文档的更新迭代版本和最终版本,如详细设计说明书的第一版、第二版等迭代版本,以及详细设计说明书的最终版本等;基于这些已经成型的项目文档,可以随时应对公司产品的任一阶段,比如,从产品不成熟到成熟,再到最终进入市场等;在实际实现时,这些企业中现有的已经成型的项目文档可以通过EleasticSearch进行文档集中管理,生成检索库,以便于程序对特定名词相关内容的推荐;其中,Elasticsearch可以理解为一种分布式、高扩展、高实时的搜索与数据分析引擎,能很方便的使大量数据具有搜索、分析和探索的能力,它是一种非关系型数据库,可以根据项目关系存储这些第一项目文档样本;上述关键词标签可以是第一项目文档样本所标记的一个或多个关键词,该关键词标签可以是人工标记的标签,也可以是第一项目文档样本中所包含的关键词,如“登陆”、“退出”、“版本号”等;一般情况下,在对初始词汇模型进行训练的初始阶段,为了提高对词汇模型训练的效率,可以由人工在第一项目文档样本中明确标记一些标签。
步骤二,将第一项目文档样本输入至初始词汇模型中,以通过初始词汇模型提取第一项目文档样本中的关键词,得到输出结果。
上述初始词汇模型可以是深度模型Net的网络架构等;当获取到第一项目文档样本后,将获取到的第一项目文档样本输入至初始词汇模型中,通过该初始词汇模型提取该第一项目文档样本中的关键词,得到相应的输出结果;其中,第一项目文档样本可以是任意格式的文件,数量可以为多个,即可以对多个第一项目文档样本进行集中学习。
步骤三,基于关键词标签和输出结果确定第一损失值,基于第一损失值更新初始词汇模型的权重参数;继续执行获取第一项目文档样本的步骤,直至初始词汇模型收敛,得到词汇模型。
上述第一损失值可以理解为上述输出结果与第一项目文档样本中所标记的关键词标签之间的差距;上述权重参数可以包括初始词汇模型中的所有参数,如卷积核参数等;在对初始词汇模型进行训练时,通常需要基于上述关键词标签和输出结果,更新初始词汇模型中的所有参数,以对该初始词汇模型进行训练。然后继续执行获取第一项目文档样本的步骤,直至初始词汇模型收敛,或者第一损失值收敛,最终得到训练完成的词汇模型。
步骤S206,基于初始关键词确定与目标项目相关联的最终关键词;其中,最终关键词包括初始关键词,以及与初始关键词相关的关键词。
步骤S208,将最终关键词输入至预先训练完成的用例推荐模型中,输出目标项目的测试用例。
本发明实施例提供的一种测试用例推荐方法,首先获取目标项目的项目文档,然后将项目文档输入至预先训练完成的词汇模型中,输出初始关键词;基于初始关键词确定与目标项目相关联的最终关键词;最后将最终关键词输入至预先训练完成的用例推荐模型中,输出目标项目的测试用例。该方式可以从目标项目的项目文档中自动获取初始关键词,从而可以避免因人工分析需求时存在的识别歧义,所导致的需求分析不足的问题,并且,该方式还对初始关键词进行扩展得到最终关键词,基于该最终关键词所输出的测试用例更加丰富,从而可以保证所设计的测试用例满足测试需求。
本发明实施例还提供另一种测试用例推荐方法,该方法在上述实施例方法的基础上实现;该方法重点描述基于初始关键词确定与目标项目相关联的最终关键词的具体过程,该方法中,预设词库中包括多个关键词组,每个关键词组中包括预设有关联关系的多个关键词;在实际实现时,可以将企业现有的项目文档输入至训练后的词汇模型中,通过该词汇模型提取现有的项目文档中的关键词,所提取到的关键词的集合即可构成上述预设词库,该预设词库也可以称为企业的特殊词汇字典,通过该预设词库更便于进行自然语言分词,减少因不同工作环境所产生的名词使用差异,避免语义歧义问题,从而提升名词检索的准确率;可以基于预设词库中的关键词确定多个关键词组,每个关键词组中可以包括有关联关系的多个关键词;比如,以关键词为“账号”为例,“账号”这个关键词所在的关键词组中可以包括与“账号”有关联关系的多个关键词,如“登陆”、“密码”、“退出”等;如图3所示,该方法包括如下步骤:
步骤S302,获取目标项目的项目文档。
步骤S304,从项目文档中获取初始关键词。
步骤S306,从预设词库中查找包括初始关键词的至少一部分关键字的目标关键词组。
在实际实现时,当从项目文档中获取到初始关键词后,可以从预设词库中查找包括初始关键词的至少一部分关键字的目标关键词组,比如,以初始关键词为“账号”为例,可以将预设词库中的多个关键词组中包含“账号”这个初始关键词的关键词组确定为目标关键词组,也可以将包含“账号”这个初始关键词的至少一部分关键词的关键词组确定为目标关键词组,如,某个关键词组中包括“账户”,可以将该关键词组确定为目标关键词组。
步骤S308,将目标关键词组中的多个关键词,确定为与目标项目相关联的最终关键词;其中,最终关键词包括初始关键词,以及与初始关键词相关的关键词。
为方便说明,仍以“账号”这个初始关键词为例,如果从预设词库中查找到了包含“账号”这个初始关键词的目标关键词组,且该目标关键词组中除了包括“账号”这个初始关键词,还包括“登陆”、“密码”、“退出”这三个与“账号”有关联关系的多个关键词,则将该目标关键词组中的多个关键词,确定为与目标项目相关联的最终关键词,即最终关键词包括“账号”、“登陆”、“密码”和“退出”。另外,对于一个项目组中的多个相关联的项目来说,该方式还可以通过一个项目贯穿到另一个项目,比如,一个项目既有app端,也有web端,该方式可以提取到该项目与其他项目的连接点这个功能点。
步骤S310,如果预设词库中不包含初始关键词,将初始关键词更新至预设词库中。
在实际实现时,预设词库中的关键词可以不断迭代更新,具体地,如果从预设词库中没有查找到上述初始关键词,可以理解为该预设词库中并没有包含该初始关键词,这时可以将该初始关键词更新至该预设词库中。
步骤S312,将最终关键词输入至预先训练完成的用例推荐模型中,输出目标项目的测试用例。
在实际实现时,在将最终关键词输入至用例推荐模型之前,也可以增加人工判断最终关键词的准确率的过程,当人工判断准确率达到预设标准后,如准确率达到80%或90%等,再将该最终关键词输入到用例推荐模型中;具体的,用例推荐模型可以通过下述步骤四至步骤七得到:
步骤四,获取第二项目文档样本;其中,第二项目文档样本携带有与第二项目文档样本对应的第一参考测试用例。
上述第二项目文档样本可以是企业中现有的已经成型的项目文档的最终版本,如详细设计说明书的最终版本等;可以将这些项目文档的最终版本通过梳理,如人工标记一些关键词或标签等,生成训练数据库;上述第一参考测试用例可以理解为与第二项目文档样本所匹配的可以作为参考的标准的测试用例;在实际实现时,当需要对初始用例推荐模型进行训练时,需要先获取到可以用于训练的第二项目文档样本。
步骤五,将第二项目文档样本输入至初始用例推荐模型中,以通过初始用例推荐模型输出第一测试用例。
上述初始用例推荐模型可以是Net的网络架构等;当获取到第二项目文档样本后,将获取到的第二项目文档样本输入至初始用例推荐模型中,通过该初始用例推荐模型得到输出结果,所得到的输出结果即为上述第一测试用例。
步骤六,基于第一测试用例和第一参考测试用例确定第二损失值,基于第二损失值更新初始用例推荐模型的权重参数;继续执行获取第二项目文档样本的步骤,直至初始用例推荐模型收敛,得到训练后的第一用例推荐模型。
上述第二损失值可以理解为上述第一测试用例与上述第一参考测试用例之间的差距;上述权重参数可以包括初始用例推荐模型中的所有参数,如卷积核参数等;在对初始用例推荐模型进行训练时,通常需要基于上述第一测试用例与上述第一参考测试用例,更新初始用例推荐模型中的所有参数,以对该初始用例推荐模型进行训练。然后继续执行获取第二项目文档样本的步骤,直至初始用例推荐模型收敛,或者第二损失值收敛,最终得到训练完成的第一用例推荐模型;需要说明的是,该第一用例推荐模型可以是关于需求描述、需求分析等多个不同维度的测试用例的推荐模型,比如,该第一用例推荐模型可以是项目级测试用例对应模型、需求级测试用例对应模型、描述涉及功能点测试用例对应模型或功能验证级测试用例对应模型等。
步骤七,获取项目文档验证样本,基于项目文档验证样本和第一用例推荐模型,确定用例推荐模型;其中,项目文档验证样本携带有与项目文档验证样本对应的第二参考测试用例。
上述项目文档验证样本可以是企业中现有的已经成型的项目文档的更新迭代版本,如详细设计说明书的第一版、第二版等迭代版本,可以将这些项目文档的更新迭代版本通过梳理,如人工标记一些关键词或标签等,生成验证数据库;通过该项目文档验证样本可以对上述训练完成的第一用例推荐模型进行验证,判断训练是否过拟合;上述第二参考测试用例可以理解为与项目文档验证样本所匹配的可以作为参考的标准的测试用例;在实际实现时,当需要对训练完成的第一用例推荐模型进行验证时,需要先获取到可以用于验证的项目文档验证样本。
具体的,上述基于项目文档验证样本和第一用例推荐模型,确定用例推荐模型的过程可以通过下述步骤A和步骤B来实现:
步骤A,将项目文档验证样本输入至第一用例推荐模型中,以通过第一用例推荐模型输出验证测试用例。
步骤B,基于验证测试用例和第二参考测试用例确定第三损失值,基于第三损失值更新第一用例推荐模型的权重参数;继续执行获取项目文档验证样本的步骤,直至第一用例推荐模型收敛,得到用例推荐模型。
上述第三损失值可以理解为上述验证测试用例与上述第二参考测试用例之间的差距;上述权重参数可以包括上述第一用例推荐模型中的所有参数,如卷积核参数等;在得到上述训练后的第一用例推荐模型后,通常需要基于验证测试用例和第二参考测试用例,对第一用例推荐模型中的参数进行微调,使通过验证后的用例推荐模型所得到的推荐的测试用例更贴近真实情况。
本发明实施例提供的一种测试用例推荐方法,首先获取目标项目的项目文档,从该项目文档中获取初始关键词;然后从预设词库中查找包括初始关键词的至少一部分关键字的目标关键词组;将目标关键词组中的多个关键词,确定为与目标项目相关联的最终关键词;如果预设词库中不包含初始关键词,将初始关键词更新至预设词库中;将最终关键词输入至预先训练完成的用例推荐模型中,输出目标项目的测试用例。该方式可以从目标项目的项目文档中自动获取初始关键词,从而可以避免因人工分析需求时存在的识别歧义,所导致的需求分析不足的问题,并且,该方式还对初始关键词进行扩展得到最终关键词,基于该最终关键词所输出的测试用例更加丰富,从而可以保证所设计的测试用例满足测试需求。
本发明实施例还提供另一种测试用例推荐方法,该方法在上述实施例方法的基础上实现;该方法重点描述将最终关键词输入至预先训练完成的用例推荐模型中,输出目标项目的测试用例的具体过程,如图4所示,该方法包括如下步骤:
步骤S402,获取目标项目的项目文档。
步骤S404,从项目文档中获取初始关键词,基于初始关键词确定与目标项目相关联的最终关键词;其中,最终关键词包括初始关键词,以及与初始关键词相关的关键词。
步骤S406,将最终关键词输入至预先训练完成的用例推荐模型中,输出初始测试用例。
在实际实现时,上述最终关键词可以以关键词列表的形式存在,可以通过企业独有的预设词库对目标项目各阶段的项目文档内容进行分词语义定义后,输出关键词列表,即为最终关键词,该最终关键词可以是软件测试中需要被测试的全部操作功能点,例如,登陆功能点为输入账号、输入密码、点击登陆;如果后续软件功能有更改,比如加入了验证码以后,登陆功能点会变成输入账号、输入密码、点击登陆、输入图像验证码和点击登陆,包含了项目周期中测试、验收和运行的周期;将该最终关键词输入至预先训练完成的用例推荐模型中,该用例推荐模型通常为验证后的用例推荐模型,通过该用例推荐模型对最终关键词进行处理,输出全量测试用例,即为上述初始测试用例;需要说明的是,由于机器学习通常无法保证输出的所有测试用例都是有效的,一般都会存在一定的过拟合的情况,这就使得所输出的初始测试用例中会包含一些与目标项目无关的内容。
另外,在软件测试不紧急的情况下,对于一个被测试的功能点来说,通常需要获取到该功能点相关联的所有测试用例,如与“账号”“密码”“登陆”等相关联的所有测试用例;但在软件测试比较紧急的情况下,比如,如果只更改了“登陆”这个功能点,与“账号”、“密码”等无关,则可以直接将“登陆”这个单个关键词输入到用例推荐模型中,就可以只输出与“登陆”相关的测试用例;如果只更改了“账号”,直接将“账号”这个单个关键词输入到用例推荐模型中,则可以匹配出与“账号”相关的测试用例,这样就可以只测这些账号相关的测试用例。
步骤S408,响应用户针对于初始测试用例的选择指令,从初始测试用例中确定目标项目的测试用例。
上述选择指令可以理解为用户发出的从上述初始测试用例中选择所需测试用例的指令;在实际实现时,由于上述初始测试用例中通常会包含一些与目标项目无关的内容,用户可以从所得到的初始测试用例中选择所需要的与目标项目相关的测试用例。
本发明实施例提供的一种测试用例推荐方法,首先获取目标项目的项目文档;然后从项目文档中获取初始关键词,基于初始关键词确定与目标项目相关联的最终关键词;最后将最终关键词输入至预先训练完成的用例推荐模型中,输出初始测试用例;响应用户针对于初始测试用例的选择指令,从初始测试用例中确定目标项目的测试用例。该方式可以从目标项目的项目文档中自动获取初始关键词,从而可以避免因人工分析需求时存在的识别歧义,所导致的需求分析不足的问题,并且,该方式还对初始关键词进行扩展得到最终关键词,基于该最终关键词所输出的测试用例更加丰富,从而可以保证所设计的测试用例满足测试需求。
另外,该方式通过生成略超过范围的测试用例集,保证测试用例在测试执行前,测试用例设计的覆盖率可以达到90%及以上。
本发明实施例还提供另一种测试用例推荐方法,该方法在上述实施例方法的基础上实现;该方法中,预设的标准化用例库中包括多种用例模块,每种用例模块包括归属于该用例模块对应属性的多个测试用例;比如,用例模块可以包括登陆模块、会员模块、用户模块等;该用例模块对应属性可以理解为用例模块相应的测试功能点,比如,登陆模块对应属性为登陆功能点,会员模块对应属性为会员功能点等;每种用例模块可以包括归属于该用例模块相应的测试功能点的多个测试用例;标准化用例库中的每个测试用例包括预设的多个维度的特征标签;其中,特征标签包括测试用例所属指定项目的名称,以及指定项目的所属技术领域;在实际实现时,标准化用例库中通常包括企业已有的所有测试用例,这些测试用例通常包括目标项目相关的测试用例,以及除目标项目以外的其他项目相关的测试用例;这些测试用例可以根据项目关系生成标准化用例库,其中项目关系可以包括上述多个维度的特征标签,该特征标签中除了包括测试用例所属指定项目的项目名称和涉及的技术领域外,通常还包括测试用例涉及的人员和涉及的技术等。如图5所示,该方法包括如下步骤:
步骤S502,获取目标项目的项目文档。
步骤S504,从项目文档中获取初始关键词,基于初始关键词确定与目标项目相关联的最终关键词;其中,最终关键词包括初始关键词,以及与初始关键词相关的关键词。
步骤S506,将最终关键词输入至预先训练完成的用例推荐模型中,输出目标项目的测试用例。
步骤S508,从预设的标准化用例库中获取用例模块,其中,用例模块包括登陆模块、会员模块和用户模块。
在实际实现时,为了判断所输出的目标项目的测试用例的覆盖率情况,或者为了判断所输出的目标项目的测试用例是否符合预期,当通过用例推荐模型输出目标项目的测试用例后,可以从预设的标准化用例库中获取相应的用例模块,比如,如果测试用例是与登陆功能点相关,可以获取用例模块中的登陆模块;如果测试用例是与会员功能点相关,可以获取用例模块中的会员模块;如果测试用例是与用户功能点相关,可以获取用例模块中的用例模块等;也可以理解为标准化用例库中包括多个测试集,调用时可以根据测试集去调用。
步骤S510,将目标项目的测试用例与标准化用例库中,归属于同一用例模块的多个测试用例进行比较,确认目标项目的测试用例的覆盖率。
当从预设的标准化用例库中获取到用例模块后,可以将目标项目的测试用例与归属于同一用例模块的多个测试用例进行比较,比如,如果目标项目的测试用例是与登陆功能点相关,则可以将该目标项目的测试用例与登陆模块中的测试用例进行比较,以确认是否存在未设计的测试用例,是否存在漏测的情况,通过比较可以确认目标项目的测试用例的覆盖率。
本发明实施例提供的一种测试用例推荐方法,首先获取目标项目的项目文档,从该项目文档中获取初始关键词,基于初始关键词确定与目标项目相关联的最终关键词;然后将最终关键词输入至预先训练完成的用例推荐模型中,输出目标项目的测试用例;最后从预设的标准化用例库中获取用例模块,将目标项目的测试用例与标准化用例库中,归属于同一用例模块的多个测试用例进行比较,确认目标项目的测试用例的覆盖率。该方式可以从目标项目的项目文档中自动获取初始关键词,从而可以避免因人工分析需求时存在的识别歧义,所导致的需求分析不足的问题,并且,该方式还对初始关键词进行扩展得到最终关键词,基于该最终关键词所输出的测试用例更加丰富,从而可以保证所设计的测试用例满足测试需求。
本发明实施例还提供另一种测试用例推荐方法,该方法在上述实施例方法的基础上实现;如图6所示,该方法包括如下步骤:
步骤S602,获取目标项目的项目文档。
步骤S604,从项目文档中获取初始关键词,基于初始关键词确定与目标项目相关联的最终关键词;其中,最终关键词包括初始关键词,以及与初始关键词相关的关键词。
步骤S606,将最终关键词输入至预先训练完成的用例推荐模型中,输出目标项目的测试用例。
步骤S608,执行目标项目的测试用例。
步骤S610,统计目标项目的测试用例的执行结果;其中,执行结果包括:目标项目的测试用例执行完成,或者,目标项目的测试用例中未执行成功的测试用例。
本实施例中,可以采用任何用例执行方法执行目标项目的测试用例,在执行测试用例的过程中,通常还会统计测试用例的执行情况,具体的,在测试用例执行过程中,可以根据用户点击测试用例是否通过,来确认目标项目的测试用例的执行情况;比如,如果目标项目的测试用例都测试完成,则该执行情况可以是测试用例全部执行完成;如果有一些测试用例还没有具体执行到,则通过该执行情况可以确认这些未执行成功的测试用例。
步骤S612,如果执行结果中包括未执行成功的测试用例,生成告警消息;其中,告警消息用于指示目标项目的测试用例中,至少一部分测试用例未执行成功。
在实际实现时,如果执行结果中包括未执行成功的测试用例,通常会生成相应的通知提示信息,即上述告警消息,该告警消息可以提示用户未执行成功的测试用例的数量,以提示用户在目标项目的测试用例中,还有一些测试用例没有执行成功,并且还可以通过邮件等方式向用户发送该告警消息。
本发明实施例提供的一种测试用例推荐方法,首先获取目标项目的项目文档,从项目文档中获取初始关键词,基于初始关键词确定与目标项目相关联的最终关键词;然后将最终关键词输入至预先训练完成的用例推荐模型中,输出目标项目的测试用例;最后执行该目标项目的测试用例,并统计执行结果;如果执行结果中包括未执行成功的测试用例,生成告警消息;该方式可以从目标项目的项目文档中自动获取初始关键词,从而可以避免因人工分析需求时存在的识别歧义,所导致的需求分析不足的问题,并且,该方式还对初始关键词进行扩展得到最终关键词,基于该最终关键词所输出的测试用例更加丰富,从而可以保证所设计的测试用例满足测试需求。
为进一步理解上述实施例,下面提供如图7所示的一种测试用例推荐系统的部署示意图,该部署示意图中包括检索数据库集群单元、机器学习单元、测试用例编号列表生成单元和测试机集群单元;其中,检索数据库集群单元中包括EleasticSearch part1、EleasticSearch part2等多个EleasticSearch单元块,另外还包括EleasticSearch灾备,通过EleasticSearch对企业中现有的已经成型的项目文档进行文档集中管理,生成该检索数据库集群;将这些已经成型的项目文档输入到机器学习单元中,该机器学习单元中包括源数据处理模块,以及与该源数据处理模块分别连接的项目名称-描述关系训练模块、描述-测试用例关系训练模块、描述-功能点关系训练模块和功能点-测试用例关系训练模块,通过源数据处理模块和该源数据处理模块分别连接的这四种训练模块,可以输出每种训练模块所分别对应输出的关键词列表(对应上述最终关键词);将所输出的关键词列表分别对应输入到测试用例编号列表生成单元中的项目级测试用例对应模型(对应上述预先训练完成的用例推荐模型)、需求级用例对应模型(对应上述预先训练完成的用例推荐模型)、描述涉及功能点测试用例对应模型(对应上述预先训练完成的用例推荐模型)和功能验证级用例对应模型(对应上述预先训练完成的用例推荐模型)中,每种模型输出相应的测试用例,将这四种对应模型输出的测试用例合在一起,生成测试用例集,即为当前项目过程文档,其中,该测试用例集的粒度是可以灵活把控,由于测试用例集是通过关键词关联的,通过改变关键词的数量可以调整测试用例集的粒度大小;需要说明的是,每个对应模型通常只能针对单一的架构设计,不同的架构参数通常也不同,可以以特定场景定义该对应模型,针对不同的项目,通常只涉及调参,不涉及模型的变化;通过当前项目过程文档输出所生成的相关测试用例,将所生成的相关测试用例输入到测试机集群中,以通过人工方式或其他方式执行测试用例。
上述测试机集群可以针对不同测试要求实现不同的测试任务,并且通常采用本地代码部署,测试结果、过程日志回传方式。需要说明的是,该系统可以通过不断地跑用例执行进行容错,如果出现的错误指示输入的关键词有误,可以删除该关键词,具体可以由人工删除。
上述测试用例推荐系统可以应用于测试用例对被测试系统的一种应用中,例如,两个测试人员交叉测试,即两个测试人员互相测试对方的测试的软件功能点,如果一个测试人员对另一个测试人员要测试的产品不了解,比如,对于产品的登陆部分,测试人员A只知道输入账号和密码点击登陆,但是其实产品中还包括很多和登陆相关的模块,如登陆后查看是否是会员,会员有没有到期,退出后有没有抹除当前的登陆cookie信息等这些登陆相关的部分,由于测试人员A并不了解,因而通常无法识别并验证这些功能点;上述Cookie有时也用其复数形式Cookies,类型为“小型文本文件”,是一些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据,该数据通常是经过加密的数据,由用户本地终端暂时或永久保存的信息。
通过该测试用例推荐系统可以有效地推荐出来这些登陆相关测试用例部分,避免软件测试人员造成少测试、漏测情况,从无法把握测试质量,该系统能完整的推荐出来所有关联的测试用例,可以向研发人员推荐出准确的测试用例。
上述测试用例推荐系统,通过语义关键词可以有效避免语义歧义问题,项目的其他维度参数可以进一步避免其他潜在问题;并且可以减少因测试需求不明确导致的测试用例反复问题,同时可以支撑测试人员尽早地参与到项目的质量管控过程中,降低风险存在率。
本发明实施例还提供了一种测试用例推荐装置,如图8所示,该装置包括:获取模块80,用于获取目标项目的项目文档;确定模块81,用于从项目文档中获取初始关键词,基于初始关键词确定与目标项目相关联的最终关键词;其中,最终关键词包括初始关键词,以及与初始关键词相关的关键词;输出模块82,用于将最终关键词输入至预先训练完成的用例推荐模型中,输出目标项目的测试用例。
本发明实施例提供的一种测试用例推荐装置,首先获取到目标项目的项目文档,然后从该项目文档中获取初始关键词,基于该初始关键词确定与该目标项目相关联的最终关键词;最后将该最终关键词输入至预先训练完成的用例推荐模型中,输出该目标项目的测试用例;该装置可以从目标项目的项目文档中自动获取初始关键词,从而可以避免因人工分析需求时存在的识别歧义,所导致的需求分析不足的问题,并且,该装置还对初始关键词进行扩展得到最终关键词,基于该最终关键词所输出的测试用例更加丰富,从而可以保证所设计的测试用例满足测试需求。
进一步的,确定模块81还用于:将项目文档输入至预先训练完成的词汇模型中,输出初始关键词。
进一步的,该装置还包括词汇模型训练模块,该词汇模型训练模块用于:获取第一项目文档样本;其中,第一项目文档样本中标记有关键词标签;将第一项目文档样本输入至初始词汇模型中,以通过初始词汇模型提取第一项目文档样本中的关键词,得到输出结果;基于关键词标签和输出结果确定第一损失值,基于第一损失值更新初始词汇模型的权重参数;继续执行获取第一项目文档样本的步骤,直至初始词汇模型收敛,得到词汇模型。
进一步的,预设词库中包括多个关键词组,每个关键词组中包括预设有关联关系的多个关键词;确定模块81还用于:从预设词库中查找包括初始关键词的至少一部分关键字的目标关键词组;将目标关键词组中的多个关键词,确定为与目标项目相关联的最终关键词。
进一步的,该装置还用于:如果预设词库中不包含初始关键词,将初始关键词更新至预设词库中。
进一步的,该装置还包括用例推荐模型确定模块,该用例推荐模型确定模块用于:获取第二项目文档样本;其中,第二项目文档样本携带有与第二项目文档样本对应的第一参考测试用例;将第二项目文档样本输入至初始用例推荐模型中,以通过初始用例推荐模型输出第一测试用例;基于第一测试用例和第一参考测试用例确定第二损失值,基于第二损失值更新初始用例推荐模型的权重参数;继续执行获取第二项目文档样本的步骤,直至初始用例推荐模型收敛,得到训练后的第一用例推荐模型;获取项目文档验证样本,基于项目文档验证样本和第一用例推荐模型,确定用例推荐模型;其中,项目文档验证样本携带有与项目文档验证样本对应的第二参考测试用例。
进一步的,用例推荐模型确定模块还用于:将项目文档验证样本输入至第一用例推荐模型中,以通过第一用例推荐模型输出验证测试用例;基于验证测试用例和第二参考测试用例确定第三损失值,基于第三损失值更新第一用例推荐模型的权重参数;继续执行获取项目文档验证样本的步骤,直至第一用例推荐模型收敛,得到用例推荐模型。
进一步的,输出模块82还用于:将最终关键词输入至预先训练完成的用例推荐模型中,输出初始测试用例;响应用户针对于初始测试用例的选择指令,从初始测试用例中确定目标项目的测试用例。
进一步的,预设的标准化用例库中包括多种用例模块,每种用例模块包括归属于该用例模块对应属性的多个测试用例;该装置还用于:从预设的标准化用例库中获取用例模块,其中,用例模块包括登陆模块、会员模块和用户模块;将目标项目的测试用例与标准化用例库中,归属于同一用例模块的多个测试用例进行比较,确认目标项目的测试用例的覆盖率。
进一步的,标准化用例库中的每个测试用例包括预设的多个维度的特征标签;其中,特征标签包括测试用例所属指定项目的名称,以及指定项目的所属技术领域。
进一步的,该装置还用于:执行目标项目的测试用例;统计目标项目的测试用例的执行结果;其中,执行结果包括:目标项目的测试用例执行完成,或者,目标项目的测试用例中未执行成功的测试用例;如果执行结果中包括未执行成功的测试用例,生成告警消息;其中,告警消息用于指示目标项目的测试用例中,至少一部分测试用例未执行成功。
本发明实施例所提供的测试用例推荐装置,其实现原理及产生的技术效果和前述测试用例推荐方法实施例相同,为简要描述,测试用例推荐装置实施例部分未提及之处,可参考前述测试用例推荐方法实施例中相应内容。
本发明实施例还提供了一种电子设备,参见图9所示,该电子设备包括处理器130和存储器131,该存储器131存储有能够被处理器130执行的机器可执行指令,该处理器130执行机器可执行指令以实现上述测试用例推荐方法。
进一步地,图9所示的电子设备还包括总线132和通信接口133,处理器130、通信接口133和存储器131通过总线132连接。
其中,存储器131可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口133(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线132可以是ISA总线、PCI总线或EISA总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器130可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器130中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器130可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processor,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器131,处理器130读取存储器131中的信息,结合其硬件完成前述实施例的方法的步骤。
本发明实施例还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,该机器可执行指令促使处理器实现上述测试用例推荐方法,具体实现可参见方法实施例,在此不再赘述。
本发明实施例所提供的测试用例推荐方法、装置和电子设备的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (14)

1.一种测试用例推荐方法,其特征在于,所述方法包括:
获取目标项目的项目文档;
从所述项目文档中获取初始关键词,基于所述初始关键词确定与所述目标项目相关联的最终关键词;其中,所述最终关键词包括所述初始关键词,以及与所述初始关键词相关的关键词;
将所述最终关键词输入至预先训练完成的用例推荐模型中,输出所述目标项目的测试用例。
2.根据权利要求1所述的方法,其特征在于,所述从所述项目文档中获取初始关键词的步骤包括:
将所述项目文档输入至预先训练完成的词汇模型中,输出所述初始关键词。
3.根据权利要求2所述的方法,其特征在于,所述词汇模型通过下述方式训练得到:
获取第一项目文档样本;其中,所述第一项目文档样本中标记有关键词标签;
将所述第一项目文档样本输入至初始词汇模型中,以通过所述初始词汇模型提取所述第一项目文档样本中的关键词,得到输出结果;
基于所述关键词标签和所述输出结果确定第一损失值,基于所述第一损失值更新所述初始词汇模型的权重参数;继续执行获取第一项目文档样本的步骤,直至所述初始词汇模型收敛,得到所述词汇模型。
4.根据权利要求1所述的方法,其特征在于,预设词库中包括多个关键词组,每个所述关键词组中包括预设有关联关系的多个关键词;
所述基于所述初始关键词确定与所述目标项目相关联的最终关键词的步骤包括:
从所述预设词库中查找包括所述初始关键词的至少一部分关键字的目标关键词组;
将所述目标关键词组中的多个关键词,确定为与所述目标项目相关联的所述最终关键词。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
如果所述预设词库中不包含所述初始关键词,将所述初始关键词更新至所述预设词库中。
6.根据权利要求1所述的方法,其特征在于,所述用例推荐模型通过下述方式得到:
获取第二项目文档样本;其中,所述第二项目文档样本携带有与所述第二项目文档样本对应的第一参考测试用例;
将所述第二项目文档样本输入至初始用例推荐模型中,以通过所述初始用例推荐模型输出第一测试用例;
基于所述第一测试用例和所述第一参考测试用例确定第二损失值,基于所述第二损失值更新所述初始用例推荐模型的权重参数;继续执行获取第二项目文档样本的步骤,直至所述初始用例推荐模型收敛,得到训练后的第一用例推荐模型;
获取项目文档验证样本,基于所述项目文档验证样本和所述第一用例推荐模型,确定所述用例推荐模型;其中,所述项目文档验证样本携带有与所述项目文档验证样本对应的第二参考测试用例。
7.根据权利要求6所述的方法,其特征在于,所述基于所述项目文档验证样本和所述第一用例推荐模型,确定所述用例推荐模型的步骤包括:
将所述项目文档验证样本输入至所述第一用例推荐模型中,以通过所述第一用例推荐模型输出验证测试用例;
基于所述验证测试用例和所述第二参考测试用例确定第三损失值,基于所述第三损失值更新所述第一用例推荐模型的权重参数;继续执行获取项目文档验证样本的步骤,直至所述第一用例推荐模型收敛,得到所述用例推荐模型。
8.根据权利要求1所述的方法,其特征在于,所述将所述最终关键词输入至预先训练完成的用例推荐模型中,输出所述目标项目的测试用例的步骤包括:
将所述最终关键词输入至所述预先训练完成的用例推荐模型中,输出初始测试用例;
响应用户针对于所述初始测试用例的选择指令,从所述初始测试用例中确定所述目标项目的测试用例。
9.根据权利要求1所述的方法,其特征在于,预设的标准化用例库中包括多种用例模块,每种所述用例模块包括归属于该用例模块对应属性的多个测试用例;
所述将所述最终关键词输入至预先训练完成的用例推荐模型中,输出所述目标项目的测试用例的步骤之后,所述方法还包括:
从所述预设的标准化用例库中获取所述用例模块,其中,所述用例模块包括登陆模块、会员模块和用户模块;
将所述目标项目的测试用例与所述标准化用例库中,归属于同一用例模块的多个测试用例进行比较,确认所述目标项目的测试用例的覆盖率。
10.根据权利要求9所述的方法,其特征在于,所述标准化用例库中的每个测试用例包括预设的多个维度的特征标签;其中,所述特征标签包括所述测试用例所属指定项目的名称,以及所述指定项目的所属技术领域。
11.根据权利要求1所述的方法,其特征在于,所述将所述最终关键词输入至预先训练完成的用例推荐模型中,输出所述目标项目的测试用例的步骤之后,所述方法还包括:
执行所述目标项目的测试用例;
统计所述目标项目的测试用例的执行结果;其中,所述执行结果包括:所述目标项目的测试用例执行完成,或者,所述目标项目的测试用例中未执行成功的测试用例;
如果所述执行结果中包括所述未执行成功的测试用例,生成告警消息;其中,所述告警消息用于指示所述目标项目的测试用例中,至少一部分测试用例未执行成功。
12.一种测试用例推荐装置,其特征在于,所述装置包括:
获取模块,用于获取目标项目的项目文档;
确定模块,用于从所述项目文档中获取初始关键词,基于所述初始关键词确定与所述目标项目相关联的最终关键词;其中,所述最终关键词包括所述初始关键词,以及与所述初始关键词相关的关键词;
输出模块,用于将所述最终关键词输入至预先训练完成的用例推荐模型中,输出所述目标项目的测试用例。
13.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1-11任一项所述的测试用例推荐方法。
14.一种机器可读存储介质,其特征在于,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现权利要求1-11任一项所述的测试用例推荐方法。
CN202011331448.3A 2020-11-24 2020-11-24 测试用例推荐方法、装置和电子设备 Pending CN112416778A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011331448.3A CN112416778A (zh) 2020-11-24 2020-11-24 测试用例推荐方法、装置和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011331448.3A CN112416778A (zh) 2020-11-24 2020-11-24 测试用例推荐方法、装置和电子设备

Publications (1)

Publication Number Publication Date
CN112416778A true CN112416778A (zh) 2021-02-26

Family

ID=74778548

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011331448.3A Pending CN112416778A (zh) 2020-11-24 2020-11-24 测试用例推荐方法、装置和电子设备

Country Status (1)

Country Link
CN (1) CN112416778A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113282519A (zh) * 2021-07-22 2021-08-20 北京关键科技股份有限公司 一种用于软件测试的用例数据推荐方法、系统和介质
CN113312258A (zh) * 2021-05-25 2021-08-27 平安壹钱包电子商务有限公司 一种接口测试方法、装置、设备及存储介质
CN115344504A (zh) * 2022-10-19 2022-11-15 广州软件应用技术研究院 基于需求规格说明书的软件测试用例自动生成方法及工具
CN116680162A (zh) * 2023-04-17 2023-09-01 中国软件评测中心(工业和信息化部软件与集成电路促进中心) 一种测试用例复用方法、装置、介质、设备及产品
CN116738036A (zh) * 2023-02-03 2023-09-12 上海陟明信息技术有限责任公司 基于大数据的用户行为分析方法及系统
CN117093501A (zh) * 2023-09-25 2023-11-21 哈尔滨航天恒星数据系统科技有限公司 一种基于预训练模型的测试用例推荐方法、电子设备及存储介质

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113312258A (zh) * 2021-05-25 2021-08-27 平安壹钱包电子商务有限公司 一种接口测试方法、装置、设备及存储介质
CN113282519A (zh) * 2021-07-22 2021-08-20 北京关键科技股份有限公司 一种用于软件测试的用例数据推荐方法、系统和介质
CN113282519B (zh) * 2021-07-22 2021-11-12 北京关键科技股份有限公司 一种用于软件测试的用例数据推荐方法、系统和介质
CN115344504A (zh) * 2022-10-19 2022-11-15 广州软件应用技术研究院 基于需求规格说明书的软件测试用例自动生成方法及工具
CN116738036A (zh) * 2023-02-03 2023-09-12 上海陟明信息技术有限责任公司 基于大数据的用户行为分析方法及系统
CN116738036B (zh) * 2023-02-03 2024-03-22 上海陟明信息技术有限责任公司 基于大数据的用户行为分析方法及系统
CN116680162A (zh) * 2023-04-17 2023-09-01 中国软件评测中心(工业和信息化部软件与集成电路促进中心) 一种测试用例复用方法、装置、介质、设备及产品
CN116680162B (zh) * 2023-04-17 2023-11-10 中国软件评测中心(工业和信息化部软件与集成电路促进中心) 一种测试用例复用方法、装置、介质、设备及产品
CN117093501A (zh) * 2023-09-25 2023-11-21 哈尔滨航天恒星数据系统科技有限公司 一种基于预训练模型的测试用例推荐方法、电子设备及存储介质
CN117093501B (zh) * 2023-09-25 2024-03-12 哈尔滨航天恒星数据系统科技有限公司 一种基于预训练模型的测试用例推荐方法、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN112416778A (zh) 测试用例推荐方法、装置和电子设备
CN110209764B (zh) 语料标注集的生成方法及装置、电子设备、存储介质
CN110968695A (zh) 基于弱监督技术主动学习的智能标注方法、装置及平台
CN111831802B (zh) 一种基于lda主题模型的城市领域知识检测系统及方法
CN112163553B (zh) 物料价格核算方法、装置、存储介质和计算机设备
CN112199602B (zh) 岗位推荐方法、推荐平台及服务器
CN112749284A (zh) 知识图谱构建方法、装置、设备及存储介质
CN112069069A (zh) 缺陷自动定位分析方法、设备及可读存储介质
CN111723870B (zh) 基于人工智能的数据集获取方法、装置、设备和介质
CN111190946A (zh) 报告生成方法、装置、计算机设备和存储介质
EP3118807A1 (en) Prioritizing and planning issues in automation
CN110781673B (zh) 文档验收方法、装置、计算机设备及存储介质
CN113761193A (zh) 日志分类方法、装置、计算机设备和存储介质
CN111104422B (zh) 一种数据推荐模型的训练方法、装置、设备及存储介质
CN114693011A (zh) 一种政策匹配方法、装置、设备和介质
CN112966076A (zh) 智能问答问题的生成方法、装置、计算机设备及存储介质
CN111754352A (zh) 一种观点语句正确性的判断方法、装置、设备和存储介质
CN112115362B (zh) 一种基于相似代码识别的编程信息推荐方法及装置
CN113656545A (zh) 智能面试方法、装置、计算机设备及存储介质
CN113792189A (zh) 群智软件开发贡献效率评估方法、装置、设备及介质
CN109885647B (zh) 用户履历验证方法、装置、电子设备及存储介质
CN109299381B (zh) 一种基于语义概念的软件缺陷检索和分析系统及方法
CN113792187A (zh) 群智软件开发贡献质量评估方法、装置、设备及介质
CN112069807A (zh) 文本数据的主题提取方法、装置、计算机设备及存储介质
CN113342931B (zh) 基于大数据的用户需求分析方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination