专利名称:搜索引擎的测试用例筛选、相关性策略测试方法和装置的制作方法
技术领域:
本发明涉及计算机技术领域,尤其涉及一种搜索引擎的测试用例筛选方法和装置以及搜索引擎的相关性策略测试方法和装置。
背景技术:
随着搜索引擎的不断发展,搜索引擎中相关性策略改进的重心更多的从基础检索后移至在线特征统计与计算,同时搜索引擎的国际化改造更强调在线执行时动态选择策略的机制,使得相关性策略测试复杂度大大增加。
目前搜索引擎的相关性策略测试方法主要有三种:第一种测试方法是利用模块内部调试日志方法,用于策略功能的验证、bug追查分析、自动化用例的输出结果预期;第二种测试方法 是利用路径分支覆盖方法,针对所有的代码分支,统计代码的覆盖率情况,根据代码覆盖率变化以判断相关性策略的耦合影响;第三种测试方法是利用新旧结果对比测试方法,取同一份万级数据量的随机请求,对比新旧模块版本的运行结果,通过对比新旧结果的不同以验证升级策略的相关性效果是否符合预期。
目前存在的问题是:第一种测试方法调试日志量庞大,杂乱无序,不易筛选出有用信息,无法得到模块的策略执行路径,不能快速把问题定位在代码策略、分支级别,不灵活,且维护成本大;第二种测试方法针对所有的代码分支,路径数目达到天文数字,虽然可从代码整体上查看覆盖率多少,但分支重要性无法区分;第三种测试方法盲目,依赖于随机请求的策略覆盖率情况,容易遗漏策略耦合影响问题。发明内容
本发明旨在至少解决上述技术问题之一。
为此,本发明的第一个目的在于提出一种搜索引擎的测试用例筛选方法。该方法可快速筛选所命中的策略或策略分支,节省了数据准备的时间,并且通过筛选获取测试用例与架构改造、策略升级、接口调整无关,降低了维护成本。
本发明的第二个目的在于提出一种搜索引擎的相关性策略测试方法。
本发明的第三个目的在于提出一种搜索引擎的测试用例筛选装置。
本发明的第四个目的在于提出一种搜索引擎的相关性策略测试装置。
为了实现上述目的,本发明第一方面实施例的搜索引擎的测试用例筛选方法包括以下步骤:搜索引擎服务器接收多个测试用例和筛选信息;所述搜索引擎服务器分别执行所述多个测试用例,并获取执行所述多个测试用例时所命中的策略的策略标识信息;以及所述搜索引擎服务器根据所述筛选信息和所述策略标识信息对所述多个测试用例进行筛选。
根据本发明实施例的搜索引擎的测试用例筛选方法,搜索引擎服务器根据筛选信息和策略标识信息对多个测试用例进行筛选,可快速筛选所命中的策略或策略分支,节省了数据准备的时间,并且通过筛选获取测试用例输入数据,并且通过筛选获取测试用例与架构改造、策略升级、接口调整无关,降低了维护成本。
为了实现上述目的,本发明第二方面实施例的搜索引擎的相关性策略测试方法包括以下步骤:测试服务器获取根据本发明第一方面实施例的搜索引擎的测试用例筛选方法筛选后的多个测试用例和预设策略条件;所述测试服务器针对所述预设策略条件对所述多个测试用例进行筛选,以获得与所述预设策略条件相关的测试用例集合,其中,所述预设策略条件包括至少一个策略;以及所述测试服务器根据所述测试用例集合针对所述至少一个策略进行相关性策略的测试。
根据本发明实施例的搜索引擎的相关性策略测试方法,测试服务器针对预设策略条件对多个测试用例进行筛选,以获得与预设策略条件相关的测试用例集合,并根据测试用例集合针对至少一个策略进行相关性策略的测试,实现了快速将问题定位在策略、分支级别,方便问题的追查分析。
为了实现上述目的,本发明第三方面实施例的搜索引擎的测试用例筛选装置,包括:第一接收模块,用于接收多个测试用例和筛选信息;执行模块,用于分别执行所述多个测试用例;第二获取模块,用于获取执行所述多个测试用例时所命中的策略的策略标识信息;以及筛选模块,用于根据所述筛选信息和所述策略标识信息对所述多个测试用例进行筛选。
根据本发明实施例的搜索引擎的测试用例筛选装置,第一接收模块可接收多个测试用例和筛选信息,第二获取模块通过测试探针获取在执行模块执行多个测试用例时所命中的策略的策略标识信息,筛选模块根据筛选信息和策略标识信息对多个测试用例进行筛选,可快速筛选所命中的策略或策略分支,节省了数据准备的时间,并且通过筛选获取测试用例输入数据,并且通过筛选获取测试用例与架构改造、策略升级、接口调整无关,降低了维护成本。
为了实现上述目的,本发明第四方面实施例的搜索引擎的相关性策略测试装置,包括:获取模块,用于获取根据本发明第三方面实施例的搜索引擎的测试用例筛选装置筛选后的多个测试用例和 预设策略条件;筛选模块,用于针对所述预设策略条件对所述多个测试用例进行筛选,以获得与所述预设策略条件相关的测试用例集合,其中,所述预设策略条件包括至少一个策略;以及测试模块,用于根据所述测试用例集合针对所述至少一个策略进行相关性策略的测试。
根据本发明实施例的搜索引擎的相关性策略测试装置,测试服务器针对预设策略条件对多个测试用例进行筛选,以获得与预设策略条件相关的测试用例集合,并根据测试用例集合针对至少一个策略进行相关性策略的测试,实现了快速将问题定位在策略、分支级别,方便问题的追查分析。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,
图1是根据本发明一个实施例的搜索引擎的测试用例筛选方法的流程图2是根据本发明另一个实施例的搜索引擎的测试用例筛选方法的流程图3是根据本发明一个实施例的搜索引擎的相关性策略测试方法的流程图4是根据本发明一个实施例的搜索引擎的测试用例筛选装置的结构框图5是根据本发明另一个实施例的搜索引擎的测试用例筛选装置的结构框图6是根据本发明又一个实施例的搜索引擎的测试用例筛选装置的结构框图7是根据本发明再一个实施例的搜索引擎的测试用例筛选装置的结构框图8是根据本发明一个实施例的搜索引擎的相关性策略测试装置的结构框图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
下面参考附图描述根据本发明实施例的搜索引擎的测试用例筛选方法和装置、搜索引擎的相关性策略测试方法和装置。
目前搜索引擎的相关性策略测试方法主要有三种:第一种测试方法是利用模块内部调试日志方法, 该方法调试日志量庞大,杂乱无序,不易筛选出有用信息,无法得到模块的策略执行路径,不能快速把问题定位在代码策略、分支级别,不灵活,且维护成本大;第二种测试方法是利用路径分支覆盖方法,该方法针对所有的代码分支,路径数目达到天文数字,虽然可从代码整体上查看覆盖率多少,但分支重要性无法区分;第三种测试方法是利用新旧结果对比测试方法,该方法盲目,依赖于随机请求的策略覆盖率情况,容易遗漏策略耦合影响问题。
为此,本发明提出一种搜索引擎的测试用例筛选方法,包括以下步骤:搜索引擎服务器接收多个测试用例和筛选信息;搜索引擎服务器分别执行多个测试用例,并获取执行多个测试用例时所命中的策略的策略标识信息;以及搜索引擎服务器根据筛选信息和策略标识信息对多个测试用例进行筛选。
图1是根据本发明一个实施例的搜索引擎的测试用例筛选方法的流程图。
如图1所示,搜索引擎的测试用例筛选方法包括以下步骤。
S101,搜索引擎服务器接收多个测试用例和筛选信息。
其中,测试用例可包括查询命令Query请求等,筛选信息可包括标识码、命令码和条件数据等中的一种或多种。
在本发明的一个实施例中,标识码可包括策略标识、分支标识和条件标识等中的一种或多种。具体地,策略标识(Sid),标识相关性策略的最终生效位置,query处理流程经过了策略标识,就表明该相关性策略已经生效;分支标识(Bid),一个相关性策略一般包含多个重要的大分支,分支从属于策略,分支标识是为了补充策略标识粗粒度的缺点,用更细的分支粒度来标识策略的正确执行;条件标识(Cid),满足一定筛选条件的标识,例如:筛选前3条搜索结果同时命中了指定的多种策略,前3就是条件数据,对其的标识为条件标识。
在本发明的一个实施例中,命令码可包括筛选、无条件保存、停止筛选、停止保存和查询等中的一种或多种。具体地,筛选:有筛选条件的筛选,输入包括标识码、命令码、条件标识,可支持输入多个标识码;无条件保存:无条件的保存,不筛选,直接输出采集的数据;停止筛选或保存:停止筛选或保存的命令;查询:查看筛选工作状态信息的命令。
S102,搜索引擎服务器分别执行多个测试用例,并获取执行多个测试用例时所命中的策略的策略标识信息。
在本发明的一个实施例中,在搜索引擎服务器中植入测试探针,其中,测试探针用于在搜索引擎服务器分别执行多个测试用例 时,获取所命中的策略的策略标识信息。
S103,搜索引擎服务器根据筛选信息和策略标识信息对多个测试用例进行筛选。
具体地,搜索引擎服务器根据筛选信息和策略标识信息对多个测试用例进行判断,并根据判断结果对对应的多个测试用例进行筛选。
根据本发明实施例的搜索引擎的测试用例筛选方法,搜索引擎服务器根据筛选信息和策略标识信息对多个测试用例进行筛选,可快速筛选所命中的策略或策略分支,节省了数据准备的时间,并且通过筛选获取测试用例输入数据,并且通过筛选获取测试用例与架构改造、策略升级、接口调整无关,降低了维护成本。
图2是根据本发明另一个实施例的搜索引擎的测试用例筛选方法的流程图。
为了提高搜索引擎的测试用例筛选方法的准确度,搜索引擎服务器可判断策略标识信息中的标识码和筛选信息中的标识码是否一致,如果不一致,则搜索引擎服务器将对应的多个测试用例进行滤除,具体地,如图2所示,搜索引擎的测试用例筛选方法包括以下步骤。
S201,搜索引擎服务器接收多个测试用例和筛选信息。
其中,测试用例可包括查询命令Query请求等,筛选信息可包括标识码、命令码和条件数据等中的一种或多种。
在本发明的一个实施例中,标识码可包括策略标识、分支标识和条件标识等中的一种或多种。具体地,策略标识(Sid),标识相关性策略的最终生效位置,query处理流程经过了策略标识,就表明该相关性策略已经生效;分支标识(Bid),一个相关性策略一般包含多个重要的大分支,分支从属于策略,分支标识是为了补充策略标识粗粒度的缺点,用更细的分支粒度来标识策略的正确执行;条件标识(Cid),满足一定筛选条件的标识,例如:筛选前3条搜索结果同时命中了指定的多种策略,前3就是条件数据,对其的标识为条件标识。
在本发明的一个实施例中,命令码可包括筛选、无条件保存、停止筛选、停止保存和查询等中的一种或多种。具体地,筛选:有筛选条件的筛选,输入包括标识码、命令码、条件标识,可支持输入多个标识码;无条件保存:无条件的保存,不筛选,直接输出采集的数据;停止筛选或保存:停止筛选或保存的命令;查询:查看筛选工作状态信息的命令。
S202,搜索引擎服务器分别执行多个测试用例,并获取执行多个测试用例时所命中的策略的策略标识信息。
在本发明的一个实施例中,在搜索引擎服务器中植入测试探针,其中,测试探针用于在搜索引擎服务器分别执行多个测试用例时,获取所命中的策略的策略标识信息。举例来说,植入测试探针过程可如下代码所示:
权利要求
1.一种搜索引擎的测试用例筛选方法,其特征在于,包括以下步骤: 搜索引擎服务器接收多个测试用例和筛选信息; 所述搜索引擎服务器分别执行所述多个测试用例,并获取执行所述多个测试用例时所命中的策略的策略标识信息;以及 所述搜索引擎服务器根据所述筛选信息和所述策略标识信息对所述多个测试用例进行筛选。
2.根据权利要求1所述的方法,其特征在于,在所述搜索引擎服务器中植入测试探针,其中,所述测试探针用于在所述搜索引擎服务器分别执行所述多个测试用例时,获取所命中的策略的策略标识信息。
3.根据权利要求1或2所述的方法,其特征在于,所述筛选信息包括标识码、命令码和条件数据中的一种或多种,其中,所述标识码包括策略标识、分支标识和条件标识中的一种或多种。
4.根据权利要求3所述的方法,其特征在于,所述搜索引擎服务器根据所述筛选信息和所述策略标识信息对所述多个测试用例进行筛选,进一步包括: 所述搜索引擎服务器判断所述策略标识信息中的标识码和所述筛选信息中的所述标识码是否一致;以及 如果不一致,则所述搜索引擎服务器将对应的多个测试用例进行滤除。
5.根据权利要求1-4任一项所述的方法,其特征在于,还包括: 所述搜索引擎服务器提供接口模块,其中,所述接口模块用于接收所述多个测试用例和所述筛选信息。
6.根据权利要求5所述的方法,其特征在于,所述命令码包括筛选、无条件保存、停止筛选、停止保存和查询中的一种或多种。
7.根据权利要求6所述的方法,其特征在于,还包括: 如果所述命令码为所述查询时,所述搜索引擎服务器通过所述接口模块返回筛选的状态息。
8.一种搜索引擎的相关性策略测试方法,其特征在于,包括以下步骤: 测试服务器获取根据权利要求1-7任一项所述的方法筛选后的多个测试用例和预设策略条件,其中,所述预设策略条件包括至少一个策略; 所述测试服务器针对所述预设策略条件对所述多个测试用例进行筛选,以获得与所述预设策略条件相关的测试用例集合;以及 所述测试服务器根据所述测试用例集合针对所述至少一个策略进行相关性策略的测试。
9.根据权利要求8所述的方法,其特征在于,所述测试用例包括命中的至少一个策略。
10.根据权利要求8或9所述的方法,其特征在于,在搜索引擎服务器中植入测试探针并执行所述测试用例,其中,所述测试探针在所述搜索引擎服务器执行所述测试用例时,获取所述测试用例所命中的至少一个策略。
11.一种搜索引擎的测试用例筛选装置,其特征在于,包括: 第一接收模块,用于接收多个测试用例和筛选信息; 执行模块,用于分别执行所述多个测试用例;第二获取模块,用于获取执行所述多个测试用例时所命中的策略的策略标识信息;以及 筛选模块,用于根据所述筛选信息和所述策略标识信息对所述多个测试用例进行筛选。
12.根据权利要求11所述的装置,其特征在于,在搜索引擎服务器中植入测试探针,其中,所述测试探针用于在所述搜索引擎服务器分别执行所述多个测试用例时,获取所命中的策略的策略标识信息。
13.根据权利要求11或12所述的装置,其特征在于,所述筛选信息包括标识码、命令码和条件数据中的一种或多种,其中,所述标识码包括策略标识、分支标识和条件标识中的一种或多种。
14.根据权利要求13所述的装置,其特征在于,所述筛选模块包括: 判断单元,用于判断所述策略标识信息中的标识码和所述筛选信息中的所述标识码是否一致;以及 滤除单元,用于所述判断单元判断所述策略标识信息中的标识码和所述筛选信息中的所述标识码不一致时,将对应的多个测试用例进行滤除。
15.根据权利要求11-14任一项所述的装置,其特征在于,还包括: 提供模块,用于提供接口模块,其中,所述接口模块用于接收所述多个测试用例和所述筛选信息。
16.根据权利要求15所述的装置,其特征在于,所述命令码包括筛选、无条件保存、停止筛选、停止保存和查询中的一种或多种。
17.根据权利要求16所述的装置,其特征在于,还包括: 返回模块,用于如果所 述命令码为所述查询时返回筛选的状态信息。
18.一种搜索引擎的相关性策略测试装置,其特征在于,包括: 获取模块,用于获取根据权利要求11-17任一项所述的装置筛选后的多个测试用例和预设策略条件,其中,所述预设策略条件包括至少一个策略; 筛选模块,用于针对所述预设策略条件对所述多个测试用例进行筛选,以获得与所述预设策略条件相关的测试用例集合;以及 测试模块,用于根据所述测试用例集合针对所述至少一个策略进行相关性策略的测试。
19.根据权利要求18所述的装置,其特征在于,所述测试用例包括命中的至少一个策略。
20.根据权利要求18或19所述的装置,其特征在于,在搜索引擎服务器中植入测试探针并执行所述测试用例,其中,所述测试探针在所述搜索引擎服务器执行所述测试用例时,获取所述测试用例所命中的至少一个策略。
全文摘要
本发明提出一种搜索引擎的测试用例筛选方法和装置,其中该方法包括以下步骤搜索引擎服务器接收多个测试用例和筛选信息;搜索引擎服务器分别执行多个测试用例,并获取执行多个测试用例时所命中的策略的策略标识信息;以及搜索引擎服务器根据筛选信息和策略标识信息对多个测试用例进行筛选。根据本发明实施例方法,可快速筛选所命中的策略或策略分支,节省了数据准备的时间,并且通过筛选获取测试用例与架构改造、策略升级、接口调整无关,降低了维护成本。本发明还提出一种搜索引擎的相关性策略测试方法和装置。
文档编号G06F11/36GK103218298SQ201310182430
公开日2013年7月24日 申请日期2013年5月16日 优先权日2013年5月16日
发明者孙宇, 谭广明, 韩彦俊 申请人:百度在线网络技术(北京)有限公司