一种针对搜索引擎的回归测试方法和装置制造方法

文档序号:6488173阅读:180来源:国知局
一种针对搜索引擎的回归测试方法和装置制造方法
【专利摘要】本发明提供了一种针对搜索引擎的回归测试方法和装置,其中,方法包括:在被测模块中针对需升级的策略,分别向该模块升级前版本中的该些策略和该模块升级后版本中的该些策略植入可测性代码,所述可测性代码可获得并输出其所在策略的计算结果;在测试过程中,运行所述被测模块的升级前版本和升级后版本,并对运行得到的升级前版本中所述可测性代码的输出结果以及升级后版本中所述可测性代码的输出结果进行差异化(diff)分析。本发明能够在对搜索引擎的数据模块进行回归测试时有效降低diff分析的难度,提高整体的测试效率。
【专利说明】一种针对搜索引擎的回归测试方法和装置
【【技术领域】】
[0001]本发明涉及系统测试技术,特别涉及一种针对搜索引擎的回归测试方法和装置。【【背景技术】】
[0002]在对搜索引擎的数据分析模块进行升级后,需要对升级后的模块进行回归测试,以确认升级的效果并保证升级没有引入新的错误。现有的方法通常是按模块级来进行diff(差异化)分析,即将测试得到的升级后的模块的整体输出结果与原有的升级前的模块的整体输出结果进行diff分析,通过diff分析来判断测试结果。
[0003]然而搜索引擎的数据分析模块内容复杂,内部代码量极大,输出内容繁多,对模块的整体输出结果进行diff分析难度较大。而对数据分析模块的升级往往只是对模块内部的若干个策略进行升级,在这种情况下用现有的模块级diff分析法效率低下,制约了整体的测试效率。

【发明内容】

