CN109871311B - 一种推荐测试用例的方法和装置 - Google Patents
一种推荐测试用例的方法和装置 Download PDFInfo
- Publication number
- CN109871311B CN109871311B CN201711262217.XA CN201711262217A CN109871311B CN 109871311 B CN109871311 B CN 109871311B CN 201711262217 A CN201711262217 A CN 201711262217A CN 109871311 B CN109871311 B CN 109871311B
- Authority
- CN
- China
- Prior art keywords
- test
- test case
- existing test
- test cases
- existing
- 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.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种推荐测试用例的方法和装置,涉及计算机技术领域。该方法的一个具体实施方式包括:获取待测试的测试场景;提取所述待测试的测试场景的关键字;从测试用例集中选出至少包括一个关键字的已有测试用例,作为为所述待测试的测试场景推荐的测试用例;所述测试用例集包括多个已有测试用例。该实施方式克服了重复设计、编写测试用例带来的测试效率相对较低的技术问题,进而达到通过高效利用已有的测试用例集,减少用例重复编写和对测试用例进行人工筛所带来的工作量,并提高测试覆盖率的技术效果。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种推荐测试用例的方法和装置。
背景技术
测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。目前测试工程师根据系统的需求文档、设计文档以及个人经验,采用测试用例设计方法例如:等价类划分、边界值分析法、错误推测法、因果图方法、正交表法、场景分析法等,按照测试用例模板,编写和设计测试用例,进行测试工作。不同时间段的测试,需要重复迭代、设计、编写测试用例,然后顺序执行测试用例,例如:A工程师在某年的12月完成了X系统测试用例设计编写完成测试工作;B工程师在次年的1月,需要对X系统进行重新测试,这时需要对A工程师的测试用例进行人工筛选后,B工程师再次重新设计和编写测试用例。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
1.由于不同系统之间的测试场景重复率较高,针对不同系统重复设计、编写测试用例,导致测试效率较低。
2.对系统进行重复测试时需要对先前的测试用例进行人工筛选耗时又耗力。
3.以个人测试经验、测试用例设计方法获得的测试用例,覆盖率相对较低。
4.测试工程师只能顺序执行测试用例,无法灵活的给出更适合、优先级高的测试用例。
发明内容
有鉴于此,本发明实施例提供一种推荐测试用例的方法和装置,将待测试的测试场景的关键字与已有的测试用例进行匹配,以推荐最为合适的测试用例;本发明实施例能够高效利用已有的测试用例集,减少测试用例重复编写和对测试用例进行人工筛所带来的工作量,提高了测试效率和测试覆盖率。
为实现上述目的,根据本发明实施例的一个方面,提供了一种推荐测试用例的方法,包括:获取待测试的测试场景;提取所述待测试的测试场景的关键字;从测试用例集中选出至少包括一个关键字的已有测试用例,作为为所述待测试的测试场景推荐的测试用例。
可选地,所述已有测试用例包括:页面控件、操作动作、测试数据;从测试用例集中选出至少包括一个关键字的已有测试用例,包括:针对每一个关键字,若所述已有测试用例的页面控件、操作动作、测试数据中至少有一个与该关键字匹配成功,则选出该已有测试用例。
可选地,所述已有测试用例包括:异常ID;从测试用例集中选出至少包括一个关键字的已有测试用例之后,包括:针对每个选出的已有测试用例,获取该已有测试用例的异常ID的数量、该已有测试用例在测试用例集中的重复次数、该已有测试用例的被导出次数以及以上三者之和,将以上三者之和作为优先值;按照所述优先值从大到小的顺序,对选出的已有测试用例进行排序;作为为所述待测试的测试场景推荐的测试用例,包括:将前N个已有测试用例,作为为所述待测试的测试场景推荐的测试用例。
可选地,按照所述优先值从大到小的顺序,对选出的已有测试用例进行排序,还包括:若所述优先值相同,则按照所述异常ID的数量从大到小的顺序,对选出的已有测试用例进行排序;若所述异常ID的数量相同,则按照所述重复次数从大到小的顺序,对选出的已有测试用例进行排序;若所述重复次数相同,则按照所述被导出次数从大到小的顺序,对选出的已有测试用例进行排序。
可选地,采用文本排序Text Rank算法提取所述待测试的测试场景的关键字。
为实现上述目的,根据本发明实施例的一个方面,提供了一种推荐测试用例的装置,包括:测试场景获取模块、提取关键字模块、推荐测试用例模块;所述测试场景获取模块,用于:获取待测试的测试场景;所述提取关键字模块,用于:提取所述待测试的测试场景的关键字;所述推荐测试用例模块,用于:从测试用例集中选出至少包括一个关键字的已有测试用例,作为为所述待测试的测试场景推荐的测试用例。
可选地,所述已有测试用例包括:页面控件、操作动作、测试数据;所述推荐测试用例模块,用于:针对每一个关键字,若所述已有测试用例的页面控件、操作动作、测试数据中至少有一个与该关键字匹配成功,则选出该已有测试用例。
可选地,所述已有测试用例包括:异常ID;所述推荐测试用例模块,用于:针对每个选出的已有测试用例,获取该已有测试用例的异常ID的数量、该已有测试用例在测试用例集中的重复次数、该已有测试用例的被导出次数以及以上三者之和,将以上三者之和作为优先值;按照所述优先值从大到小的顺序,对选出的已有测试用例进行排序;将前N个已有测试用例,作为为所述待测试的测试场景推荐的测试用例。
可选地,所述推荐测试用例模块,用于:若所述优先值相同,则按照所述异常ID的数量从大到小的顺序,对选出的已有测试用例进行排序;若所述异常ID的数量相同,则按照所述重复次数从大到小的顺序,对选出的已有测试用例进行排序;若所述重复次数相同,则按照所述被导出次数从大到小的顺序,对选出的已有测试用例进行排序。
可选地,所述提取关键字模块,用于:采用文本排序Text Rank算法提取所述待测试的测试场景的关键字。
为实现上述目的,根据本发明实施例的再一方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例所提供的推荐测试用例的方法。
为实现上述目的,根据本发明实施例的再一方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明所提供的推荐测试用例的方法。
上述发明中的一个实施例具有如下优点或有益效果:因为采用将待测试的测试场景的关键字与已有的测试用例进行匹配,以推荐最为合适的测试用例的技术手段,所以克服了重复设计、编写测试用例带来的测试效率相对较低的技术问题,进而达到通过高效利用已有的测试用例集,减少测试用例重复编写和对测试用例进行人工筛所带来的工作量,并提高测试覆盖率的技术效果。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的推荐测试用例的方法的基本流程的示意图;
图2是根据本发明实施例的推荐测试用例的方法的优选流程的示意图;
图3是根据本发明实施例的对选出的已有测试用例进行排序的优选流程的示意图;
图4是根据本发明实施例的推荐测试用例的装置的基本组成部分的示意图;
图5是本发明实施例可以应用于其中的示例性系统架构图;
图6是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本发明实施例的推荐测试用例的方法的基本流程的示意图,如图1所示,本发明实施例提供了一种推荐测试用例的方法,可以包括:
步骤S101获取待测试的测试场景;
步骤S102提取所述待测试的测试场景的关键字;
步骤S103从测试用例集中选出至少包括一个关键字的已有测试用例,作为为所述待测试的测试场景推荐的测试用例。
若在步骤S102中只提取到一个关键字,则在步骤S103中从测试用例集中选出包括该关键字的已有测试用例;若在步骤S102中提取到多个关键字,则在步骤S103中从测试用例集中选出至少包括一个关键字的已有测试用例。所述测试用例集为已有测试用例的集合,包括多个已有测试用例。测试工程师可以基于本次推荐的测试用例,在测试用例集合中添加新的测试用例,完善测试用例集。
本发明实施例采用将待测试的测试场景的关键字与已有的测试用例进行匹配,以推荐最为合适的测试用例的技术手段,克服了重复设计、编写测试用例带来的测试效率相对较低的技术问题,进而达到通过高效利用已有的测试用例集,减少用例重复编写和对测试用例进行人工筛所带来的工作量,并提高测试覆盖率的技术效果。测试用例集经过不断迭代,可以使推荐的测试用例更加灵活、更有价值,在测试中发现系统问题的概率大大提升。
本发明实施例中,所述已有测试用例可以包括:页面控件、操作动作、测试数据;从测试用例集中选出至少包括一个关键字的已有测试用例,包括:针对每一个关键字,若所述已有测试用例的页面控件、操作动作、测试数据中至少有一个与该关键字匹配成功,则选出该已有测试用例。本发明实施例高效利用已有的测试用例集,根据待测试的测试场景的关键字及其类型与已有的测试用例进行匹配,提高了匹配的速度和准确度。
以待测试的测试场景为“文本框输入小数”为例:
提取待测试的测试场景的关键字为:“文本框、输入、小数”;通过与页面控件映射表、操作动作映射表、数据类型映射表匹配,确定关键字的类型,得出页面控件—文本框,操作动作—输入,测试数据—小数,存入到map中;从测试用例集中,通过mybatis读取已有测试用例的页面控件、操作动作、测试数据,存入testcaseobject中;map与testcaseobject中的内容进行对比,将关键字通过其所属类型与测试用例集中的已有测试用例进行匹配筛选,得到已有测试用例A:页面控件“文本框”、操作动作“输入”、测试数据:“0.02”;已有测试用例B:页面控件“文本框”、测试场景“输入”、测试数据“蓝天”。将已有测试用例A、已有测试用例B作为为待测试的测试场景推荐的测试用例。已有测试用例A与关键字匹配全部匹配成功,则存入到数据库is中;已有测试用例B与关键字匹配部分匹配成功,则存入到结果表restultmap中。其中,map是一种按照键-值key-value格式的数据集合;mybatis是读取数据库内容的一种技术手段;testcaseobject是将每一条测试用例看作一个对象,testcaseobject里面存放的内容是每一条测试用例中的具体字段内容。
本发明实施例中,所述已有测试用例可以包括:异常ID;异常是指根据已有测试用例对系统进行测试时发现的系统问题,异常ID用于表示发现的系统问题的唯一编码。图2是根据本发明实施例的推荐测试用例的方法的优选流程的示意图,如图2所示,本发明实施例的推荐测试用例方法可以包括:获取待测试的测试场景;提取所述待测试的测试场景的关键字;从测试用例集中选出至少包括一个关键字的已有测试用例;针对每个选出的已有测试用例,获取该已有测试用例的异常ID的数量、该已有测试用例在测试用例集中的重复次数、该已有测试用例的被导出次数以及以上三者之和;将以上三者之和作为优先值,按照所述优先值从大到小的顺序,对选出的已有测试用例进行排序;将前N个已有测试用例,作为为所述待测试的测试场景推荐的测试用例,N为正整数。其中,异常ID的数量是指一条测试用例中异常ID的个数,重复次数是指相同的已有测试用例在测试用例集合中的条数,被导出次数是指该已有测试用例被导出用来对系统进行测试的次数。本发明实施例根据已有测试用例的历史执行情况,对选出的已有测试用例进行排序,使推荐的测试用例更有价值、更符合测试需求。
以上文中的已有测试用例A、已有测试用例B为例:
从测试用例集中,获取已有测试用例A的异常ID“101、102、103”、重复次数“3”、导出次数“1”,即得到异常ID的数量为“3”,优先值为“7”;已有测试用例B的异常ID“104”、重复次数“0”、导出次数“0”,即得到异常ID的数量为“1”,优先值为“1”。按照优先值从大到小的顺序,排序后为:已有测试用例A、已有测试用例B,将前1个已有测试用例即已有测试用例A,作为为所述待测试的测试场景推荐的测试用例。
图3是根据本发明实施例的对选出的已有测试用例进行排序的优选流程的示意图。本发明实施例中,按照所述优先值从大到小的顺序,对选出的已有测试用例进行排序,还可以如图3所示包括:若所述优先值相同,则按照所述异常ID的数量从大到小的顺序,对选出的已有测试用例进行排序;若所述异常ID的数量相同,则按照所述重复次数从大到小的顺序,对选出的已有测试用例进行排序;若所述重复次数相同,则按照所述被导出次数从大到小的顺序,对选出的已有测试用例进行排序。本发明实施例根据已有测试用例的历史执行情况,对选出的已有测试用例进行更为综合的排序,使推荐的测试用例更有价值、更符合测试需求。
本发明实施例中,可以采用文本排序Text Rank算法提取所述待测试的测试场景的关键字。Text Rank算法是一种基于图的用于文本的排序算法,通过把文本分割成若干组成单元并建立图模型,利用投票机制对文本中的重要成分进行排序,仅利用单篇文档本身的信息即可实现关键词提取,Text Rank算法不需要事先对多篇文档进行学习训练,简洁有效,提高了推荐的速度和准确度。
图4是根据本发明实施例的推荐测试用例的装置的基本组成部分的示意图;如图4所示,本发明实施例提供了一种推荐测试用例的装置400,可以包括:测试场景获取模块401、提取关键字模块402、推荐测试用例模块403;所述测试场景获取模块401,可以用于:获取待测试的测试场景;所述提取关键字模块402,可以用于:提取所述待测试的测试场景的关键字;所述推荐测试用例模块403,可以用于:从测试用例集中选出至少包括一个关键字的已有测试用例,作为为所述待测试的测试场景推荐的测试用例。
本发明实施例采用将待测试的测试场景的关键字与已有的测试用例进行匹配,以推荐最为合适的测试用例的技术手段,克服了重复设计、编写测试用例带来的测试效率相对较低的技术问题,进而达到通过高效利用已有的测试用例集,减少用例重复编写和对测试用例进行人工筛所带来的工作量,并提高测试覆盖率的技术效果。
本发明实施例中,推荐测试用例的装置400,还可以包括:测试用例集更新模块,用于:基于推荐的测试用例,在测试用例集合中添加新的测试用例,完善测试用例集。测试用例集经过不断迭代,可以使推荐的测试用例更加灵活、更有价值,在测试中发现系统问题的概率大大提升。
本发明实施例中,所述已有测试用例可以包括:页面控件、操作动作、测试数据;所述推荐测试用例模块403,可以用于:针对每一个关键字,若所述已有测试用例的页面控件、操作动作、测试数据中至少有一个与该关键字匹配成功,则选出该已有测试用例。本发明实施例高效利用已有的测试用例集,根据待测试的测试场景的关键字及其类型与已有的测试用例进行匹配,提高了匹配的速度和准确度。
可以通过如下方法将测试用例导入测试用例集:
(1)测试用例文件格式是excel,利用jexcelapi即读取excel文件的工具,遍历读取表格excel中每一行的内容。
(2)通过Text Rank算法,提取关键字如下:“验证、文本框、输入、小数、是否、成功、输入、输入框、输入、小数”。
(3)遍历关键字的映射表,映射表中可以包括:
页面控件可以但不限于包括:文本框、输入框、文本域等;
操作动作可以但不限于包括:输入、点击、单击、双击等;
测试数据可以但不限于包括:小数、整数、正数、负数等;
语种词语可以但不限于包括:英文、中文、泰文等。
映射表中的内容分别与(2)得出的关键字,进行匹配,并以键-值key-value的形式存入map中;例如:页面控件词语-文本框;操作动作-输入;数据词语-小数。
循环遍历(3)得出的map,根据key读取value,赋值到测试用例对象testcaseobject中,例如:testcaseobject={页面控件名称-文本框;操作动作-输入;测试数据-小数}。
(4)利用mybatis数据库操作技术,写入到测试用例集中。
本发明实施例中,所述已有测试用例可以包括:异常ID;所述推荐测试用例模块403,可以用于:针对每个选出的已有测试用例,获取该已有测试用例的异常ID的数量、该已有测试用例在测试用例集中的重复次数、该已有测试用例的被导出次数以及以上三者之和,将以上三者之和作为优先值;按照所述优先值从大到小的顺序,对选出的已有测试用例进行排序;将前N个已有测试用例,作为为所述待测试的测试场景推荐的测试用例。本发明实施例根据已有测试用例的历史执行情况,对选出的已有测试用例进行排序,使推荐的测试用例更有价值、更符合测试需求。
本发明实施例中,所述推荐测试用例模块403,可以用于:若所述优先值相同,则按照所述异常ID的数量从大到小的顺序,对选出的已有测试用例进行排序;若所述异常ID的数量相同,则按照所述重复次数从大到小的顺序,对选出的已有测试用例进行排序;若所述重复次数相同,则按照所述被导出次数从大到小的顺序,对选出的已有测试用例进行排序。本发明实施例根据已有测试用例的历史执行情况,对选出的已有测试用例进行更为综合的排序,使推荐的测试用例更有价值、更符合测试需求。
本发明实施例中,所述提取关键字模块402,可以用于:采用文本排序Text Rank算法提取所述待测试的测试场景的关键字。Text Rank算法不需要事先对多篇文档进行学习训练,简洁有效,提高了推荐的速度和准确度。
图5示出了可以应用本发明实施例的一种推荐测试用例的方法或一种推荐测试用例的装置的示例性系统架构500。
如图5所示,系统架构500可以包括终端设备501、502、503,网络504和服务器505。网络504用以在终端设备501、502、503和服务器505之间提供通信链路的介质。网络504可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备501、502、503通过网络504与服务器505交互,以接收或发送消息等。终端设备501、502、503上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备501、502、503可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器505可以是提供各种服务的服务器,例如对用户利用终端设备501、502、503所浏览的购物类网站提供支持的后台管理服务器。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息)反馈给终端设备。
需要说明的是,本发明实施例所提供的推荐测试用例的方法一般由服务器505执行,相应地,消息请求的传输装置一般设置于服务器505中。
应该理解,图5中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
根据本发明的实施例,本发明还提供了一种电子设备和一种可读存储介质。
本发明的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明所提供的推荐测试用例的方法。
本发明的计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明所提供的推荐测试用例的方法。
下面参考图6,其示出了适于用来实现本发明实施例的终端设备的计算机系统600的结构示意图。图6示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分408加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 401、ROM 402以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器,包括:测试场景获取模块、提取关键字模块、推荐测试用例模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,测试场景获取模块还可以被描述为“获取待测试的测试场景的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:步骤S101获取待测试的测试场景;步骤S102提取所述待测试的测试场景的关键字;步骤S103从测试用例集中选出至少包括一个关键字的已有测试用例,作为为所述待测试的测试场景推荐的测试用例。
根据本发明实施例的技术方案,采用将待测试的测试场景的关键字与已有的测试用例进行匹配,以推荐最为合适的测试用例的技术手段,克服了重复设计、编写测试用例带来的测试效率相对较低的技术问题,进而达到通过高效利用已有的测试用例集,减少测试用例重复编写和对测试用例进行人工筛所带来的工作量,并提高测试覆盖率的技术效果。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (10)
1.一种推荐测试用例的方法,其特征在于,包括:
获取待测试的测试场景;
提取所述待测试的测试场景的关键字;
将所述关键字通过所属类型与测试用例集中的已有测试用例进行匹配筛选;所述已有测试用例包括:异常ID;所述异常ID用于表示发现的系统问题的唯一编码;
从测试用例集中选出至少包括一个关键字的已有测试用例,针对每个选出的已有测试用例,获取该已有测试用例的异常ID的数量、该已有测试用例在测试用例集中的重复次数、该已有测试用例的被导出次数以及以上三者之和,将以上三者之和作为优先值;按照所述优先值从大到小的顺序,对选出的已有测试用例进行排序;将前N个已有测试用例,作为为所述待测试的测试场景推荐的测试用例。
2.根据权利要求1所述的方法,其特征在于,所述已有测试用例包括:页面控件、操作动作、测试数据;
从测试用例集中选出至少包括一个关键字的已有测试用例,包括:
针对每一个关键字,若所述已有测试用例的页面控件、操作动作、测试数据中至少有一个与该关键字匹配成功,则选出该已有测试用例。
3.根据权利要求1所述的方法,其特征在于,按照所述优先值从大到小的顺序,对选出的已有测试用例进行排序,还包括:
若所述优先值相同,则按照所述异常ID的数量从大到小的顺序,对选出的已有测试用例进行排序;
若所述异常ID的数量相同,则按照所述重复次数从大到小的顺序,对选出的已有测试用例进行排序;
若所述重复次数相同,则按照所述被导出次数从大到小的顺序,对选出的已有测试用例进行排序。
4. 根据权利要求1所述的方法,其特征在于,采用文本排序Text Rank算法提取所述待测试的测试场景的关键字。
5.一种推荐测试用例的装置,其特征在于,包括:测试场景获取模块、提取关键字模块、推荐测试用例模块;
所述测试场景获取模块,用于:获取待测试的测试场景;
所述提取关键字模块,用于:提取所述待测试的测试场景的关键字;
所述推荐测试用例模块,用于:将所述关键字通过所属类型与测试用例集中的已有测试用例进行匹配筛选;所述已有测试用例包括:异常ID;所述异常ID用于表示发现的系统问题的唯一编码;从测试用例集中选出至少包括一个关键字的已有测试用例,针对每个选出的已有测试用例,获取该已有测试用例的异常ID的数量、该已有测试用例在测试用例集中的重复次数、该已有测试用例的被导出次数以及以上三者之和,将以上三者之和作为优先值;按照所述优先值从大到小的顺序,对选出的已有测试用例进行排序;将前N个已有测试用例,作为为所述待测试的测试场景推荐的测试用例。
6.根据权利要求5所述的装置,其特征在于,所述已有测试用例包括:页面控件、操作动作、测试数据;
所述推荐测试用例模块,用于:针对每一个关键字,若所述已有测试用例的页面控件、操作动作、测试数据中至少有一个与该关键字匹配成功,则选出该已有测试用例。
7.根据权利要求5所述的装置,其特征在于,所述推荐测试用例模块,用于:
若所述优先值相同,则按照所述异常ID的数量从大到小的顺序,对选出的已有测试用例进行排序;
若所述异常ID的数量相同,则按照所述重复次数从大到小的顺序,对选出的已有测试用例进行排序;
若所述重复次数相同,则按照所述被导出次数从大到小的顺序,对选出的已有测试用例进行排序。
8. 根据权利要求5所述的装置,其特征在于,所述提取关键字模块,用于:采用文本排序Text Rank算法提取所述待测试的测试场景的关键字。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一所述的方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-4中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711262217.XA CN109871311B (zh) | 2017-12-04 | 2017-12-04 | 一种推荐测试用例的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711262217.XA CN109871311B (zh) | 2017-12-04 | 2017-12-04 | 一种推荐测试用例的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109871311A CN109871311A (zh) | 2019-06-11 |
CN109871311B true CN109871311B (zh) | 2022-12-27 |
Family
ID=66915723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711262217.XA Active CN109871311B (zh) | 2017-12-04 | 2017-12-04 | 一种推荐测试用例的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109871311B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112445692B (zh) * | 2019-08-27 | 2024-01-26 | 腾讯科技(深圳)有限公司 | 一种用例测试方法及终端 |
CN110806969A (zh) * | 2019-09-18 | 2020-02-18 | 北京你财富计算机科技有限公司 | 一种测试用例完整度评估方法、装置及电子设备 |
CN112749074B (zh) * | 2019-10-30 | 2023-10-27 | 腾讯科技(深圳)有限公司 | 一种测试用例推荐方法以及装置 |
CN113127728A (zh) * | 2020-01-16 | 2021-07-16 | 北京沃东天骏信息技术有限公司 | 一种处理物品场景图的方法和装置 |
CN111367791B (zh) * | 2020-02-19 | 2023-08-01 | 北京字节跳动网络技术有限公司 | 一种生成测试用例的方法、装置、介质和电子设备 |
CN113760712A (zh) * | 2020-10-13 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种测试评估方法和装置 |
CN112925725B (zh) * | 2021-04-09 | 2024-03-15 | 网易(杭州)网络有限公司 | 数据测试方法和装置、可读存储介质、电子设备 |
CN113448869B (zh) * | 2021-07-16 | 2022-12-13 | 中国建设银行股份有限公司 | 测试用例生成的方法、装置、电子设备及计算机可读介质 |
CN113568833A (zh) * | 2021-07-28 | 2021-10-29 | 深圳Tcl新技术有限公司 | 测试用例确定方法、装置、计算机设备及可读存储介质 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100561444C (zh) * | 2006-11-15 | 2009-11-18 | 中兴通讯股份有限公司 | 一种基于关键字驱动的自动测试方法及其测试系统 |
US8645341B2 (en) * | 2010-03-31 | 2014-02-04 | Salesforce.Com, Inc. | Method and system for automatically updating a software QA test repository |
KR101410099B1 (ko) * | 2012-12-05 | 2014-06-25 | 경북대학교 산학협력단 | 단위 테스트 케이스 재사용 기반의 함수 테스트 장치 및 그 함수 테스트 방법 |
KR20150030297A (ko) * | 2013-09-11 | 2015-03-20 | 에스케이플래닛 주식회사 | 애플리케이션 자동 검증을 위한 검증장치, 단말장치, 시스템, 방법 및 컴퓨터로 판독 가능한 기록 매체 |
CN104123227A (zh) * | 2014-08-13 | 2014-10-29 | 广东电网公司信息中心 | 一种自动生成测试用例的方法 |
CN104572449A (zh) * | 2014-12-23 | 2015-04-29 | 中国移动通信集团广东有限公司 | 一种基于用例库的自动化测试方法 |
CN105224461B (zh) * | 2015-10-23 | 2018-01-26 | 网易(杭州)网络有限公司 | 一种集成测试用例的生成方法和装置 |
CN105302723B (zh) * | 2015-11-06 | 2020-07-31 | 北京京东尚科信息技术有限公司 | 测试用例评估方法、装置和计算机可读存储介质 |
CN107229559B (zh) * | 2016-03-23 | 2020-06-02 | 阿里巴巴集团控股有限公司 | 针对业务系统的测试完整度的检测方法和装置 |
CN106326122B (zh) * | 2016-08-23 | 2018-08-31 | 北京精密机电控制设备研究所 | 一种软件单元测试用例管理系统 |
CN106776311A (zh) * | 2016-12-09 | 2017-05-31 | 华北计算技术研究所 | 一种软件接口测试用例的自动生成方法 |
CN106528433B (zh) * | 2016-12-12 | 2018-10-02 | 西安邮电大学 | 一种用于白盒测试的测试用例优先级排序方法 |
-
2017
- 2017-12-04 CN CN201711262217.XA patent/CN109871311B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109871311A (zh) | 2019-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109871311B (zh) | 一种推荐测试用例的方法和装置 | |
CN108256070B (zh) | 用于生成信息的方法和装置 | |
CN111104482A (zh) | 数据处理方法和装置 | |
CN108121814B (zh) | 搜索结果排序模型生成方法和装置 | |
CN111104479A (zh) | 一种数据标注的方法及装置 | |
CN107908662B (zh) | 搜索系统的实现方法和实现装置 | |
CN113377653B (zh) | 生成测试用例的方法和装置 | |
CN107391528B (zh) | 前端组件依赖信息搜索方法及设备 | |
CN112148841B (zh) | 一种对象分类以及分类模型构建方法和装置 | |
CN114792089A (zh) | 用于管理计算机系统的方法、设备和程序产品 | |
CN110688096A (zh) | 包含插件的应用程序的构建方法、装置、介质及电子设备 | |
CN111435406A (zh) | 一种纠正数据库语句拼写错误的方法和装置 | |
CN113448869B (zh) | 测试用例生成的方法、装置、电子设备及计算机可读介质 | |
CN111831536A (zh) | 一种自动化测试方法和装置 | |
CN110688295A (zh) | 数据测试方法和装置 | |
CN113792232B (zh) | 页面特征计算方法、装置、电子设备、介质及程序产品 | |
KR20200103133A (ko) | 하둡 기반의 빅데이터 시스템에서 etl 절차를 수행하는 방법 및 장치 | |
JP6868062B2 (ja) | 情報を更新するための方法と装置 | |
CN109857838B (zh) | 用于生成信息的方法和装置 | |
CN109308299B (zh) | 用于搜索信息的方法和装置 | |
CN113076254A (zh) | 一种测试用例集的生成方法和装置 | |
CN111178014A (zh) | 一种处理业务流程的方法和装置 | |
CN111310016B (zh) | 标签挖掘方法、装置、服务器和存储介质 | |
US9519691B1 (en) | Methods of tracking technologies and related systems and computer program products | |
CN110196803B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |