CN112100359A - 测试用例查找方法、装置、设备及存储介质 - Google Patents

测试用例查找方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112100359A
CN112100359A CN202011098053.3A CN202011098053A CN112100359A CN 112100359 A CN112100359 A CN 112100359A CN 202011098053 A CN202011098053 A CN 202011098053A CN 112100359 A CN112100359 A CN 112100359A
Authority
CN
China
Prior art keywords
test case
requirement
test
document
historical
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
CN202011098053.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 Didi Infinity Technology and Development Co Ltd
Original Assignee
Beijing Didi Infinity Technology and Development 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 Didi Infinity Technology and Development Co Ltd filed Critical Beijing Didi Infinity Technology and Development Co Ltd
Priority to CN202011098053.3A priority Critical patent/CN112100359A/zh
Publication of CN112100359A publication Critical patent/CN112100359A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • 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
    • 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/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/38Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/381Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using identifiers, e.g. barcodes, RFIDs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Library & Information Science (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请提供一种测试用例查找方法、装置、设备及存储介质,涉及业务回归技术领域。该方法包括:根据提测需求,从自动化测试用例集合中获取第一测试用例;根据所述提测需求的功能需求,从人工测试用例集合中获取第二测试用例;将所述第一测试用例和所述第二测试用例加入至回归测试用例集合,以对所述提测需求进行回归测试。相对于现有技术,避免了自动化用例的覆盖率不可能达到全覆盖,存在用例缺失情况,导致精准回归时可能回归的不全的问题。

Description

测试用例查找方法、装置、设备及存储介质
技术领域
本申请涉及业务回归技术领域,具体而言,涉及一种测试用例查找方法、装置、设备及存储介质。
背景技术
传统技术中的业务功能回归一般是通过测试人员来修改某个功能点,评估某个回归面,确定到底要回归哪些内容,所有回归信息均靠人为经验来确定,而且也不够客观精准,所以测试人员会建立大量的自动化用例用来进行回归测试使用。
现有技术中通过建立了自动化测试用例的方式进行批量回归,通过引入精准测试回归用例的方式,将功能和测试用例进行映射,每次修改特定功能时,精准回归相关测试用例即可。
但是这样的回归方式,由于不是所有的测试用例都适合做自动化建设,所以建立的自动化用例的覆盖率不可能达到全覆盖,存在用例缺失情况,导致精准回归时可能回归的不全的问题。
发明内容
有鉴于此,本申请的目的在于提供一种测试用例查找方法、装置、设备及存储介质,能够解决现有技术中自动化用例的覆盖率不可能达到全覆盖,存在用例缺失情况,导致精准回归时可能回归的不全的问题,达到提高用例覆盖率的作用。
在本申请的第一方面,本申请提供一种测试用例查找方法,所述方法包括:
根据提测需求,从自动化测试用例集合中获取第一测试用例;
根据所述提测需求的功能需求,从人工测试用例集合中获取第二测试用例;
将所述第一测试用例和所述第二测试用例加入至回归测试用例集合,以对所述提测需求进行回归测试。
可选地,所述提测需求包括:功能标签;
所述根据提测需求,从自动化测试用例集合中获取第一测试用例,包括:
根据所述功能标签,从所述自动化测试用例集合中获取所述功能标签对应的测试用例,其中,所述自动化测试用例集合包括:至少一个功能标签对应的测试用例;
所述第一测试用例包括:所述功能标签对应的测试用例。
可选地,所述根据提测需求,从自动化测试用例集合中获取第一测试用例,包括:
获取所述提测需求涉及的函数;
从所述自动化测试用例集合中,获取与所述函数对应的测试用例;
所述第一测试用例还包括:所述函数对应的测试用例。
可选地,所述获取所述提测需求涉及的函数,包括:
获取所述提测需求关联的代码提交记录;
对所述代码提交记录中的比较代码进行解析,获取所述比较代码涉及的函数;
所述提测需求涉及的函数为:所述比较代码涉及的函数。
可选地,所述提测需求还包括:需求文档;
所述根据所述提测需求的功能需求,从人工测试用例集合中获取第二测试用例,包括:
获取所述需求文档对应的历史需求文档;
根据所述历史需求文档,从所述人工测试用例集合中获取所述历史需求文档关联的测试用例,其中,所述人工测试用例集合还包括:至少一个历史需求文档关联的测试用例;
所述第二测试用例包括:所述历史需求文档关联的测试用例。
可选地,所述获取所述需求文档对应的历史需求文档,包括:
分别对所述需求文档和历史需求管理系统中的至少一个历史需求文档进行文本切词;
根据所述需求文档进行文本切词后的词向量,和每个历史需求文档进行文本切词后的词向量,计算所述需求文档和所述每个历史需求文档的相似度;
根据所述需求文档和所述每个历史需求文档的相似度,从所述至少一个历史需求文档中,确定相似度满足第一预设相似度阈值的历史需求文档为所述需求文档对应的历史需求文档;
根据所述需求文档对应的历史需求文档,确定与所述历史需求文档关联的测试用例为第三测试用例。
可选地,所述功能需求包括:所述功能标签涉及的功能点;
所述根据所述提测需求的功能需求,从人工测试用例集合中获取第二测试用例,包括:
对所述功能标签涉及的功能点进行文本描述,得到第四测试用例;
分别对所述第四测试用例和所述第三测试用例进行文本切词,得到所述第四测试用例的切词文本和所述第三测试用例的切词文本;
根据所述第四测试用例的切词文本和所述第三测试用例的切词文本的相似度,从所述人工测试用例集合中确定相似度满足第二预设相似度阈值的测试用例;
所述第二测试用例还包括:相似度满足所述第二预设相似度阈值的测试用例。
在本申请的第二方面,本申请还提供了一种测试用例查找装置,所述装置包括:获取模块和加入模块,其中:
所述获取模块,用于根据提测需求,从自动化测试用例集合中获取第一测试用例;根据所述提测需求的功能需求,从人工测试用例集合中获取第二测试用例;
所述加入模块,用于将所述第一测试用例和所述第二测试用例加入至回归测试用例集合,以对所述提测需求进行回归测试。
可选地,所述提测需求包括:功能标签;所述获取模块,具体用于根据所述功能标签,从所述自动化测试用例集合中获取所述功能标签对应的测试用例,其中,所述自动化测试用例集合包括:至少一个功能标签对应的测试用例;所述第一测试用例包括:所述功能标签对应的测试用例。
可选地,所述获取模块,具体用于获取所述提测需求涉及的函数;从所述自动化测试用例集合中,获取与所述函数对应的测试用例;所述第一测试用例还包括:所述函数对应的测试用例。
可选地,所述获取模块,具体用于获取所述提测需求关联的代码提交记录;对所述代码提交记录中的比较代码进行解析,获取所述比较代码涉及的函数;所述提测需求涉及的函数为:所述比较代码涉及的函数。
可选地,所述提测需求还包括:需求文档;所述获取模块,具体用于获取所述需求文档对应的历史需求文档;根据所述历史需求文档,从所述人工测试用例集合中获取所述历史需求文档关联的测试用例,其中,所述人工测试用例集合还包括:至少一个历史需求文档关联的测试用例;所述第二测试用例包括:所述历史需求文档关联的测试用例。
可选地,所述装置还包括:切词模块、计算模块和确定模块,其中:
所述切词模块,用于分别对所述需求文档和历史需求管理系统中的至少一个历史需求文档进行文本切词;
所述计算模块,用于根据所述需求文档进行文本切词后的词向量,和每个历史需求文档进行文本切词后的词向量,计算所述需求文档和所述每个历史需求文档的相似度;
所述确定模块,用于根据所述需求文档和所述每个历史需求文档的相似度,从所述至少一个历史需求文档中,确定相似度满足第一预设相似度阈值的历史需求文档为所述需求文档对应的历史需求文档;根据所述需求文档对应的历史需求文档,确定与所述历史需求文档关联的测试用例为第三测试用例。
可选地,所述功能需求包括:所述功能标签涉及的功能点;所述装置还包括:描述模块,用于对所述功能标签涉及的功能点进行文本描述,得到第四测试用例;
所述切词模块,具体用于分别对所述第四测试用例和所述第三测试用例进行文本切词,得到所述第四测试用例的切词文本和所述第三测试用例的切词文本;
所述确定模块,具体用于根据所述第四测试用例的切词文本和所述第三测试用例的切词文本的相似度,从所述人工测试用例集合中确定相似度满足第二预设相似度阈值的测试用例。
在本申请的第三方面,提供一种测试用例查找设备,处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当测试用例查找设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行上述第一方面任一所述方法的步骤。
在本申请的第四方面,本申请还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上述第一方面任一所述方法的步骤。
基于上述任一方面,可以根据提测需求,分别从自动化测试用例集合中获取第一测试用例,从人工测试用例集合中获取第二测试用例,并将第一测试用例和第二测试用例均加入至回归测试用例集合,这种根据自动化测试用例集合和人工测试用例集合共同确定回归测试用例集合的方式,提高了回归测试用例的覆盖率,从而解决现有技术中由于测试用例缺失导致回归不全的问题,达到提高回归测试用例的覆盖率,进一步提高后续回归测试精准度的作用。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请一实施例提供的测试用例查找系统的结构示意图;
图2为本申请一实施例提供的测试用例查找方法的流程示意图;
图3为本申请另一实施例提供的测试用例查找方法的流程示意图;
图4为本申请另一实施例提供的测试用例查找方法的流程示意图;
图5为本申请另一实施例提供的测试用例查找方法的流程示意图;
图6为本申请一实施例提供的测试用例查找装置的结构示意图;
图7为本申请另一实施例提供的测试用例查找装置的结构示意图;
图8为本申请一实施例提供的测试用例查找设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了使得本领域技术人员能够使用本申请内容,结合特定应用场景业务功能的回归测试,给出以下实施方式。对于本领域技术人员来说,在不脱离本申请的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用场景。虽然本申请主要围绕业务功能的回归测试进行描述,但是应该理解,这仅是一个示例性实施例,本申请可以应用于各种需要进行回归测试的场景中。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
本申请的一个方面涉及一种测试用例查找系统。该系统可以根据用户输入的提测需求,在自动化测试用例集合中获取第一测试用例,并在人工测试用例集合中获取第二测试用例,并将第一测试用例和第二测试用例加入回归测试用例集合中,根据最终回归测试用例集合中的各测试用例对提测需求进行业务功能的回归测试。
值得注意的是,在本申请提出申请之前,现有技术通常仅在自动化测试用例集合中获取测试用例,用于后续的回归测试,但是这种方法只适用于适合做自动化建设的提测需求,对于一些不适合做自动化建设的提测需求无法得到其对应的测试用例,因此建立的自动化测试用例的覆盖率不可能达到全覆盖,存在测试用例缺失的情况。因此在一些不适合做自动化建设的提测需求的场景下,这样仅根据自动化测试用例集合确定测试用例的方式会导致回归测试用例缺失,进一步导致回归测试的精度不够高。
本申请提供的测试用例查找方法可以根据提测需求,可以从两个维度的结合,来获取回归测试用例,其中两个维度包括:第一维度例如可以为自动化测试用例维度,即从自动化测试用例集合中获取第一测试用例,第二维度例如可以为需求管理维度,即从人工测试用例集合中获取第二测试用例,并将第一测试用例和第二测试用例均加入至回归测试用例集合,这种根据第一维度的自动化测试用例集合和第二维度的人工测试用例集合共同确定回归测试用例集合的方式,由于回归测试用例集合中包括了两个维度的测试用例集合中的第一测试用例和第二测试用例,因此提高了回归测试用例的覆盖率,从而采用本申请提供的测试用例查找方法,可以解决现有技术中由于测试用例缺失导致回归测试不全的问题,达到提高回归测试用例的覆盖率,进一步提高后续回归测试的精准度的作用。
图1是本申请实施例提供的一种测试用例查找系统100的架构示意图,例如:测试用例查找系统100可以是用于业务回归服务、或是任何涉及任务回归或功能回归的任意平台或场景。如图1所示,测试用例查找系统100可以包括服务器110、网络120、和数据库130中的一种或多种。
在一些实施例中,服务器110可以包括处理器。处理器可以处理与服务请求有关的信息和/或数据,以执行本申请中描述的一个或多个功能。例如,处理器可以获取提测需求后,通过执行本申请提供的方法来得到回归测试用例。在一些实施例中,处理器可以包括一个或多个处理核(例如,单核处理器(S)或多核处理器(M))。仅作为举例,处理器可以包括中央处理单元(Central Processing Unit,CPU)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、专用指令集处理器(Application Specific Instruction-set Processor,ASIP)、图形处理单元(Graphics Processing Unit,GPU)、物理处理单元(Physics Processing Unit,PPU)、数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、可编程逻辑器件(Programmable Logic Device,PLD)、控制器、微控制器单元、简化指令集计算机(ReducedInstruction Set Computing,RISC)、或微处理器等,或其任意组合。
在一些实施例中,数据库130可以连接到网络120以与测试用例查找系统100中的一个或多个组件(例如,服务器110,服务终端,服务提供端等)通信。测试用例查找系统100中的一个或多个组件可以经由网络120访问存储在数据库130中的数据或指令。在一些实施例中,数据库130可以直接连接到测试用例查找系统100中的一个或多个组件,或者,数据库130也可以是服务器110的一部分。
下面结合上述图1示出的测试用例查找系统100中描述的内容,对本申请实施例提供的测试用例查找方法进行详细说明,下述测试用例查找方法应用于上述系统之中,执行主体可以为服务器,预设场景可以根据用户需要设计和调整,任何涉及业务回归测试或是业务功能回归测试的场景均可使用,并不以实施例给出的两个场景为限。
参照图2所示,为本申请一实施例提供的一种测试用例查找方法的流程示意图,如图2所示,该方法包括:
S201:根据提测需求,从自动化测试用例集合中获取第一测试用例。
其中,提测需求可以为用户如测试人员输入的测试需求。该提测需求例如可以包括:当前需要修改的待修改应用中的某一特定功能对应的代码等,由于应用中有很多业务功能,有的功能是独立的,有的功能耦合的,且该功能对应的代码是公用的,可能一次修改对应用的影响比较大,因此需要针对提测需求,进行对应回归测试用例集合的确定,并根据回归测试用例集合对提测需求进行业务功能的回归测试。回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。因此自动化回归测试将大幅降低系统测试、维护升级等阶段的成本。
自动化测试用例集合包括:多个预先通过自动化建设所建立的自动化测试用例。自动化测试用例集合中还包括:测试用例和自动化标签的映射关系,即该自动化用例集合中,每个自动化测试用例具有对应的自动化标签。该自动化标签例如可以包括:提测需求所包括的标签,和/或,该提测需求所涉及函数的标签。
即,执行该S201从自动化测试用例集合中所获取的第一测试用例即为自动化测试用例。
S202:根据提测需求的功能需求,从人工测试用例集合中获取第二测试用例。
该方法中,可先获取该提测需求的功能需求,继而根据该功能需求,从该人工测试用例集合中获取该第二测试用例。人工测试用例集合例如可以为预设的文件管理系统所管理的测试用例集合,其包括的测试用例均为预先存储的人工进行回归测试过程中的所使用的人工测试用例。因此,该人工测试用例中的测试用例还可成为历史测试用例。人工测试用例集合中每个测试用例可关联有对应的功能需求,该人工测试用例集合中测试用例关联的功能需求可以是,功能文本描述,也可以为其它方式所指示的功能需求。
S203:将第一测试用例和第二测试用例加入至回归测试用例集合。
其中,回归测试用例集合用以对提测需求进行回归测试。如此,在得到该回归测试用例集合后,便可通过运行该回归测试用例中的测试用例,实现对该提测需求的业务功能的回归测试。
采用本申请实施例提供的测试用例查找方法,可以根据提测需求,分别从自动化测试用例集合中获取第一测试用例,从人工测试用例集合中获取第二测试用例,并将第一测试用例和第二测试用例均加入至回归测试用例集合,这种根据自动化测试用例集合和人工测试用例集合共同确定回归测试用例集合的方式,不但使得测试回归用例的确定变得更加高效,并且提高了回归测试用例的覆盖率,从而解决现有技术中由于测试用例缺失导致回归不全的问题,达到提高回归测试用例的覆盖率,进一步提高后续回归测试精准度的作用。
示例地,在本申请的一个实施例中,提测需求例如可以包括:功能标签;自动化测试用例集合中例如可以包括:预先建立的自动化用例和功能标签之间的映射关系;此时从自动化测试用例集合中获取第一测试用例的方式可以为:根据功能标签,从自动化测试用例集合中获取功能标签对应的测试用例,其中,自动化测试用例集合包括:至少一个功能标签对应的测试用例;其中,第一测试用例包括:功能标签对应的测试用例。
示例地,在本申请的另一实施例中,自动化测试用例集合中例如可以包括:预先建立的自动化用例和用例覆盖函数列表之间的映射关系;从自动化测试集合中获取第一测试用例的方式可以为:获取提测需求涉及的函数;从自动化测试用例集合中,获取与函数对应的测试用例;此时第一测试用例还包括:函数对应的测试用例。
其中,获取提测需求涉及的函数的方式例如可以为:通过获取提测需求关联的代码提交git记录;对代码提交记录中的比较代码diff进行解析,获取比较代码涉及的函数;提测需求涉及的函数为:比较代码涉及的函数。
可选地,在本申请中,可以仅根据功能标签从自动化测试用例集合中获取功能标签对应的测试用例作为第一测试用例;也可以仅根据提测需求涉及的函数,从自动化测试用例集合中获取与函数对应的测试用例作为第一测试用例;或是同时根据功能标签和提测需求涉及的函数从自动化测试用例集合中获取对应测试用例作为第一测试用例,从而进一步提高测试用例的覆盖面,具体如何从自动化测试用例集合中获取第一测试用例,可以根据用户需要灵活调整,并不以上述实施例给出的方式为限。
可选地,在上述实施例的基础上,若该提测需求还包括:需求文档,本申请实施例还可提供一种测试用例查找方法,如下结合附图对上述方法中从人工测试用例集合中获取第二测试用例的实现过程进行示例说明。图3为本申请另一实施例提供的一种测试用例查找方法的流程示意图,提测需求还包括:需求文档;功能需求包括:需求文档;如图3所示,S202可包括:
S204:获取需求文档对应的历史需求文档。
其中,需求文档或历史需求文档中包括的文字较多,例如可以包括产品设计图、功能点、数据库设计、表的设计、接口定义方式等,具体文档何总包括的内容可以根据用户需要灵活调整,并不以上述实施例给出的为限。
可选地,在本申请的一个实施例中,获取需求文档对应的历史需求文档的方式可以为:根据该需求文档,从历史需求管理系统中的至少一个历史需求文档中确定文档相似度满足第一预设相似度阈值的历史需求文档为需求文档对应的历史需求文档。其中,满足第一预设相似度阈值的历史需求文档,例如可以为与需求文档的相似度大于或等于第一预设相似度阈值的历史需求文档,此时确定的历史需求文档即为与需求文档相似度较高的历史需求文档。
示例的,可以分别对需求文档和历史需求管理系统中的至少一个历史需求文档进行文本切词;根据需求文档进行文本切词后的词向量,和每个历史需求文档进行文本切词后的词向量,计算需求文档和每个历史需求文档的相似度;根据需求文档和每个历史需求文档的相似度,从至少一个历史需求文档中,确定相似度满足第一预设相似度阈值的历史需求文档为需求文档对应的历史需求文档;根据需求文档对应的历史需求文档确定第三测试用例。
示例地,在本申请的一个实施例中,可以利用预设的分词工具对需求文档和历史需求文档进行切词,并使用预先通过自然语言处理(Natural Language Processing,NLP)的基础工具包的word2vec训练得到的词向量生成模型,生成切词后的各文本切词对应的词向量,再根据确定相似度的模型,例如可以为LDA模型计算各文档间的相似度。具体切词、生成词向量和计算相似度采用的工具包或模型可以根据用户需要灵活调整,并不以上述实施例给出的为限。
其中,该预设的分词工具例如可以为任一语言的分词工具,如中文分词工具,jieba分词工具。NLP的基础工具包例如可包括:gensim工具包,也可以为其它工具包。文本切词后的词向量例如可以为词嵌入(Word Embedding)向量或者分布式向量等,其它形式的词向量。
S205:根据历史需求文档,从人工测试用例集合中获取历史需求文档关联的测试用例。
其中,人工测试用例集合还包括:至少一个历史需求文档关联的测试用例,例如可以为每个历史需求文档均关联了通过文件管理系统管理的文本描述的测试用例集合。
可选地,在上述实施例的基础上,本申请实施例还可提供一种测试用例查找方法,如下结合附图对上述方法中从人工测试用例集合中获取第二测试用例的实现过程进行示例说明。图4为本申请另一实施例提供的一种测试用例查找方法的流程示意图,功能需求包括:功能标签涉及的功能点;如图4所示,S202可包括:
S206:对功能标签涉及的功能点进行文本描述,得到第四测试用例。
示例地,在本申请的一个实施例中,对功能标签涉及的功能点进行文本描述后,还需要将该功能需求关联的代码进行保存,方便以后在根据自动化测试用例集合确定第一测试用例时,若是与该功能需求相关的代码,可以通过获取提测需求关联的代码提交git记录;对代码提交记录中的比较代码diff进行解析,获取比较代码涉及的函数;从而进一步扩大回归测试用例的覆盖面。
S207:分别对第四测试用例和第三测试用例进行文本切词,得到第四测试用例的切词文本和第三测试用例的切词文本。
可选地,在本申请的一个实施例中,切词方式仍以采用预设的分词工具,例如可以为中文分词工具或ieba分词工具进行切词为例进行说明。
S208:根据第四测试用例的切词文本和第三测试用例的切词文本的相似度,从人工测试用例集合中确定相似度满足第二预设相似度阈值的测试用例。
示例地,在本申请的一个实施例中,仍是根据切词后的各文本切词对应的词向量,来确定第三测试用例和第四测试用例之间的相似度,词向量的确定方式仍可以采用预先通过NLP的基础工具包的word2vec训练得到的词向量生成模型,生成切词后的各文本切词对应的词向量,再根据确定相似度的模型,例如可以为LDA模型计算各文档间的相似度。
其中,第二测试用例还包括:相似度满足第二预设相似度阈值的测试用例。满足第二预设相似度阈值的第四测试用例,例如可以为与第三测试用例的相似度大于或等于第二预设相似度阈值的第四测试用例,此时确定的第四测试用例为与第三测试用例的相似度较高的第四测试用例。
图5为本申请一实施例提供的测试用例查找方法的流程示意图,如图5所示,以同时根据功能标签和提测需求涉及的函数从自动化测试用例集合中获取对应测试用例作为第一测试用例为例进行说明,可见在获取到提测需求后,可以同时根据功能标签和关联的代码,在自动化测试用例结合中确定第一测试用例集合;此外还可以通过对提测需求进行文本切词后,在人工测试用例集合中确定相似度满足第一预设相似度阈值的历史需求文档对应的第三测试用例,再根据提测需求的功能描述对应的第四测试用例,在第三测试用例中确定第二测试用例集合,最终根据第二测试用例集合和第一测试用例集合共同确定最终的回归测试用例。
采用本申请提供的测试用例查找方法,提出了自动化测试用例和人工测试用例相结合的方式,自动评估出提测需求对应的回归测试用例,由于人工测试用例中将测试用例与需求文档进行了关联,因此可以根据需求文档确定对应的第三测试用例,再根据第三测试用例和提测需求文档对应的第四测试用例进行相似度匹配,挑选出最终相似度满足第二相似度阈值的测试用例为第二测试用例,通过上述第一测试用例和第二测试用例相结合的方式,使得最终得到的回归测试用例集合比通过单一的方法确定的测试用例结合更加全面,使得后续的回归测试也可以更加全面。
基于同一发明构思,本申请实施例中还提供了与测试用例查找方法对应的测试用例查找装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述测试用例查找方法相似,因此装置的实施可以参见方法的实施,有益效果的重复之处不再赘述。
图6为本申请一实施例提供的一种测试用例查找装置的结构示意图,如图6所示,该装置包括:获取模块301和加入模块302,其中:
获取模块301,用于根据提测需求,从自动化测试用例集合中获取第一测试用例;根据提测需求的功能需求,从人工测试用例集合中获取第二测试用例。
加入模块302,用于将第一测试用例和第二测试用例加入至回归测试用例集合,以对提测需求进行回归测试。
可选地,提测需求包括:功能标签;获取模块301,具体用于根据功能标签,从自动化测试用例集合中获取功能标签对应的测试用例,其中,自动化测试用例集合包括:至少一个功能标签对应的测试用例;第一测试用例包括:功能标签对应的测试用例。
可选地,获取模块301,具体用于获取提测需求涉及的函数;从自动化测试用例集合中,获取与函数对应的测试用例;第一测试用例还包括:函数对应的测试用例。
可选地,获取模块301,具体用于获取提测需求关联的代码提交记录;对代码提交记录中的比较代码进行解析,获取比较代码涉及的函数;提测需求涉及的函数为:比较代码涉及的函数。
可选地,提测需求还包括:需求文档;获取模块301,具体用于获取需求文档对应的历史需求文档;根据历史需求文档,从人工测试用例集合中获取历史需求文档关联的测试用例,其中,人工测试用例集合还包括:至少一个历史需求文档关联的测试用例;第二测试用例包括:历史需求文档关联的测试用例。
图7为本申请一实施例提供的一种测试用例查找装置的结构示意图,如图7所示,该装置还包括:切词模块303、计算模块304和确定模块305,其中:
切词模块303,用于分别对需求文档和历史需求管理系统中的至少一个历史需求文档进行文本切词。
计算模块304,用于根据需求文档进行文本切词后的词向量,和每个历史需求文档进行文本切词后的词向量,计算需求文档和每个历史需求文档的相似度。
确定模块305,用于根据需求文档和每个历史需求文档的相似度,从至少一个历史需求文档中,确定相似度满足第一预设相似度阈值的历史需求文档为需求文档对应的历史需求文档;根据需求文档对应的历史需求文档,确定与历史需求文档关联的测试用例为第三测试用例。
可选地,功能需求包括:功能标签涉及的功能点;如图6所示,该装置还包括:描述模块306,用于对功能标签涉及的功能点进行文本描述,得到第四测试用例。
切词模块303,具体用于分别对第四测试用例和第三测试用例进行文本切词,得到第四测试用例的切词文本和第三测试用例的切词文本。
确定模块305,具体用于根据第四测试用例的切词文本和第三测试用例的切词文本的相似度,从人工测试用例集合中确定相似度满足第二预设相似度阈值的测试用例;第二测试用例还包括:相似度满足第二预设相似度阈值的测试用例。
图8为本申请一实施例提供的一种测试用例查找设备的结构示意图,如图8所示,该测试用例查找设备包括:处理器601、存储器602和总线603;存储器602存储有处理器601可执行的机器可读指令,当测试用例查找设备运行时,处理器601与存储器602之间通过总线603通信,处理器601执行机器可读指令,以执行如前述方法实施例所提供的测试用例查找方法的步骤。
具体地,存储器602中所存储的机器可读指令为本申请前述实施例所述的测试用例查找方法的执行步骤,处理器601可执行该测试用例查找方法对提测需求进行处理,因此,该测试用例查找设备同样具备前述方法实施例中所述的全部有益效果,本申请亦不再重复描述。
需要说明的是,该测试用例查找设备可以是通用计算机或特殊用途的计算机,以及其他用于处理数据的服务器等,三者都可以用于实现本申请的测试用例查找方法。本申请尽管仅仅通过计算机和服务器分别对测试用例查找方法进行了说明,但是为了方便起见,也可以在多个类似平台上以分布式方式实现本申请描述的功能,以均衡处理负载。
例如,测试用例查找设备可以包括用于执行程序指令的一个或多个处理器、通信总线、和不同形式的存储介质,例如,磁盘、ROM、或RAM,或其任意组合。示例性地,计算机平台还可以包括存储在ROM、RAM、或其他类型的非暂时性存储介质、或其任意组合中的程序指令。根据这些程序指令可以实现本申请的方法。
为了便于说明,在上述测试用例查找设备中仅描述了一个处理器。然而,应当注意,本申请中的测试用例查找设备还可以包括多个处理器,因此本申请中描述的一个处理器执行的步骤也可以由多个处理器联合执行或单独执行。
本申请实施例还提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述图1-图5提供的测试用例查找方法的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述图1-图5提供的测试用例查找方法,从而,解决现有技术中测试用例覆盖面不够全面,导致用例可能存在缺失的情况,进一步导致后续回归时回归不全面的问题。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种测试用例查找方法,其特征在于,所述方法包括:
根据提测需求,从自动化测试用例集合中获取第一测试用例;
根据所述提测需求的功能需求,从人工测试用例集合中获取第二测试用例;
将所述第一测试用例和所述第二测试用例加入至回归测试用例集合,以对所述提测需求进行回归测试。
2.如权利要求1所述的方法,其特征在于,所述提测需求包括:功能标签;
所述根据提测需求,从自动化测试用例集合中获取第一测试用例,包括:
根据所述功能标签,从所述自动化测试用例集合中获取所述功能标签对应的测试用例,其中,所述自动化测试用例集合包括:至少一个功能标签对应的测试用例;
所述第一测试用例包括:所述功能标签对应的测试用例。
3.如权利要求1所述的方法,其特征在于,所述根据提测需求,从自动化测试用例集合中获取第一测试用例,包括:
获取所述提测需求涉及的函数;
从所述自动化测试用例集合中,获取与所述函数对应的测试用例;
所述第一测试用例还包括:所述函数对应的测试用例。
4.如权利要求3所述的方法,其特征在于,所述获取所述提测需求涉及的函数,包括:
获取所述提测需求关联的代码提交记录;
对所述代码提交记录中的比较代码进行解析,获取所述比较代码涉及的函数;
所述提测需求涉及的函数为:所述比较代码涉及的函数。
5.如权利要求2所述的方法,其特征在于,所述提测需求还包括:需求文档;
所述根据所述提测需求的功能需求,从人工测试用例集合中获取第二测试用例,包括:
获取所述需求文档对应的历史需求文档;
根据所述历史需求文档,从所述人工测试用例集合中获取所述历史需求文档关联的测试用例,其中,所述人工测试用例集合还包括:至少一个历史需求文档关联的测试用例。
6.如权利要求5所述的方法,其特征在于,所述获取所述需求文档对应的历史需求文档,包括:
分别对所述需求文档和历史需求管理系统中的至少一个历史需求文档进行文本切词;
根据所述需求文档进行文本切词后的词向量,和每个历史需求文档进行文本切词后的词向量,计算所述需求文档和所述每个历史需求文档的相似度;
根据所述需求文档和所述每个历史需求文档的相似度,从所述至少一个历史需求文档中,确定相似度满足第一预设相似度阈值的历史需求文档为所述需求文档对应的历史需求文档;
根据所述需求文档对应的历史需求文档,确定与所述历史需求文档关联的测试用例为第三测试用例。
7.如权利要求6所述的方法,其特征在于,所述功能需求包括:所述功能标签涉及的功能点;
所述根据所述提测需求的功能需求,从人工测试用例集合中获取第二测试用例,包括:
对所述功能标签涉及的功能点进行文本描述,得到第四测试用例;
分别对所述第四测试用例和所述第三测试用例进行文本切词,得到所述第四测试用例的切词文本和所述第三测试用例的切词文本;
根据所述第四测试用例的切词文本和所述第三测试用例的切词文本的相似度,从所述人工测试用例集合中确定相似度满足第二预设相似度阈值的测试用例;
所述第二测试用例还包括:相似度满足所述第二预设相似度阈值的测试用例。
8.一种测试用例查找装置,其特征在于,所述装置包括:获取模块和加入模块,其中:
所述获取模块,用于根据提测需求,从自动化测试用例集合中获取第一测试用例;根据所述提测需求的功能需求,从人工测试用例集合中获取第二测试用例;
所述加入模块,用于将所述第一测试用例和所述第二测试用例加入至回归测试用例集合,以对所述提测需求进行回归测试。
9.一种测试用例查找设备,其特征在于,所述设备包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当所述测试用例查找设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行上述权利要求1-7任一项所述的方法。
10.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述权利要求1-7任一项所述的方法。
CN202011098053.3A 2020-10-14 2020-10-14 测试用例查找方法、装置、设备及存储介质 Pending CN112100359A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011098053.3A CN112100359A (zh) 2020-10-14 2020-10-14 测试用例查找方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011098053.3A CN112100359A (zh) 2020-10-14 2020-10-14 测试用例查找方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN112100359A true CN112100359A (zh) 2020-12-18

Family

ID=73784226

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011098053.3A Pending CN112100359A (zh) 2020-10-14 2020-10-14 测试用例查找方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112100359A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434414A (zh) * 2021-06-28 2021-09-24 平安银行股份有限公司 数据测试方法、装置、电子设备及存储介质
CN113687826A (zh) * 2021-08-10 2021-11-23 中国人民解放军陆军工程大学 一种基于需求项提取的测试用例复用系统及方法
CN114637691A (zh) * 2022-05-17 2022-06-17 云账户技术(天津)有限公司 一种测试用例的管理方法及装置
WO2023206523A1 (zh) * 2022-04-29 2023-11-02 西门子股份公司 工作流推荐方法、装置和存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150178182A1 (en) * 2011-10-07 2015-06-25 Syntel, Inc. Software testing platform and method
CN109491898A (zh) * 2018-10-30 2019-03-19 武汉思普崚技术有限公司 基于自动化测试与用例管理的测试效率提升方法及设备
CN109828905A (zh) * 2018-12-15 2019-05-31 中国平安人寿保险股份有限公司 自动化测试方法、装置、计算机装置及存储介质
CN109902016A (zh) * 2019-03-04 2019-06-18 网易(杭州)网络有限公司 一种Web的测试方法及测试平台
US20190213116A1 (en) * 2018-01-10 2019-07-11 Accenture Global Solutions Limited Generation of automated testing scripts by converting manual test cases
US20200019488A1 (en) * 2018-07-12 2020-01-16 Sap Se Application Test Automate Generation Using Natural Language Processing and Machine Learning
CN110704329A (zh) * 2019-10-30 2020-01-17 一汽轿车股份有限公司 具有电气测试用例自动代码转化功能的系统和转化方法
CN111563041A (zh) * 2020-05-08 2020-08-21 吴迪 一种测试用例按需精准执行方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150178182A1 (en) * 2011-10-07 2015-06-25 Syntel, Inc. Software testing platform and method
US20190213116A1 (en) * 2018-01-10 2019-07-11 Accenture Global Solutions Limited Generation of automated testing scripts by converting manual test cases
US20200019488A1 (en) * 2018-07-12 2020-01-16 Sap Se Application Test Automate Generation Using Natural Language Processing and Machine Learning
CN109491898A (zh) * 2018-10-30 2019-03-19 武汉思普崚技术有限公司 基于自动化测试与用例管理的测试效率提升方法及设备
CN109828905A (zh) * 2018-12-15 2019-05-31 中国平安人寿保险股份有限公司 自动化测试方法、装置、计算机装置及存储介质
CN109902016A (zh) * 2019-03-04 2019-06-18 网易(杭州)网络有限公司 一种Web的测试方法及测试平台
CN110704329A (zh) * 2019-10-30 2020-01-17 一汽轿车股份有限公司 具有电气测试用例自动代码转化功能的系统和转化方法
CN111563041A (zh) * 2020-05-08 2020-08-21 吴迪 一种测试用例按需精准执行方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434414A (zh) * 2021-06-28 2021-09-24 平安银行股份有限公司 数据测试方法、装置、电子设备及存储介质
CN113687826A (zh) * 2021-08-10 2021-11-23 中国人民解放军陆军工程大学 一种基于需求项提取的测试用例复用系统及方法
CN113687826B (zh) * 2021-08-10 2024-02-02 中国人民解放军陆军工程大学 一种基于需求项提取的测试用例复用系统及方法
WO2023206523A1 (zh) * 2022-04-29 2023-11-02 西门子股份公司 工作流推荐方法、装置和存储介质
CN114637691A (zh) * 2022-05-17 2022-06-17 云账户技术(天津)有限公司 一种测试用例的管理方法及装置

Similar Documents

Publication Publication Date Title
CN112100359A (zh) 测试用例查找方法、装置、设备及存储介质
CN111340054A (zh) 数据标注方法、装置及数据处理设备
CN113221565A (zh) 实体识别模型的训练方法、装置、电子设备及存储介质
CN115576828A (zh) 一种测试用例生成方法、装置、设备及存储介质
CN115311469A (zh) 图像标注方法、训练方法、图像处理方法以及电子设备
CN113407610B (zh) 信息抽取方法、装置、电子设备和可读存储介质
CN113032258B (zh) 一种电子地图的测试方法、装置、电子设备及存储介质
CN111177009A (zh) 一种脚本生成方法、装置、电子设备及存储介质
CN112395880A (zh) 结构化三元组的纠错方法、装置、计算机设备及存储介质
CN116975284A (zh) 基于先验知识的实体关系抽取方法、装置及存储介质
CN116303013A (zh) 源码分析方法、装置、电子设备及存储介质
CN114443493A (zh) 一种测试案例生成方法、装置、电子设备和存储介质
CN112287005B (zh) 一种数据处理方法、装置、服务器及介质
CN113886906A (zh) Cad图纸的加载方法、字体文件替换方法、装置和存储介质
CN111400245B (zh) 美术资源迁移方法及装置
CN114912866A (zh) 一种信息关联方法、装置、设备及存储介质
CN114297380A (zh) 一种数据处理方法、装置、设备及存储介质
CN110083807B (zh) 合同的修改影响自动预测方法、装置、介质及电子设备
CN112580620A (zh) 标志图片处理方法、装置、设备和介质
CN114491040B (zh) 信息挖掘方法及装置
CN116341538A (zh) 文本渲染方法、装置及电子设备
CN116192999A (zh) 报文处理方法、装置、设备、存储介质及程序产品
CN114943821A (zh) 一种坡口标注方法、装置、电子设备及存储介质
CN117742686A (zh) 程序源代码文件生成方法、装置、电子设备及存储介质
CN113962382A (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