发明内容
基于上述问题,本发明实施例公开了一种确定回归测试范围的方法及装置,以达到提高测试效率,降低人工成本,且提高测试稳定性的目的。技术方案如下:
第一方面,本发明实施例提供了一种确定回归测试范围的方法,包括:
获取待测试的变更代码数据的路径信息;
根据所述获取的路径信息到预先构建的数据库中查找与所述获取的路径信息匹配的回归测试范围参考信息;
输出所述查找到的回归测试范围参考信息,以使测试人员根据所述回归测试范围参考信息确定回归测试范围。
可选的,在所述获取变更代码数据的路径信息之前,所述方法还包括:
提供第一web交互界面;
所述获取变更代码数据的路径信息包括:
接收测试人员通过所述第一web交互界面输入的变更代码数据的路径信息;
所述输出所述查找到的回归测试范围参考信息,包括:
在第二web交互界面上输出所述查找到的回归测试范围参考信息。
可选的,所述数据库包括基于svn日志所构建的第一类数据库,所述基于svn日志所构建的第一类数据库的构建方式包括:
提取svn日志中的Modified字段的内容和与所述Modified字段对应的Message字段的内容,其中Modified字段的内容中包括变更代码数据的路径信息;
将所述Modified字段的内容以及与所述Modified字段对应的Message字段的内容存储到第一类数据库;
所述根据所述获取的路径信息到预先构建的数据库中查找与所述路径信息匹配的回归测试范围参考信息,包括:
根据所述获取的路径信息到所述基于svn日志所构建的第一类数据库查找与所述获取的路径信息匹配的Modified字段的内容;
将所述匹配的Modified字段的内容对应的Message字段的内容作为回归测试范围参考信息。
可选的,所述数据库包括基于Bugfree管理工具所构建的第二类数据库,所述基于Bugfree管理工具所构建的第二类数据库的构建方式包括:
提取Bugfree管理工具中记录的变更代码数据的路径信息,以及与所述记录的路径信息对应的所述变更代码数据的描述信息;
将所述记录的路径信息、以及与所述记录的路径信息对应的所述变更代码数据的描述信息存储到第二类数据库中;
所述根据所述获取的路径信息到预先构建的数据库中查找与所述路径信息匹配的回归测试范围参考信息,包括:
根据所述获取的路径信息到所述基于Bugfree管理工具所构建的第二类数据库查找与所述获取的路径信息匹配的路径信息;
将所述匹配的路径信息对应的描述信息作为回归测试范围参考信息。
可选的,所述数据库包括基于测试人员的测试经验所构建的第三类数据库,所述基于测试人员的测试经验所构建的第三类数据库的构建方式包括:
获取测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息;
将所述输入的路径信息、以及与所述输入的路径信息对应的测试心得信息存储到第三类数据库中;
所述根据所述获取的路径信息到预先构建的数据库中查找与所述路径信息匹配的回归测试范围参考信息,包括:
根据所述获取的路径信息到所述基于测试人员的测试经验所构建的第三类数据库查找与所述获取的路径信息匹配的路径信息;
将所述匹配的路径信息对应的测试心得信息作为回归测试范围参考信息。
可选的,在所述获取测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息之前,所述方法还包括:
提供第三web交互界面;
所述获取测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息包括:
获取测试人员通过所述第三web交互界面输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息。
可选的,所述数据库包括:
基于svn日志所构建的第一类数据库、基于Bugfree管理工具所构建的第二类数据库和基于测试人员的测试经验所构建的第三类数据库;
其中,所述基于svn日志所构建的第一类数据库中存储有svn日志中的Modified字段的内容以及与所述Modified字段对应的Message字段的内容;
所述基于Bugfree管理工具所构建的第二类数据库中存储有变更代码数据的路径信息,以及与所述变更代码数据的路径信息对应的所述变更代码数据的描述信息;
所述基于测试人员的测试经验所构建的第三类数据库中存储有测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息;
所述根据所述获取的路径信息到预先构建的数据库中查找与所述路径信息匹配的回归测试范围参考信息,包括:
根据所述获取的路径信息到所述基于svn日志所构建的第一类数据库查找与所述获取的路径信息匹配的Modified字段的内容;
将所述匹配的Modified字段的内容对应的Message字段的内容作为第一回归测试范围参考信息;
根据所述获取的路径信息到所述基于Bugfree管理工具所构建的第二类数据库查找与所述获取的路径信息匹配的路径信息;
将所述匹配的路径信息对应的描述信息作为第二回归测试范围参考信息;
根据所述获取的路径信息到所述基于测试人员的测试经验所构建的第三类数据库查找与所述获取的路径信息匹配的路径信息;
将所述匹配的路径信息对应的测试心得信息作为第三回归测试范围参考信息;
所述输出所述查找到的回归测试范围参考信息,以使测试人员根据所述回归测试范围参考信息确定回归测试范围,包括:
输出所述查找到的第一回归测试范围参考信息、第二回归测试范围参考信息、第三回归测试范围参考信息,以使测试人员根据所述第一回归测试范围参考信息、第二回归测试范围参考信息、第三回归测试范围参考信息确定回归测试范围。
可选的,所述变更代码数据的描述信息包括:
所述Bugfree管理工具中的bug简单描述、提交记录、bug所属功能模块名中的至少一种。
第二方面,本发明实施例提供了一种确定回归测试范围的装置,包括:
路径信息获取模块,用于获取待测试的变更代码数据的路径信息;
参考信息查找模块,用于根据所述获取的路径信息到预先构建的数据库中查找与所述获取的路径信息匹配的回归测试范围参考信息;
参考信息输出模块,用于输出所述查找到的回归测试范围参考信息,以使测试人员根据所述回归测试范围参考信息确定回归测试范围。
可选的,本发明实施例所提供的确定回归测试范围的装置还包括:
第一界面提供模块,用于在所述获取变更代码数据的路径信息之前,提供第一web交互界面;
相应的,所述路径信息获取模块,包括:
路径信息接收单元,用于接收测试人员通过所述第一web交互界面输入的变更代码数据的路径信息;
相应的,所述参考信息输出模块包括:
参考信息输出单元,用于在第二web交互界面上输出所述查找到的回归测试范围参考信息。
可选的,所述数据库包括基于svn日志所构建的第一类数据库,所述装置还包括:第一类数据库构建模块用于基于svn日志构建第一类数据库;
其中,所述第一类数据库构建模块包括:
第一获取单元,用于提取svn日志中的Modified字段的内容和与所述Modified字段对应的Message字段的内容,其中Modified字段的内容中包括变更代码数据的路径信息;
第一存储单元,用于将所述Modified字段的内容以及与所述Modified字段对应的Message字段的内容存储到第一类数据库;
相应的,所述参考信息查找模块包括:
第一查找单元,用于根据所述获取的路径信息到所述基于svn日志所构建的第一类数据库查找与所述获取的路径信息匹配的Modified字段的内容;
第一参考信息确定单元,用于将所述匹配的Modified字段的内容对应的Message字段的内容作为回归测试范围参考信息。
可选的,所述数据库包括基于Bugfree管理工具所构建的第二类数据库,所述装置还包括:第二类数据库构建模块用于基于Bugfree管理工具构建第二类数据库;
其中,所述第二类数据库构建模块包括:
第二获取单元,用于提取Bugfree管理工具中记录的变更代码数据的路径信息,以及与所述记录的路径信息对应的所述变更代码数据的描述信息;
第二存储单元,用于将所述记录的路径信息、以及与所述记录的路径信息对应的所述变更代码数据的描述信息存储到第二类数据库中;
相应的,所述参考信息查找模块包括:
第二查找单元,用于根据所述获取的路径信息到所述基于Bugfree管理工具所构建的第二类数据库查找与所述获取的路径信息匹配的路径信息;
第二参考信息确定单元,用于将所述匹配的路径信息对应的描述信息作为回归测试范围参考信息。
可选的,所述数据库包括基于测试人员的测试经验所构建的第三类数据库,所述装置还包括:第三类数据库构建模块用于基于测试人员的测试经验构建第三类数据库;
其中,所述第三类数据库构建模块包括:
第三获取单元,用于获取测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息;
第三存储单元,用于将所述输入的路径信息、以及与所述输入的路径信息对应的测试心得信息存储到第三类数据库中;
相应的,所述参考信息查找模块包括:
第三查找单元,用于根据所述获取的路径信息到所述基于测试人员的测试经验所构建的第三类数据库查找与所述获取的路径信息匹配的路径信息;
第三参考信息确定单元,用于将所述匹配的路径信息对应的测试心得信息作为回归测试范围参考信息。
可选的,所述装置还包括:
第三界面提供模块,用于在所述获取测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息之前,提供第三web交互界面;
相应的,所述第三获取单元包括:
第三获得子单元,用于获取测试人员通过所述第三web交互界面输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息。
可选的,所述数据库包括:基于svn日志所构建的第一类数据库、基于Bugfree管理工具所构建的第二类数据库和基于测试人员的测试经验所构建的第三类数据库;
其中,所述基于svn日志所构建的第一类数据库中存储有svn日志中的Modified字段的内容以及与所述Modified字段对应的Message字段的内容;
所述基于Bugfree管理工具所构建的第二类数据库中存储有变更代码数据的路径信息,以及与所述变更代码数据的路径信息对应的所述变更代码数据的描述信息;
所述基于测试人员的测试经验所构建的第三类数据库中存储有测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息;
相应的,所述参考信息查找模块包括:
第一类数据库匹配单元,用于根据所述获取的路径信息到所述基于svn日志所构建的第一类数据库查找与所述获取的路径信息匹配的Modified字段的内容;
第一回归测试范围参考信息确定单元,用于将所述匹配的Modified字段的内容对应的Message字段的内容作为第一回归测试范围参考信息;
第二类数据库匹配单元,用于根据所述获取的路径信息到所述基于Bugfree管理工具所构建的第二类数据库查找与所述获取的路径信息匹配的路径信息;
第二回归测试范围参考信息确定单元,用于将所述匹配的路径信息对应的描述信息作为第二回归测试范围参考信息;
第三类数据库匹配单元,用于根据所述获取的路径信息到所述基于测试人员的测试经验所构建的第三类数据库查找与所述获取的路径信息匹配的路径信息;
第三回归测试范围参考信息确定单元,用于将所述匹配的路径信息对应的测试心得信息作为第三回归测试范围参考信息;
相应的,所述参考信息输出模块包括:
综合参考信息输出单元,用于输出所述查找到的第一回归测试范围参考信息、第二回归测试范围参考信息、第三回归测试范围参考信息,以使测试人员根据所述第一回归测试范围参考信息、第二回归测试范围参考信息、第三回归测试范围参考信息确定回归测试范围。
可选的,所述变更代码数据的描述信息包括:
所述Bugfree管理工具中的bug简单描述、提交记录、bug所属功能模块名中的至少一种。
与现有技术相比,本方案中,预先构建记录有路径信息以及路径信息所对应的回归测试范围参考信息的数据库;而在确定回归测试范围时,根据获取的待测试的变更代码数据的路径信息到预先构建的数据库中查找与所述获取的路径信息匹配的回归测试范围参考信息,进而输出所述查找到的回归测试范围参考信息,以使测试人员根据所述回归测试范围参考信息确定回归测试范围。可见,通过利用本方案,避免了较多地依赖人工经验以及与开发人员的沟通,可以达到提高测试效率,降低人工成本,且提高测试稳定性的目的。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了达到提高测试效率,降低人工成本,且提高测试稳定性的目的,本发明实施例提供了一种确定回归测试范围的方法及装置。
下面首先对本发明实施例所提供的一种确定回归测试范围的方法进行介绍。
需要说明的是,本发明实施例所提供的确定回归测试范围的方法可以应用于电子设备。在实际应用中,该电子设备可以为笔记本电脑、台式电脑或服务器等,这都是合理的。
如图1所示,一种的方法,可以包括:
S101,获取待测试的变更代码数据的路径信息;
其中,当确定本次的变更代码数据的回归测试范围时,可以获取待测试的变更代码数据的路径信息,进而基于该路径信息进行后续的处理。
其中,待测试的变更代码数据为本次发生修改的代码数据。通常而言,开发人员对代码进行修改之后,会将修改后的代码数据放置在代码工程管理工具(如SVN代码版本管理工具)中进行管理,在本发明实施例中,作为一种可选方式,待测试的变更代码数据的路径信息为本次发生修改的代码数据在工程管理工具中的相对路径信息,举例而言,开发人员修改代码后,将记录修改代码的文件放置在某个代码工程管理工具中的以下路径下:
https://kdev/svn/browser/ksbrowser/trunk/src/extension/olc_8.swf,那么该记录修改代码的文件的相对路径为:trunk/src/extension/olc_8.swf。
在本发明实施例中,在需要确定回归测试范围时,测试人员可以人工输入该相对路径,本步骤中,通过接收测试人员输入的相对路径获取待测试的变更代码数据的路径信息。
需要强调的是,待测试的变更代码数据可以为某一个文件中的一部分代码数据,也可以为某一个文件的全部代码数据,本发明对此不作限定。
S102,根据所述获取的路径信息到预先构建的数据库中查找与所述获取的路径信息匹配的回归测试范围参考信息;
需要说明的是,在本发明实施例中,可以根据不同的数据来源,预先构建记录有路径信息以及路径信息所对应回归测试范围参考信息的数据库;进而在获取到待测试的变更代码数据的路径信息后,根据所述获取的路径信息到预先构建的数据库中查找与所述获取的路径信息匹配的回归测试范围参考信息。
具体的,所述数据库可以包括:基于svn日志所构建的第一类数据库、基于Bugfree管理工具所构建的第二类数据库和基于测试人员的测试经验所构建的第三类数据库中的至少一种,当然并不局限于此。并且,数据库所记录路径信息可以为:历史的变更代码数据的路径信息,和/或,待测试的变更代码数据的路径信息。
需要强调的是,回归测试范围参考信息是指对于测试人员确定回归测试参考范围具有提示和参考作用的信息,在各所述数据库中,回归测试范围参考信息包括分别与数据库中的路径信息关联存储的特定信息,举例而言,对于第一类数据库,回归测试范围参考信息包括与路径信息关联存储的,即与路径信息匹配的Message字段的内容;对于第二类数据库,回归测试范围参考信息包括与路径信息关联存储的,即与路径信息匹配的描述信息,如bug简单描述、提交记录、bug所属功能模块名中的至少一种;对于第三类数据库,回归测试范围参考信息包括与路径信息关联存储的,即与路径信息匹配的测试心得信息,如测试人员记录的变更代码数据导致哪些功能受到何种影响。
需要说明的是,不同类型的数据库的构建方式不同,且相应S102的具体实现过程不同;而为了清楚起见,关于不同类型的数据库的构建以及S102的具体实现过程将在后续内容进行详细介绍。
显然,本发明一个实施例中,预先构建的数据库可以是多个数据库,也可以是一个数据库,这个数据库可以是单独的数据库,也可以是有多个小数据库组合在一起形成的一个大数据库。
S103,输出所述查找到的回归测试范围参考信息,以使测试人员根据该回归测试范围参考信息确定回归测试范围。
在查找到待测试的变更代码数据的回归测试范围参考信息后,可以输出所述查找到的回归测试范围参考信息,以使测试人员根据该回归测试范围参考信息确定回归测试范围。
其中,所谓根据回归测试范围参考信息确定回归测试范围具体可以为:直接将回归测试范围参考信息确定为待测试的变更代码数据的回归测试范围,或者,提取回归测试范围参考信息的部分内容作为待测试的变更代码数据的回归测试范围,当然,也可以将整理分析该回归测试范围参考信息所得到的结果确定为待测试的变更代码数据的回归测试范围,这都是合理的。
可以理解的是,当待测试的变更代码数据的路径信息在数据库中未匹配成功时,可以输出未检测到回归测试范围参考信息的提示信息。
需要说明的是,上述的“第一类数据库”中的“第一”、“第二类数据库”中的“第二”以及“第三类数据库”中的“第三”仅仅为了区分不同类型的数据库,并不具有任何限定作用。
与现有技术相比,本方案中,预先构建记录有路径信息以及路径信息所对应的回归测试范围参考信息的数据库;而在确定回归测试范围时,根据获取的待测试的变更代码数据的路径信息到预先构建的数据库中查找与所述获取的路径信息匹配的回归测试范围参考信息,进而输出所述查找到的回归测试范围参考信息,以使测试人员根据所述回归测试范围参考信息确定回归测试范围。可见,通过利用本方案,避免了较多地依赖人工经验以及与开发人员的沟通,可以达到提高测试效率,降低人工成本,且提高测试稳定性的目的。
更进一步的,在所述S101获取变更代码数据的路径信息之前,所述方法还可以包括:提供第一web交互界面,以使得测试人员可以通过第一web交互界面输入变更代码数据的路径信息。相应的,所述获取变更代码数据的路径信息,可以包括:接收测试人员通过该第一web交互界面输入的变更代码数据的路径信息;所述输出所述查找到的回归测试范围参考信息,可以包括:在第二web交互界面上输出所述查找到的回归测试范围参考信息。
可见,通过web交互界面的展示,也即通过web界面提供输入入口,使得接收到测试人员通过输入入口输入的变更代码数据的路径信息后,直接到预先构建的数据库中查找回归测试范围参考信息,使得整个流程web化,简化操作流程,从而进一步提高用户的使用体验。
可以理解的是,上述所列举出的指示用户输入的方式以及输出回归测试范围参考信息的方式仅仅作为示例,并不应该构成对本发明实施例的限定。并且,上述的“第一web交互界面”中的“第一”、“第二web交互界面”中的“第二”以及后续的“第三web交互界面”中的“第三”仅仅为了区分不同的交互界面,并不具有任何限定作用。
为了清楚起见,下面介绍所列举的各类数据库的构建方式以及S102的具体实现过程。
(1)基于svn日志所构建的第一类数据库的构建方式:
本领域技术人员可以理解的是,svn(subversion)是近年来崛起的版本管理工具,现如今绝大多数开源软件都使用svn作为代码版本管理软件,其中,开发人员开发出新的软件安装包或者进行变更代码后,可以将开发的软件安装包或者变更的代码提交于svn管理,而svn每天定时运行,并会产生svn日志,以记录该工程项目所对应各个版本的软件安装包的修改、安装或运行状态。其中,单条svn日志会类似如下格式:
Revision:40652
Author:wangfan
Date:2013年12月10日17:57:42
Message:新增升级预读版本的逻辑
Modified:trunk/src_import/module/browser/extension/uplive_server.cc
其中,Modified字段的内容为变更代码数据的路径信息;而Message为变更代码数据对软件功能所造成的影响。
基于关于上述svn日志的简介,具体的,所述基于svn日志所构建的第一类数据库的构建方式可以包括:
提取svn日志中的Modified字段的内容和与Modified字段对应的Message字段的内容,其中Modified字段的内容中包括变更代码数据的路径信息;
将Modified字段的内容以及与Modified字段对应的Message字段的内容存储到第一类数据库。
基于该第一类数据库,相应的,根据所述获取的路径信息到预先构建的数据库中查找与该路径信息匹配的回归测试范围参考信息,可以包括:
根据所述获取的路径信息到基于svn日志所构建的第一类数据库查找与所述获取的路径信息匹配的Modified字段的内容;
将所述匹配的Modified字段的内容对应的Message字段的内容作为回归测试范围参考信息。
本领域技术人员可以理解的是,在本发明的一个实施例中,可以直接将现有技术中的SVN版本管理工具的数据库直接作为第一类数据库,而不需要从SVN版本管理工具的数据库提取信息而构建第一类数据库。即可以理解为,现有技术中构建SVN版本管理工具的数据库即相当于本发明实施例中的构建第一类数据库。而从SVN版本管理工具的数据库获取回归测试范围参考信息的方式和前述的通过提取信息构建第一类数据库获取回归测试范围参考信息的方式相同,这里不再赘述。
(2)基于Bugfree管理工具所构建的第二类数据库的构建方式:
本领域技术人员可以理解的是,Bugfree管理工具可以记录每一个bug的相关信息,例如:bug所对应变更代码数据的路径信息(即代码源文件路径)、bug简单描述、提交记录、bug所属功能模块名等。
基于上述关于Bugfree管理工具的简介,具体的,所述基于Bugfree管理工具所构建的第二类数据库的构建方式,可以包括:
提取Bugfree管理工具中记录的变更代码数据的路径信息,以及与所述记录的路径信息对应的该变更代码数据的描述信息;
将所述记录的路径信息、以及与所述记录的路径信息对应的所述变更代码数据的描述信息存储到第二类数据库中。
基于第二类数据库,相应的,所述根据所述获取的路径信息到预先构建的数据库中查找与所述路径信息匹配的回归测试范围参考信息,可以包括:
根据所述获取的路径信息到所述基于Bugfree管理工具所构建的第二类数据库查找与所述获取的路径信息匹配的路径信息;
将所述匹配的路径信息对应的描述信息作为回归测试范围参考信息。
其中,变更代码数据的描述信息可以为:所述Bugfree管理工具中的bug简单描述;当然,也可以包括:Bugfree管理工具中的bug简单描述、提交记录、bug所属功能模块名中的至少一种。
与第一类数据库类似,本领域技术人员可以理解的是,在本发明的一个实施例中,可以直接将现有技术中的Bugfree管理工具的数据库直接作为第二类数据库,而不需要从Bugfree管理工具的数据库提取信息而构建第二类数据库。即可以理解为,现有技术中构建Bugfree管理工具的数据库即相当于本发明实施例中的构建第二类数据库。而从Bugfree管理工具的数据库获取回归测试范围参考信息的方式和前述的通过提取信息构建第二类数据库获取回归测试范围参考信息的方式相同,这里不再赘述。
可以理解的是,Bugfree管理工具和SVN版本管理工具中均存储有路径信息,因此,可以通过路径信息将两者关联起来,即通过相同的路径信息,可以分别从Bugfree管理工具和SVN版本管理工具中提取到与该相同的路径信息关联的信息。
在将SVN版本管理工具直接作为第一类数据库和将Bugfree管理工具直接作为第二类数据库的情况下,可以将Bugfree管理工具与SVN版本管理工具关联运行,举例而言,可以通过后台常驻进程每天定时运行,通过代码工程管理工具的相对路径将Bugfree管理工具与SVN版本管理工具关联起来,因此,可以通过路径信息,分别从两个数据库中获取到回归测试范围参考信息。
(3)基于测试人员的测试经验所构建的第三类数据库的构建方式:
具体的,所述基于测试人员的测试经验所构建的第三类数据库的构建方式可以包括:
获取测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息;
将所述输入的路径信息、以及与所述输入的路径信息对应的测试心得信息存储到第三类数据库中。
基于第三类数据库,相应的,所述根据所述获取的路径信息到预先构建的数据库中查找与所述路径信息匹配的回归测试范围参考信息,可以包括:
根据所述获取的路径信息到所述基于测试人员的测试经验所构建的第三类数据库查找与所述获取的路径信息匹配的路径信息;
将所述匹配的路径信息对应的测试心得信息作为回归测试范围参考信息。
其中,所输入的测试经验可以例如:
变更代码数据的路径信息:
src_import/module/browser/extension/uplive_server.cc
变更代码数据的测试心得为:弹窗升级的主实现逻辑。
更进一步的,在构建第三类数据库的过程中,在所述获取测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息之前,所述方法还可以包括:
提供第三web交互界面;
相应的,所述获取测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息可以包括:
获取测试人员通过所述第三web交互界面输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息。
可以理解的是,第一web界面和第三web界面可以是一个界面上设置不同的入口,也可以是不同的界面。
需要说明的是,数据库可以仅仅包括上述的第一类数据库、第二类数据库和第三类数据库中的一种。而在实际应用中,为了提高准确性,所述数据库可以包括:基于svn日志所构建的第一类数据库、基于Bugfree管理工具所构建的第二类数据库和基于测试人员的测试经验所构建的第三类数据库。由于这三类数据库中均存储有路径信息,因此,可以通过路径信息将三个数据库关联起来,在获取到路径信息后,可分别从三个数据库中获取到回归测试范围参考信息。
其中,所述基于svn日志所构建的第一类数据库中存储有svn日志中的Modified字段的内容以及与所述Modified字段对应的Message字段的内容;
所述基于Bugfree管理工具所构建的第二类数据库中存储有变更代码数据的路径信息,以及与所述变更代码数据的路径信息对应的所述变更代码数据的描述信息;
所述基于测试人员的测试经验所构建的第三类数据库中存储有测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息;
相应的,所述根据所述获取的路径信息到预先构建的数据库中查找与所述路径信息匹配的回归测试范围参考信息,可以包括:
根据所述获取的路径信息到所述基于svn日志所构建的第一类数据库查找与所述获取的路径信息匹配的Modified字段的内容;
将所述匹配的Modified字段的内容对应的Message字段的内容作为第一回归测试范围参考信息;
根据所述获取的路径信息到所述基于Bugfree管理工具所构建的第二类数据库查找与所述获取的路径信息匹配的路径信息;
将所述匹配的路径信息对应的描述信息作为第二回归测试范围参考信息;
根据所述获取的路径信息到所述基于测试人员的测试经验所构建的第三类数据库查找与所述获取的路径信息匹配的路径信息;
将所述匹配的路径信息对应的测试心得信息作为第三回归测试范围参考信息;
相应的,所述输出所述查找到的回归测试范围参考信息,以使测试人员根据所述回归测试范围参考信息确定回归测试范围,可以包括:
输出所述查找到的第一回归测试范围参考信息、第二回归测试范围参考信息、第三回归测试范围参考信息,以使测试人员根据所述第一回归测试范围参考信息、第二回归测试范围参考信息、第三回归测试范围参考信息确定回归测试范围。
需要说明的是,上述的数据库所包括的第一类数据库、第二类数据库以及第三类数据的具体构建方式可以参照上述单独介绍每一类型的数据库时所给出的构建方式,在此不作赘述。
并且,在实际应用中,所述数据库也可以为:第一类数据库、第二类数据库和第三类数据库中的任意两类数据的组合,这也是合理的;并且,上述所给出的数据库的具体类型仅仅作为示例,并不应该构成对本发明实施例的限定。
相应于上述方法实施例,本发明实施例还提供了一种确定回归测试范围的装置,如图2所示,所述装置可以包括:
路径信息获取模块210,用于获取待测试的变更代码数据的路径信息;
参考信息查找模块220,用于根据所述获取的路径信息到预先构建的数据库中查找与所述获取的路径信息匹配的回归测试范围参考信息;
参考信息输出模块230,用于输出所述查找到的回归测试范围参考信息,以使测试人员根据所述回归测试范围参考信息确定回归测试范围。
与现有技术相比,本方案中,预先构建记录有路径信息以及路径信息所对应的回归测试范围参考信息的数据库;而在确定回归测试范围时,根据获取的待测试的变更代码数据的路径信息到预先构建的数据库中查找与所述获取的路径信息匹配的回归测试范围参考信息,进而输出所述查找到的回归测试范围参考信息,以使测试人员根据所述回归测试范围参考信息确定回归测试范围。可见,通过利用本方案,避免了较多地依赖人工经验以及与开发人员的沟通,可以达到提高测试效率,降低人工成本,且提高测试稳定性的目的。
更进一步的,本发明实施例所提供的确定回归测试范围的装置还可以包括:
第一界面提供模块,用于在所述获取变更代码数据的路径信息之前,提供第一web交互界面;
所述路径信息获取模块210,可以包括:
路径信息接收单元,用于接收测试人员通过所述第一web交互界面输入的变更代码数据的路径信息;
相应的,所述参考信息输出模块230,可以包括:
参考信息输出单元,用于在第二web交互界面上输出所述查找到的回归测试范围参考信息。
具体的,所述数据库包括基于svn日志所构建的第一类数据库,所述装置还可以包括:第一类数据库构建模块用于基于svn日志构建第一类数据库;
其中,所述第一类数据库构建模块包括:
第一获取单元,用于提取svn日志中的Modified字段的内容和与所述Modified字段对应的Message字段的内容,其中Modified字段的内容中包括变更代码数据的路径信息;
第一存储单元,用于将所述Modified字段的内容以及与所述Modified字段对应的Message字段的内容存储到第一类数据库;
相应的,所述参考信息查找模块220,可以包括:
第一查找单元,用于根据所述获取的路径信息到所述基于svn日志所构建的第一类数据库查找与所述获取的路径信息匹配的Modified字段的内容;
第一参考信息确定单元,用于将所述匹配的Modified字段的内容对应的Message字段的内容作为回归测试范围参考信息。
具体的,所述数据库包括基于Bugfree管理工具所构建的第二类数据库,所述装置还可以包括:第二类数据库构建模块用于基于Bugfree管理工具构建第二类数据库;
其中,所述第二类数据库构建模块,可以包括:
第二获取单元,用于提取Bugfree管理工具中记录的变更代码数据的路径信息,以及与所述记录的路径信息对应的所述变更代码数据的描述信息;
第二存储单元,用于将所述记录的路径信息、以及与所述记录的路径信息对应的所述变更代码数据的描述信息存储到第二类数据库中;
相应的,所述参考信息查找模块220,可以包括:
第二查找单元,用于根据所述获取的路径信息到所述基于Bugfree管理工具所构建的第二类数据库查找与所述获取的路径信息匹配的路径信息;
第二参考信息确定单元,用于将所述匹配的路径信息对应的描述信息作为回归测试范围参考信息。
具体的,所述数据库包括基于测试人员的测试经验所构建的第三类数据库,所述装置还可以包括:第三类数据库构建模块用于基于测试人员的测试经验构建第三类数据库;
其中,所述第三类数据库构建模块,可以包括:
第三获取单元,用于获取测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息;
第三存储单元,用于将所述输入的路径信息、以及与所述输入的路径信息对应的测试心得信息存储到第三类数据库中;
相应的,所述参考信息查找模块220,可以包括:
第三查找单元,用于根据所述获取的路径信息到所述基于测试人员的测试经验所构建的第三类数据库查找与所述获取的路径信息匹配的路径信息;
第三参考信息确定单元,用于将所述匹配的路径信息对应的测试心得信息作为回归测试范围参考信息。
更进一步的,所述装置还包括:
第三界面提供模块,用于在所述获取测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息之前,提供第三web交互界面;
相应的,所述第三获取单元,可以包括:
第三获得子单元,用于获取测试人员通过所述第三web交互界面输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息。
更进一步的,所述数据库可以包括:基于svn日志所构建的第一类数据库、基于Bugfree管理工具所构建的第二类数据库和基于测试人员的测试经验所构建的第三类数据库;
所述装置还可以包括:综合数据库构建模块;
其中,所述综合数据库构建模块,用于构建基于svn日志所构建的第一类数据库、基于Bugfree管理工具所构建的第二类数据库和基于测试人员的测试经验所构建的第三类数据库;
其中,所述基于svn日志所构建的第一类数据库中存储有svn日志中的Modified字段的内容以及与所述Modified字段对应的Message字段的内容;
所述基于Bugfree管理工具所构建的第二类数据库中存储有变更代码数据的路径信息,以及与所述变更代码数据的路径信息对应的所述变更代码数据的描述信息;
所述基于测试人员的测试经验所构建的第三类数据库中存储有测试人员输入的变更代码数据的路径信息以及与所述输入的路径信息对应的测试心得信息;
相应的,所述参考信息查找模块220,可以包括:
第一类数据库匹配单元,用于根据所述获取的路径信息到所述基于svn日志所构建的第一类数据库查找与所述获取的路径信息匹配的Modified字段的内容;
第一回归测试范围参考信息确定单元,用于将所述匹配的Modified字段的内容对应的Message字段的内容作为第一回归测试范围参考信息;
第二类数据库匹配单元,用于根据所述获取的路径信息到所述基于Bugfree管理工具所构建的第二类数据库查找与所述获取的路径信息匹配的路径信息;
第二回归测试范围参考信息确定单元,用于将所述匹配的路径信息对应的描述信息作为第二回归测试范围参考信息;
第三类数据库匹配单元,用于根据所述获取的路径信息到所述基于测试人员的测试经验所构建的第三类数据库查找与所述获取的路径信息匹配的路径信息;
第三回归测试范围参考信息确定单元,用于将所述匹配的路径信息对应的测试心得信息作为第三回归测试范围参考信息;
相应的,所述参考信息输出模块230,可以包括:
综合参考信息输出单元,用于输出所述查找到的第一回归测试范围参考信息、第二回归测试范围参考信息、第三回归测试范围参考信息,以使测试人员根据所述第一回归测试范围参考信息、第二回归测试范围参考信息、第三回归测试范围参考信息确定回归测试范围。
具体的,所述变更代码数据的描述信息可以包括:
所述Bugfree管理工具中的bug简单描述、提交记录、bug所属功能模块名中的至少一种。
对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。