[0004]有鉴于此,本发明提供了一种针对搜索引擎的回归测试方法和装置,本发明能够在对搜索引擎的数据模块进行回归测试时有效降低diff分析的难度,提高整体的测试效率。
[0005]具体技术方案如下:
[0006]一种针对搜索引擎的回归测试方法,其特征在于,在被测模块中针对需升级的策略,分别向该模块升级前版本中的所述策略`和该模块升级后版本中的所述策略植入可测性代码,所述可测性代码可获得并输出其所在策略的计算结果;
[0007]在测试过程中,运行所述被测模块的升级前版本和升级后版本,并对运行得到的升级前版本中所述可测性代码的输出结果以及升级后版本中所述可测性代码的输出结果进行差异化diff分析。
[0008]根据本发明一优选实施例,所述植入可测性代码,具体包括:
[0009]将可测性代码作为一个文件添加到所述需升级的策略代码文件所在目录下。
[0010]根据本发明一优选实施例,所述可测性代码可获得其所在策略的计算结果具体为:
[0011]所述可测性代码运行时,根据其所在策略的策略名到对应的公共存储区中获取其所在策略的计算结果。
[0012]根据本发明一优选实施例,该方法还包括:
[0013]通过编译宏的方式控制在线下测试时可测性代码被编译,在线上运行时可测性代码不被编译。
[0014]根据本发明一优选实施例,所述可测性代码按预先设定的格式在将其所在策略的计算结果输出,其中所述计算结果以策略名为索引。
[0015]一种针对搜索引擎的回归测试装置,该装置包括:[0016]植入单元,用于在被测模块中针对需升级的策略,分别向该模块升级前版本中的所述策略和该模块升级后版本中的所述策略植入可测性代码,所述可测性代码可获得并输出其所在策略的计算结果;
[0017]运行单元,用于在测试过程中,运行所述被测模块的升级前版本和升级后版本,得到升级前版本中所述可测性代码的输出结果以及升级后版本中所述可测性代码的输出结果;
[0018]比对单元,用于对运行得到的升级前版本中所述可测性代码的输出结果以及升级后版本中所述可测性代码的输出结果进行差异化diff分析。
[0019]根据本发明一优选实施例,所述植入单元在植入可测性代码时,具体执行:
[0020]将可测性代码作为一个文件添加到所述需升级的策略代码文件所在目录下。
[0021]根据本发明一优选实施例,所述可测性代码可获得其所在策略的计算结果具体为:
[0022]所述可测性代码运行时,根据其所在策略的策略名到对应的公共存储区中获取其所在策略的计算结果。
[0023]根据本发明一优选实施例,运行单元还用于:
[0024]通过编译宏的方式控制在线下测试时可测性代码被编译,在线上运行时可测性代码不被编译。
[0025]根据本发明一优 选实施例,所述可测性代码按预先设定的格式在将其所在策略的计算结果输出,其中所述计算结果以策略名为索引。
[0026]由以上技术方案可以看出,本发明通过植入可测性代码直接获得待测模块中升级所涉及策略的计算结果,将现有技术的模块级diff分析降低至策略级,有效的降低了 diff分析的难度,提高了整体的测试效率。
【【专利附图】

【附图说明】】
[0027]图1为本发明实施例一提供的针对搜索引擎的回归测试方法流程图;
[0028]图2为发发明实施例二提供的针对搜索引擎的回归测试装置示意图。
【【具体实施方式】】
[0029]为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
[0030]实施例一
[0031]图1为本发明实施例一提供的针对搜索引擎的回归测试方法流程图,如图1所示,该方法包括:
[0032]步骤S101、在被测模块中针对需升级的策略,分别向该模块升级前版本中的该些策略和该模块升级后版本中的该些策略植入可测性代码,所述可测性代码可获得并输出其所在策略的计算结果。
[0033]搜索引擎的数据分析模块在升级时,往往只是对模块中的若干个策略进行升级,而本发明正是利用直接获取这若干个策略的计算结果来进行diff分析,使得diff分析由现有技术的模块级细化至策略级,降低了 diff分析的难度。[0034]针对所要测试模块中的每一个需进行升级的策略,分别向该模块升级后版本中的该些策略和该模块升级前版本中的该些策略植入可测性代码,所添加的可测性代码可以获得其所在策略的计算结果,并将该计算结果输出。
[0035]在运行数据分析模块时,模块中的每个策略会将自己的计算结果放入该模块的一个公共存储区中,以供别的策略来调用进行进一步的计算,在放入公共存储区中时,策略的计算结果会和策略名所对应。在向策略植入可测性代码后,运行该模块时,被植入的可测性代码会根据其所在策略名在公共存储区中寻找对应的计算结果,并将获得的计算结果输出。
[0036]为了便于维护,本发明提供一种优选实施方式来向策略植入可测性代码:
[0037]将可测性代码单独作为一个文件添加至策略代码所在目录下,与策略中原有的代码形成文件上的隔离。例如在C++语言环境中,可将可测性代码单独作为一个cpp”文件添加至策略代码所在目录下。
[0038]为了便于对输出的结果进行diff分析,可以控制可测性代码在输出计算结果时按照预先设定的格式来输出。输出格式可根据需要灵活设定,表1为本发明提供的一种优选实施方式,如表1所示,可将可测性代码所在的策略名作为索引,将计算结果以一定输出信息格式作为内容来形成表格输出。
[0039]表1
【权利要求】
1.一种针对搜索引擎的回归测试方法,其特征在于,在被测模块中针对需升级的策略,分别向该模块升级前版本中的所述策略和该模块升级后版本中的所述策略植入可测性代码,所述可测性代码可获得并输出其所在策略的计算结果; 在测试过程中,运行所述被测模块的升级前版本和升级后版本,并对运行得到的升级前版本中所述可测性代码的输出结果以及升级后版本中所述可测性代码的输出结果进行差异化diff分析。
2.根据权利要求1所述的方法,其特征在于,所述植入可测性代码,具体包括: 将可测性代码作为一个文件添加到所述需升级的策略代码文件所在目录下。
3.根据权利要求1所述的方法,其特征在于,所述可测性代码可获得其所在策略的计算结果具体为: 所述可测性代码运行时,根据其所在策略的策略名到对应的公共存储区中获取其所在策略的计算结果。
4.根据权利要求1所述的方法,其特征在于,该方法还包括: 通过编译宏的方式控制在线下测试时可测性代码被编译,在线上运行时可测性代码不被编译。
5.根据权利要求1所述的方法,其特征在于,所述可测性代码按预先设定的格式在将其所在策略的计算结果输出,其中所述计算结果以策略名为索引。
6.一种针对搜索引擎的回归测试装置,其特征在于,该装置包括: 植入单元,用于在被测模块中针对需升级的策略,分别向该模块升级前版本中的所述策略和该模块升级后版本中的所述策略植入可测性代码,所述可测性代码可获得并输出其所在策略的计算结果; 运行单元,用于在测试过程中,运行所述被测模块的升级前版本和升级后版本,得到升级前版本中所述可测性代码的输出结果以及升级后版本中所述可测性代码的输出结果; 比对单元,用于对运行得到的升级前版本中所述可测性代码的输出结果以及升级后版本中所述可测性代码的输出结果进行差异化diff分析。
7.根据权利要求6所述的装置,其特征在于,所述植入单元在植入可测性代码时,具体执行: 将可测性代码作为一个文件添加到所述需升级的策略代码文件所在目录下。
8.根据权利要求6所述的装置,其特征在于,所述可测性代码运行时,根据其所在策略的策略名到对应的公共存储区中获取其所在策略的计算结果。
9.根据权利要求6所述的装置,其特征在于,运行单元还用于: 通过编译宏的方式控制在线下测试时可测性代码被编译,在线上运行时可测性代码不被编译。
10.根据权利要求6所述的装置,其特征在于,所述可测性代码按预先设定的格式在将其所在策略的计算结果输出,其中所述计算结果以策略名为索引。
【文档编号】G06F11/36GK103631705SQ201210306702
【公开日】2014年3月12日 申请日期:2012年8月24日 优先权日:2012年8月24日
【发明者】丁文超, 张向辉 申请人:百度在线网络技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1