一种用于实现页面测试的方法和设备的制作方法

文档序号:6490945阅读:144来源:国知局
一种用于实现页面测试的方法和设备的制作方法
【专利摘要】本发明的目的是提供一种用于实现页面测试的方法与设备。测试设备获取第一待测页面;对第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面;对第一受测页面进行解析处理,以确定其所对应的页面数据结构;根据第一待测页面所对应的页面测试用例及页面数据结构,对所述第一受测页面进行测试。与现有技术相比,本发明通过对第一待测页面进行格式转换,并对转换后的页面进行解析与测试,以获得第一待测页面所对应的第一测试结果,从而利用现有测试应用或测试用例对该页面进行测试,不仅有效复用了现有的测试应用与测试用例,提高测试的效率,满足了页面大规模测试的需求,还加快了基于新页面格式的页面或系统的开发与上线。
【专利说明】一种用于实现页面测试的方法和设备
【技术领域】
[0001]本发明涉及互联网领域,尤其涉及一种用于实现页面测试的技术。
【背景技术】
[0002]随着网络技术的发展,页面相关技术也逐步推陈出新,譬如从最初的HTML到后来的XHTML、WML等多种标记语言。为了对待上线的系统、网站或修改后的页面进行测试,人们已经开发和积累了大量的测试应用与测试用例。然而,这些测试应用和测试用例主要是基于特定页面格式的,并不能很好地支持采用新页面格式等其他页面格式的页面的测试,因而这不仅降低了页面测试的效率,也影响了页面系统的开发与上线。

【发明内容】

[0003]本发明的目的是提供一种用于实现页面测试的方法与设备。
[0004]根据本发明的一个方面,提供了一种用于实现页面测试的方法,其中,该方法包括以下步骤:
[0005]a获取第一待测页面;
[0006]b对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面;
[0007]c对所述第一受测页面进行解析处理,以确定所述第一受测页面所对应的页面数据结构;
[0008]d根据所述第一待测页面所对应的页面测试用例,以及所述页面数据结构,对所述第一受测页面进行测试,以获得所述第一待测页面所对应的第一测试结果。
[0009]根据本发明的另一方面,还提供了一种用于实现页面测试的测试设备,其中,该设备包括:
[0010]获取装置,用于获取第一待测页面;
[0011]转换装置,用于对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面;
[0012]解析装置,用于对所述第一受测页面进行解析处理,以确定所述第一受测页面所对应的页面数据结构;
[0013]测试装置,用于根据所述第一待测页面所对应的页面测试用例,以及所述页面数据结构,对所述第一受测页面进行测试,以获得所述第一待测页面所对应的第一测试结果。
[0014]与现有技术相比,本发明通过对第一待测页面进行格式转换,并对转换后的第一受测页面进行解析,对所述第一受测页面进行测试,以获得所述第一待测页面所对应的第一测试结果,从而利用现有测试应用或测试用例对该页面进行测试,不仅有效复用了现有的测试应用与测试用例,提高测试的效率,满足了页面大规模测试的需求,还加快了基于新页面格式的页面或系统的开发与上线。而且,本发明还可以对用户交互操作所生成的第二待测页面进行转换并解析,从而完成测试,使得本发明能够充分实现自动化,支持交互类功能测试;进一步地,还可以根据所述第二待测页面和参考待测页面比较后的查分待测页面进行比较,以提高测试效率。而且,本发明还可以根据预定的格式转换规则,对第一待测页面进行格式转换;还可以对第一待测页面的语言格式进行检测,从而进一步完善了页面格式的转换,提高了页面格式转换与检测的效率。而且,本发明还可以对页面中的数据对象进行检测;进一步地,还可以根据预定的测试用例执行策略,检查是否包括所述页面测试用例所对应的数据对象;从而进一步扩展了测试范围,并提高了测试效率,为测试用例的稳定性提供了保障。而且,本发明还可以通过与终端访问配置信息相对应的页面访问请求,获取所述第一待测页面,从而实现对于特定终端访问配置信息页面的检测,以提高测试的覆盖范围,加强测试的针对性,提高测试效率。
【专利附图】

【附图说明】
[0015]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0016]图1示出根据本发明一个方面的一种用于实现页面测试的测试设备示意图;
[0017]图2示出根据本发明一个优选实施例的一种用于实现页面测试的测试设备示意图;
[0018]图3示出根据本发明另一个优选实施例的一种用于实现页面测试的测试设备示意图;
[0019]图4示出根据本发明另一个方面的一种用于实现页面测试的方法流程图;
[0020]图5示出根据本发明一个优选实施例的一种用于实现页面测试的方法流程图;
[0021]图6示出根据本发明另一个优选实施例的一种用于实现页面测试的方法流程图。
[0022]附图中相同或相似的附图标记代表相同或相似的部件。
【具体实施方式】
[0023]下面结合附图对本发明作进一步详细描述。
[0024]图1示出根据本发明一个方面的一种用于实现页面测试的测试设备示意图;其中,所述测试设备包括获取装置11、转换装置12、解析装置13、测试装置14。具体地,获取装置11获取第一待测页面;转换装置12对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面;解析装置13对所述第一受测页面进行解析处理,以确定所述第一受测页面所对应的页面数据结构;测试装置14根据所述第一待测页面所对应的页面测试用例,以及所述页面数据结构,对所述第一受测页面进行测试,以获得所述第一待测页面所对应的第一测试结果。在此,测试设备包括但不限于网络设备、用户设备、或网络设备与用户设备通过网络相集成所构成的设备。其中,所述网络设备其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云;在此,云由基于云计算(Cloud Computing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟超级计算机。所述用户设备其包括但不限于任何一种可与用户通过键盘、遥控器、触摸板、或声控设备进行人机交互的电子产品,例如计算机、智能手机、PDA、游戏机、或IPTV等。所述网络包括但不限于互联网、广域网、城域网、局域网、VPN网络、无线自组织网络(Ad Hoc网络)等。测试设备还包括执行于上述用户设备或网络设备、以用于网页自动化测试的应用,如浏览器或浏览器插件。本领域技术人员应能理解,其他的视图设备同样适用于本发明,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
[0025]上述各装置之间是持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各装置分别实时地,或者按照设定的或实时调整的工作模式要求,进行第一待测页面的获取、第一受测页面的获取、页面数据结构的确定、第一受测页面的测试等,直至测试设备停止获取第一待测页面。
[0026]获取装置11获取第一待测页面。具体地,获取装置11通过基于各种通信协议,如http协议和/或https协议等,与其他能够获取第一待测页面的设备,如待测页面数据库进行交互,通过下载所述第一待测页面等方式,获取第一待测页面;或者获取装置11通过获取页面访问请求,通过基于各种通信协议,根据所述页面访问请求确定第一待测页面所对应的链接,并与所述链接相对应的网站服务器相交互,获取第一待测页面。在此,所述第一待测页面包括但不限于WML语言格式的页面。
[0027]优选地,所述获取装置11还可以通过与终端访问配置信息相对应的页面访问请求,获取所述第一待测页面。具体地,所述获取装置11通过与终端访问配置信息相对应的页面访问请求,例如根据所述页面访问请求所对应的、具有特定终端访问配置的页面链接,或通过定制UserAgent向web服务器伪装成不同的浏览器,如与不同的手机版本相对应的浏览器,以通过基于各种通信协议,来获取所述第一待测页面。其中,所述终端访问配置信息包括但不限于移动终端类型信息、移动终端版本信息、浏览器信息等,从而通过获取与一定终端访问配置信息相对应的第一待测页面,以适应于不同移动终端或浏览器等的待测需求。
[0028]转换装置12对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面。具体地,转换装置12通过基于预定的与所述第一待测页面所对应的格式转换规则、或根据测试用户或其他用户即时确定的格式转换方法,将所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面。其中,所述格式转换方法包括但不限于获取所述第一待测页面的内容,基于所述与目标标记语言格式相对应的页面语言或页面组织形式,将所述第一待测页面整体或部分地生成为与目标标记语言格式相对应的第一受测页面;或是利用将所述第一待测页面中的页面标记替换为目标标记语言的页面标记的方式,得与目标标记语言格式相对应的第一受测页面。
[0029]优选地,所述转换装置12还可以根据预定的格式转换规则,对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面,其中,所述格式转换规则包括在所述目标标记语言格式与所述第一待测页面所对应的标记语言格式之间的标记映射关系。具体地,例如,当预定的格式转换规则为页面标签替换时,在所述格式转换规则中规定对所述目标标记语言格式与所述第一待测页面所对应的标记语言格式之间的标记映射关系为:将第一待测页面的页面标签替换为目标标记语言所对应的标签。例如,所述第一待测页面包括但不限于WML语言格式的页面,所述目标标记语言为XHTML语言,从而以适应将WML语言的页面利用适合XHTML语言的检测方法进行检测;通过将两种标记语言中功能相同或者相近的标签及属性生成格式转换规则,如将WML页面中的<go>标签映射为XHTML页面中的〈form〉标签等,从而通过读取原WML页面文件,依次解析每一个WML标签,对于每一个WML标签检测是否符合所述格式转换规则的条件,如果符合则按照规则中的对应关系转换为XHTML标签,否则保持原内容;以实现所述第一待测页面的转换,从而实现对页面的完整转换,保留页面的完整功能。
[0030]本领域技术人员应能理解,在此实施例中仅以WML至XHTML语言的转换为例,本发明适用于任一种标记语言至另一种标记语言的转换处理。
[0031]解析装置13对所述第一受测页面进行解析处理,以确定所述第一受测页面所对应的页面数据结构。具体地,解析装置13获取转换装置12所获取的第一受测页面,解析装置13根据目标标记语言所对应的解析方法,如将所述第一受测页面解析为DOM树结构等方式,以确定所述第一受测页面所对应的页面数据结构。其中,所述页面数据结构包括但不限于DOM树形式的页面数据结构,或可用于表示页面数据结构的其他形式。
[0032]测试装置14根据所述第一待测页面所对应的页面测试用例,以及所述页面数据结构,对所述第一受测页面进行测试,以获得所述第一待测页面所对应的第一测试结果。具体地,测试装置14通过直接从测试装置14中获取,或基于各种通信协议,与其他能够获取页面测试用例的设备,如页面测试用例数据库进行交互,获取所述第一待测页面所对应的页面测试用例。测试装置14根据所述解析装置13所确定的页面数据结构,如DOM树等,对所述第一受测页面进行功能测试或页面元素测试,如通过基于DOM结构的编程接口获取页面中的元素,从而进行逐一检测(如检查某个元素是否出现)等。其中,所述测试包括但不限于功能测试、页面元素测试或交互功能测试等。
[0033]优选地,所述测试设备还包括交互获取装置(未示出)与迭代装置(未示出);其中,当所述页面测试用例包括关于所述第一受测页面的用户交互操作,交互获取装置获取与所述用户交互操作相对应的第二待测页面;迭代装置对于所述第二待测页面,执行所述转换装置12、解析装置13和测试装置14中的操作,以获得与所述第二待测页面相对应的第二测试结果。具体地,当所述页面测试用例包括关于所述第一受测页面的用户交互操作时,交互获取装置通过与用户进行交互,或者通过基于各种通信协议,与其他能够获取用户交互操作的设备,如用户交互操作数据库进行交互,获取所述用户的交互操作。其中,所述用户的交互操作包括但不限于点击、登录、输入、刷新、后退等操作,或上述各种操作的组合,在此,例如通过输入与点击操作的组合而形成的提交表单操作等。交互获取装置根据所述交互操作,通过下载页面等方式获取与所述用户交互操作相对应的第二待测页面。迭代装置根据所述交互获取装置所获取的第二待测页面,执行所述转换装置12、解析装置13和测试装置14中的操作,所述执行方式与在转换装置12、解析装置13和测试装置14中相同或相似,在此不再赘述,并以引用的方式包含于此。本领域技术人员应能理解,若所述页面测试用例包括关于所述第二受测页面的用户交互操作,则可继续执行本发明的方案,直至不再生成与所述用户交互操作相对应新的待测页面。
[0034]更优选地,所述迭代装置还可以将所述第二待测页面与已完成测试的参考待测页面相比较,以获得所述第二待测页面相对所述参考待测页面的差分待测页面;根据所述差分待测页面,执行所述转换装置12、解析装置13和测试装置14中的操作,以获得与所述差分待测页面相对应的差分测试结果;根据所述差分测试结果,以及所述参考待测页面所对应的参考测试结果,确定所述第二测试结果。具体地,迭代装置获取所述第二待测页面,同时获取已完成测试的其他参考待测页面,其中,所述参考待测页面的确定包括但不限于如缺省的第一待测页面、经URL匹配等方式在已完成测试的页面中确定的参考页面等,在此,所述URL匹配方式例如:当所需检测的第二待测页面为http://wenku.baidu.com/edu/index时,匹配至Ij已完成检测页面中包括http: //wenku.baidu.com/,贝[I将http: //wenku.baidu.com/ 作为第二待测页面 http: //wenku.baidu.com/edu/index 的参考待测页0 ;迭代装置将所述第二待测页面与已完成测试的参考待测页面相比较,通过匹配等方式,获取所述第二待测页面相对所述参考待测页面的不同的页面部分,以确定所述差分待测页面;从而迭代装置对所述差分待测页面进行检测,并根据所述差分测试结果,以及所述参考待测页面所对应的参考测试结果,通过将两者进行合并或整合等方式,确定所述第二测试结果。在此,对所述差分待测页面的检测的执行方式与在转换装置12、解析装置13和测试装置14中相同或相似,在此不再赘述,并以引用的方式包含于此
[0035]图2示出根据本发明一个优选实施例的一种用于实现页面测试的测试设备示意图;其中,所述测试设备包括获取装置11’、转换装置12’、解析装置13’、测试装置14’,装换装置12’包括检测单元121’和转换单元122’。具体地,获取装置11’获取第一待测页面;检测单元121’检测所述第一待测页面是否与所述目标语言格式失配;当所述第一待测页面与所述目标语言格式失配,转换单元122’对所述第一待测页面进行格式转换处理,以获得与所述目标标记语言格式相对应的第一受测页面;解析装置13’对所述第一受测页面进行解析处理,以确定所述第一受测页面所对应的页面数据结构;测试装置14’根据所述第一待测页面所对应的页面测试用例,以及所述页面数据结构,对所述第一受测页面进行测试,以获得所述第一待测页面所对应的第一测试结果。其中,测试设备中的获取装置11’、解析装置13’、测试装置14’与图1所示对应装置相同或基本相同,故此处不再赘述,并通过引用的方式包含于此。
[0036]上述各装置之间是持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各装置分别实时地,或者按照设定的或实时调整的工作模式要求,进行第一待测页面的获取、第一待测页面的语言格式检测、第一受测页面的获取、页面数据结构的确定、第一受测页面的测试等,直至测试设备停止获取第一待测页面。
[0037]检测单元121’检测所述第一待测页面是否与所述目标语言格式失配。具体地,检测单元121’通过基于预定的检测规则,通过直接获取或通过提取所述第一待测页面中的特殊页面标签等方式,确定所述第一待测页面所对应的页面标记语言,例如将所述页面标记语言与所述目标语言格式相匹配等方式,检测所述第一待测页面与所述目标语言格式的关系。若所述第一待测页面不与所述目标语言格式相对应,或者不是利用所述目标语言进行编码的页面,则确定所述第一待测页面与所述目标语言格式失配。
[0038]当所述第一待测页面与所述目标语言格式失配,转换单元122’对所述第一待测页面进行格式转换处理,以获得与所述目标标记语言格式相对应的第一受测页面。具体地,当所述第一待测页面与所述目标语言格式失配,即所述第一待测页面不与所述目标语言格式相对应,或者不是利用所述目标语言进行编码的页面,则转换单元122’通过基于预定的格式转换规则,对所述第一待测页面进行格式转换处理。在此,所述转换单元122’对第一待测页面进行格式转换的方法与图1所述的转换装置12中所述的格式转换方法相同或相似,在此不再赘述,并通过引用的方式包含于此。
[0039]优选地,所述检测单元121’还可以根据所述第一待测页面的页面特征信息,确定所述第一待测页面所对应的标记语言格式;将所述第一待测页面所对应的标记语言格式与所述目标标记语言格式相比较,以检测所述第一待测页面是否与所述目标语言格式失配。具体地,检测单元121’还可以获取所述第一待测页面的页面特征信息,如页面URL所对应的相关信息、或根据页面内容提取该页面所具有的与特定标记语言相对应的页面标签等,通过根据所述第一待测页面的页面特征信息,确定所述第一待测页面所对应的标记语言格式;通过将所述标记语言格式与所述目标标记语言相比较等方式,检测所述第一待测页面与所述目标语言格式的关系。若所述第一待测页面不与所述目标语言格式相对应,或者不是利用所述目标语言进行编码的页面,则确定所述第一待测页面与所述目标语言格式失配。
[0040]图3示出根据本发明另一个优选实施例的一种用于实现页面测试的测试设备示意图;其中,所述测试设备包括获取装置11”、转换装置12”、解析装置13”、测试装置14”,测试装置14”包括用例检测单元141”和整合单元142”。具体地,获取装置11”获取第一待测页面;转换装置12”对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面;解析装置13”对所述第一受测页面进行解析处理,以确定所述第一受测页面所对应的页面数据结构;用例检测单元141”根据所述页面测试用例,通过对应的访问接口在所述页面数据结构中检查是否包括所述页面测试用例所对应的数据对象;整合单元142”将对应的检查结果作为所述第一待测页面所对应的第一测试结果。其中,测试设备中的获取装置11”、转换装置12”、解析装置13”与图1所示对应装置相同或基本相同,故此处不再赘述,并通过引用的方式包含于此。
[0041]上述各装置之间是持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各装置分别实时地,或者按照设定的或实时调整的工作模式要求,进行第一待测页面的获取、第一受测页面的获取、页面数据结构的确定、数据对象的检测、第一测试结果的生成等,直至测试设备停止获取第一待测页面。
[0042]用例检测单元141”根据所述页面测试用例,通过对应的访问接口在所述页面数据结构中检查是否包括所述页面测试用例所对应的数据对象。具体地,用例检测单元141”通过直接从检测单元141”中获取,或基于各种通信协议,与其他能够获取页面测试用例的设备,如页面测试用例数据库进行交互,获取所述第一待测页面所对应的页面测试用例;通过基于解析装置13”所解析的页面数据结构,根据所述页面数据结构所对应的访问接口,所述页面数据结构中检查是否包括所述页面测试用例所对应的数据对象。其中,所述数据对象包括但不限于第一待测页面中需被测试的页面元素、页面功能点等。例如,用例检测单元141”基于解析装置13”所解析的DOM结构的编程接口获取页面中的元素,通过DOM编程接口检查页面中的测试功能点(如检查某个元素是否出现)。
[0043]整合单元142”将对应的检查结果作为所述第一待测页面所对应的第一测试结果。具体地,整合单元142”将所述检查结果作为所述第一待测页面所对应的第一测试结果,进一步地,还可以将所述检查结果生成报表,以作为第一测试结果并通过一种或多种格式提供给检测用户。在此,所述格式包括但不限于HTML格式或Jun it格式中的一种或多种的混合。
[0044]优选地,所述用例检测单元141”还可以根据所述页面测试用例,结合预定的测试用例执行策略,通过对应的访问接口在所述页面数据结构中检查是否包括所述页面测试用例所对应的数据对象。具体地,所述用例检测单元141”还可以结合预定的测试用例执行策略对所述页面数据结构进行检测,其中,所述预定的测试用例执行策略包括但不限于定时检测、连续检测等,例如,当检测所述页面测试用例所对应的数据对象是否存在时,若初始检查失败且尚未超出设定的超时阈值时间范围时,则在超时时间范围内定时(如每0.1秒)检查一次,任意一次检查成功均认为是成功的,这样做的好处是在保障稳定性的同时提高时间效率;例如,当页面测试用例执行失败时,自动发起重新执行,连续N次(如3次)失败则任务是最终失败,否则有任意一次成功则认为页面测试用例执行结果为成功。利用所述预定的测试用例执行策略,提高检测的效率,为检测结果做出保障。
[0045]更优选地,所述测试设备还包括策略确定装置(未示出),其中,策略确定装置根据所述第一待测页面的页面相关信息,确定所述测试用例执行策略。具体地,策略确定装置可以根据所述述第一待测页面的页面相关信息,通过预定的页面相关信息与测试用例执行策略的映射关系,来确定所述测试用例执行策略;或者根据所述所述第一待测页面的页面相关信息,确定一个或多个候选测试用例执行策略,再通过例如结合测试用户的选择信息等方式,确定所述测试用例执行策略。
[0046]其中,所述页面相关信息包括以下至少任一项:
[0047]-所述第一待测页面的优先级,例如,当所述第一待测页面的优先级较高时,则对应于所述第一待测页面的测试用例执行策略的优先级越高,或当对应页面测试用例执行失败时的重复执行次数提高;
[0048]-所述第一待测页面的修改记录信息,例如,所述测试用例执行策略包括仅对所述修改记录信息所对应的内容进行检测,或者,对整个页面进行测试、但提高对所述修改记录信息所对应的内容的重复执行次数;
[0049]-所述第一待测页面的访问记录信息,例如,若所述第一待测页面的访问记录信息较多,或访问记录所显示的访问时间与当前时间越接近,则认为该待测页面的重要性越高,从而测试用例执行策略的执行时间越提前,或者或当页面测试用例执行失败时的重复执行次数提闻。
[0050]图4示出根据本发明另一个方面的一种用于实现页面测试的方法流程图。具体地,测试设备在步骤Si中获取第一待测页面;在步骤s2中对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面;在步骤s3中对所述第一受测页面进行解析处理,以确定所述第一受测页面所对应的页面数据结构;在步骤s4中根据所述第一待测页面所对应的页面测试用例,以及所述页面数据结构,对所述第一受测页面进行测试,以获得所述第一待测页面所对应的第一测试结果。
[0051]上述各步骤之间是持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各步骤分别实时地,或者按照设定的或实时调整的工作模式要求,进行第一待测页面的获取、第一受测页面的获取、页面数据结构的确定、第一受测页面的测试等,直至测试设备停止获取第一待测页面。
[0052]在步骤Si中,测试设备获取第一待测页面。具体地,在步骤Si中,测试设备通过基于各种通信协议,如http协议和/或https协议等,与其他能够获取第一待测页面的设备,如待测页面数据库进行交互,通过下载所述第一待测页面等方式,获取第一待测页面;或者测试设备通过获取页面访问请求,通过基于各种通信协议,根据所述页面访问请求确定第一待测页面所对应的链接,并与所述链接相对应的网站服务器相交互,获取第一待测页面。在此,所述第一待测页面包括但不限于WML语言格式的页面。
[0053]优选地,在步骤Si中,测试设备还可以通过与终端访问配置信息相对应的页面访问请求,获取所述第一待测页面。具体地,在步骤Si中,测试设备通过与终端访问配置信息相对应的页面访问请求,例如根据所述页面访问请求所对应的、具有特定终端访问配置的页面链接,或通过定制UserAgent向web服务器伪装成不同的浏览器,如与不同的手机版本相对应的浏览器,以通过基于各种通信协议,来获取所述第一待测页面。其中,所述终端访问配置信息包括但不限于移动终端类型信息、移动终端版本信息、浏览器信息等,从而通过获取与一定终端访问配置信息相对应的第一待测页面,以适应于不同移动终端或浏览器等的待测需求。
[0054]在步骤s2中,测试设备对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面。具体地,在步骤s2中,测试设备通过基于预定的与所述第一待测页面所对应的格式转换规则、或根据测试用户或其他用户即时确定的格式转换方法,将所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面。其中,所述格式转换方法包括但不限于获取所述第一待测页面的内容,基于所述与目标标记语言格式相对应的页面语言或页面组织形式,将所述第一待测页面整体或部分地生成为与目标标记语言格式相对应的第一受测页面;或是利用将所述第一待测页面中的页面标记替换为目标标记语言的页面标记的方式,得与目标标记语言格式相对应的第一受测页面。
[0055]优选地,在步骤s2中,测试设备还可以根据预定的格式转换规则,对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面,其中,所述格式转换规则包括在所述目标标记语言格式与所述第一待测页面所对应的标记语言格式之间的标记映射关系。具体地,例如,当预定的格式转换规则为页面标签替换时,在所述格式转换规则中规定对所述目标标记语言格式与所述第一待测页面所对应的标记语言格式之间的标记映射关系为:将第一待测页面的页面标签替换为目标标记语言所对应的标签。例如,所述第一待测页面包括但不限于WML语言格式的页面,所述目标标记语言为XHTML语言,从而以适应将WML语言的页面利用适合XHTML语言的检测方法进行检测;通过将两种标记语言中功能相同或者相近的标签及属性生成格式转换规则,如将WML页面中的<go>标签映射为XHTML页面中的〈form〉标签等,从而通过读取原WML页面文件,依次解析每一个WML标签,对于每一个WML标签检测是否符合所述格式转换规则的条件,如果符合则按照规则中的对应关系转换为XHTML标签,否则保持原内容;以实现所述第一待测页面的转换,从而实现对页面的完整转换,保留页面的完整功能。
[0056]本领域技术人员应能理解,在此实施例中仅以WML至XHTML语言的转换为例,本发明适用于任一种标记语言至另一种标记语言的转换处理。
[0057]在步骤s3中,测试设备对所述第一受测页面进行解析处理,以确定所述第一受测页面所对应的页面数据结构。具体地,在步骤S3中,测试设备获取步骤s2中所获取的第一受测页面,在步骤S3中,测试设备根据目标标记语言所对应的解析方法,如将所述第一受测页面解析为DOM树结构等方式,以确定所述第一受测页面所对应的页面数据结构。其中,所述页面数据结构包括但不限于DOM树形式的页面数据结构,或可用于表示页面数据结构的其他形式。
[0058]在步骤S4中,测试设备根据所述第一待测页面所对应的页面测试用例,以及所述页面数据结构,对所述第一受测页面进行测试,以获得所述第一待测页面所对应的第一测试结果。具体地,在步骤s4中,测试设备通过直接从测试设备中获取,或基于各种通信协议,与其他能够获取页面测试用例的设备,如页面测试用例数据库进行交互,获取所述第一待测页面所对应的页面测试用例。在步骤s4中,测试设备根据所述步骤s3所确定的页面数据结构,如DOM树等,对所述第一受测页面进行功能测试或页面元素测试,如通过基于DOM结构的编程接口获取页面中的元素,从而进行逐一检测(如检查某个元素是否出现)等。其中,所述测试包括但不限于功能测试、页面元素测试或交互功能测试等。
[0059]优选地,所述方法还包括步骤s5(未示出)与步骤s6(未示出);其中,当所述页面测试用例包括关于所述第一受测页面的用户交互操作,在步骤s5中,测试设备获取与所述用户交互操作相对应的第二待测页面;在步骤s6中,测试设备对于所述第二待测页面,执行所述步骤s2、步骤s3和步骤s4中的操作,以获得与所述第二待测页面相对应的第二测试结果。具体地,当所述页面测试用例包括关于所述第一受测页面的用户交互操作时,在步骤s5中,测试设备通过与用户进行交互,或者通过基于各种通信协议,与其他能够获取用户交互操作的设备,如用户交互操作数据库进行交互,获取所述用户的交互操作。其中,所述用户的交互操作包括但不限于点击、登录、输入、刷新、后退等操作,或上述各种操作的组合,在此,例如通过输入与点击操作的组合而形成的提交表单操作等。在步骤s5中,测试设备根据所述交互操作,通过下载页面等方式获取与所述用户交互操作相对应的第二待测页面。在步骤s6中,测试设备根据所述步骤s5中所获取的第二待测页面,执行所述步骤s2、步骤s3和步骤s4中的操作,所述执行方式与在图4所对应的步骤s2、步骤s3和步骤s4中相同或相似,在此不再赘述,并以引用的方式包含于此。本领域技术人员应能理解,若所述页面测试用例包括关于所述第二受测页面的用户交互操作,则可继续执行本发明的方案,直至不再生成与所述用户交互操作相对应新的待测页面。
[0060]更优选地,在步骤s6中,测试设备还可以将所述第二待测页面与已完成测试的参考待测页面相比较,以获得所述第二待测页面相对所述参考待测页面的差分待测页面;根据所述差分待测页面,执行所述步骤s2、步骤s3和步骤s4中的操作,以获得与所述差分待测页面相对应的差分测试结果;根据所述差分测试结果,以及所述参考待测页面所对应的参考测试结果,确定所述第二测试结果。具体地,在步骤s6中,测试设备获取所述第二待测页面,同时获取已完成测试的其他参考待测页面,其中,所述参考待测页面的确定包括但不限于如缺省的第一待测页面、经URL匹配等方式在已完成测试的页面中确定的参考页面等,在此,所述URL匹配方式例如:当所需检测的第二待测页面为http://wenku.baidu.com/edu/index 时,IKj配到已完成检测页面中包括 http: //wenku.baidu.com/,则将http: //wenku.baidu.com/ 作为第二待测页面 http: //wenku.baidu.com/edu/index 的参考待测页面;在步骤s6中,测试设备将所述第二待测页面与已完成测试的参考待测页面相比较,通过匹配等方式,获取所述第二待测页面相对所述参考待测页面的不同的页面部分,以确定所述差分待测页面;从而测试设备对所述差分待测页面进行检测,并根据所述差分测试结果,以及所述参考待测页面所对应的参考测试结果,通过将两者进行合并或整合等方式,确定所述第二测试结果。在此,对所述差分待测页面的检测的执行方式与在步骤s2、步骤s3和步骤s4中相同或相似,在此不再赘述,并以引用的方式包含于此
[0061]图5示出根据本发明一个优选实施例的一种用于实现页面测试的方法流程图。具体地,在步骤Si’中,测试设备获取第一待测页面;在步骤s21’中,测试设备检测所述第一待测页面是否与所述目标语言格式失配;当所述第一待测页面与所述目标语言格式失配,在步骤s22’中,测试设备对所述第一待测页面进行格式转换处理,以获得与所述目标标记语言格式相对应的第一受测页面;在步骤S3’中,测试设备对所述第一受测页面进行解析处理,以确定所述第一受测页面所对应的页面数据结构;在步骤s4’中,测试设备根据所述第一待测页面所对应的页面测试用例,以及所述页面数据结构,对所述第一受测页面进行测试,以获得所述第一待测页面所对应的第一测试结果。其中,测试设备中的步骤Si’、步骤s3’、步骤s4’与图4所示对应步骤相同或基本相同,故此处不再赘述,并通过引用的方式包含于此。
[0062]上述各步骤之间是持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各步骤分别实时地,或者按照设定的或实时调整的工作模式要求,进行第一待测页面的获取、第一待测页面的语言格式检测、第一受测页面的获取、页面数据结构的确定、第一受测页面的测试等,直至测试设备停止获取第一待测页面。
[0063]在步骤s21’中,测试设备检测所述第一待测页面是否与所述目标语言格式失配。在步骤s21’中,测试设备通过基于预定的检测规则,通过直接获取或通过提取所述第一待测页面中的特殊页面标签等方式,确定所述第一待测页面所对应的页面标记语言,例如将所述页面标记语言与所述目标语言格式相匹配等方式,检测所述第一待测页面与所述目标语言格式的关系。若所述第一待测页面不与所述目标语言格式相对应,或者不是利用所述目标语言进行编码的页面,则确定所述第一待测页面与所述目标语言格式失配。
[0064]当所述第一待测页面与所述目标语言格式失配,在步骤s22’中,测试设备对所述第一待测页面进行格式转换处理,以获得与所述目标标记语言格式相对应的第一受测页面。具体地,当所述第一待测页面与所述目标语言格式失配,即所述第一待测页面不与所述目标语言格式相对应,或者不是利用所述目标语言进行编码的页面,则在步骤s22’中,测试设备通过基于预定的格式转换规则,对所述第一待测页面进行格式转换处理。在此,所述步骤s22’对第一待测页面进行格式转换的方法与图4所述的步骤2中所述的格式转换方法相同或相似,在此不再赘述,并通过引用的方式包含于此。
[0065]优选地,在步骤s21’中,测试设备还可以根据所述第一待测页面的页面特征信息,确定所述第一待测页面所对应的标记语言格式;将所述第一待测页面所对应的标记语言格式与所述目标标记语言格式相比较,以检测所述第一待测页面是否与所述目标语言格式失配。具体地,在步骤s21’中,测试设备还可以获取所述第一待测页面的页面特征信息,如页面URL所对应的相关信息、或根据页面内容提取该页面所具有的与特定标记语言相对应的页面标签等,通过根据所述第一待测页面的页面特征信息,确定所述第一待测页面所对应的标记语言格式;通过将所述标记语言格式与所述目标标记语言相比较等方式,检测所述第一待测页面与所述目标语言格式的关系。若所述第一待测页面不与所述目标语言格式相对应,或者不是利用所述目标语言进行编码的页面,则确定所述第一待测页面与所述目标语目格式失配。
[0066]图6示出根据本发明另一个优选实施例的一种用于实现页面测试的方法流程图。具体地,在步骤Si”中,测试设备获取第一待测页面;在步骤s2”中,测试设备对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面;在步骤s3”中,测试设备对所述第一受测页面进行解析处理,以确定所述第一受测页面所对应的页面数据结构;在步骤s41”中,测试设备根据所述页面测试用例,通过对应的访问接口在所述页面数据结构中检查是否包括所述页面测试用例所对应的数据对象;在步骤s42”中,测试设备将对应的检查结果作为所述第一待测页面所对应的第一测试结果。其中,测试设备中的步骤Si”、步骤s2”、步骤s3”与图4所示对应步骤相同或基本相同,故此处不再赘述,并通过引用的方式包含于此。
[0067]上述各步骤之间是持续不断工作的,在此,本领域技术人员应理解“持续”是指上述各步骤分别实时地,或者按照设定的或实时调整的工作模式要求,进行第一待测页面的获取、第一受测页面的获取、页面数据结构的确定、数据对象的检测、第一测试结果的生成等,直至测试设备停止获取第一待测页面。
[0068]在步骤s41”中,测试设备根据所述页面测试用例,通过对应的访问接口在所述页面数据结构中检查是否包括所述页面测试用例所对应的数据对象。具体地,在步骤s41”中,测试设备通过直接从测试设备中获取,或基于各种通信协议,与其他能够获取页面测试用例的设备,如页面测试用例数据库进行交互,获取所述第一待测页面所对应的页面测试用例;通过基于步骤s3”中所解析的页面数据结构,根据所述页面数据结构所对应的访问接口,所述页面数据结构中检查是否包括所述页面测试用例所对应的数据对象。其中,所述数据对象包括但不限于第一待测页面中需被测试的页面元素、页面功能点等。例如,在步骤s41”中,测试设备基于步骤s3”所解析的DOM结构的编程接口获取页面中的元素,通过DOM编程接口检查页面中的测试功能点(如检查某个元素是否出现)。
[0069]在步骤s42”中,测试设备将对应的检查结果作为所述第一待测页面所对应的第一测试结果。具体地,在步骤s42”中,测试设备将所述检查结果作为所述第一待测页面所对应的第一测试结果,进一步地,还可以将所述检查结果生成报表,以作为第一测试结果并通过一种或多种格式提供给检测用户。在此,所述格式包括但不限于HTML格式或Junit格式中的一种或多种的混合。
[0070]优选地,在步骤s41”中,测试设备还可以根据所述页面测试用例,结合预定的测试用例执行策略,通过对应的访问接口在所述页面数据结构中检查是否包括所述页面测试用例所对应的数据对象。具体地,在步骤s41”中,测试设备还可以结合预定的测试用例执行策略对所述页面数据结构进行检测,其中,所述预定的测试用例执行策略包括但不限于定时检测、连续检测等,例如,当检测所述页面测试用例所对应的数据对象是否存在时,若初始检查失败且尚未超出设定的超时阈值时间范围时,则在超时时间范围内定时(如每0.1秒)检查一次,任意一次检查成功均认为是成功的,这样做的好处是在保障稳定性的同时提高时间效率;例如,当页面测试用例执行失败时,自动发起重新执行,连续N次(如3次)失败则任务是最终失败,否则有任意一次成功则认为页面测试用例执行结果为成功。利用所述预定的测试用例执行策略,提高检测的效率,为检测结果做出保障。
[0071]更优选地,所述测试设备还包括步骤s7”(未示出),其中,在步骤s7”中,测试设备根据所述第一待测页面的页面相关信息,确定所述测试用例执行策略。具体地,在步骤s7”中,测试设备可以根据所述述第一待测页面的页面相关信息,通过预定的页面相关信息与测试用例执行策略的映射关系,来确定所述测试用例执行策略;或者根据所述所述第一待测页面的页面相关信息,确定一个或多个候选测试用例执行策略,再通过例如结合测试用户的选择信息等方式,确定所述测试用例执行策略。
[0072]其中,所述页面相关信息包括以下至少任一项:
[0073]-所述第一待测页面的优先级,例如,当所述第一待测页面的优先级较高时,则对应于所述第一待测页面的测试用例执行策略的优先级越高,或当对应页面测试用例执行失败时的重复执行次数提高;
[0074]-所述第一待测页面的修改记录信息,例如,所述测试用例执行策略包括仅对所述修改记录信息所对应的内容进行检测,或者,对整个页面进行测试、但提高对所述修改记录信息所对应的内容的重复执行次数;
[0075]-所述第一待测页面的访问记录信息,例如,若所述第一待测页面的访问记录信息较多,或访问记录所显示的访问时间与当前时间越接近,则认为该待测页面的重要性越高,从而测试用例执行策略的执行时间越提前,或者或当页面测试用例执行失败时的重复执行次数提闻。
[0076]对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此夕卜,显然“包括” 一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
【权利要求】
1.一种用于实现页面测试的方法,其中,该方法包括以下步骤: a获取第一待测页面; b对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面; c对所述第一受测页面进行解析处理,以确定所述第一受测页面所对应的页面数据结构; d根据所述第一待测页面所对应的页面测试用例,以及所述页面数据结构,对所述第一受测页面进行测试,以获得所述第一待测页面所对应的第一测试结果。
2.根据权利要求1所述的方法,其中,该方法还包括: -当所述页面测试用例包括关于所述第一受测页面的用户交互操作,获取与所述用户交互操作相对应的第二待测页面; X对于所述第二待测页面,执行所述步骤b、c和d中的操作,以获得与所述第二待测页面相对应的第二测试结果。
3.根据权利要求2所述的方法,其中,所述步骤X包括: -将所述第二待测页面与 已完成测试的参考待测页面相比较,以获得所述第二待测页面相对所述参考待测页面的差分待测页面; -根据所述差分待测页面,执行所述步骤b、c和d中的操作,以获得与所述差分待测页面相对应的差分测试结果; -根据所述差分测试结果,以及所述参考待测页面所对应的参考测试结果,确定所述第二测试结果。
4.根据权利要求1至3中任一项所述的方法,其中,所述步骤b包括: -根据预定的格式转换规则,对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面,其中,所述格式转换规则包括在所述目标标记语言格式与所述第一待测页面所对应的标记语言格式之间的标记映射关系。
5.根据权利要求1至4中任一项所述的方法,其中,所述步骤b包括: bl检测所述第一待测页面是否与所述目标语言格式失配; -当所述第一待测页面与所述目标语言格式失配,对所述第一待测页面进行格式转换处理,以获得与所述目标标记语言格式相对应的第一受测页面。
6.根据权利要求5所述的方法,其中,所述步骤bl包括: -根据所述第一待测页面的页面特征信息,确定所述第一待测页面所对应的标记语言格式; -将所述第一待测页面所对应的标记语言格式与所述目标标记语言格式相比较,以检测所述第一待测页面是否与所述目标语言格式失配。
7.根据权利要求1至6中任一项所述的方法,其中,所述步骤d包括: dl根据所述页面测试用例,通过对应的访问接口在所述页面数据结构中检查是否包括所述页面测试用例所对应的数据对象; -将对应的检查结果作为所述第一待测页面所对应的第一测试结果。
8.根据权利要求7所述的方法,其中,所述步骤dl包括: -根据所述页面测试用例,结合预定的测试用例执行策略,通过对应的访问接口在所述页面数据结构中检查是否包括所述页面测试用例所对应的数据对象。
9.根据权利要求8所述的方法,其中,该方法还包括: -根据所述第一待测页面的页面相关信息,确定所述测试用例执行策略; 其中,所述页面相关信息包括以下至少任一项: -所述第一待测页面的优先级; -所述第一待测页面的修改记录信息; -所述第一待测页面的访问记录信息。
10.根据权利要求1至9中任一项所述的方法,其中,所述步骤a包括: -通过与终端访问配置信息相对应的页面访问请求,获取所述第一待测页面。
11.一种用于实现页面测试的测试设备,其中,该设备包括: 获取装置,用于获取第一待测页面; 转换装置,用于对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页 面; 解析装置,用于对所述第一受测页面进行解析处理,以确定所述第一受测页面所对应的页面数据结构; 测试装置,用于根据所述第一待测页面所对应的页面测试用例,以及所述页面数据结构,对所述第一受测页面进行测试,以获得所述第一待测页面所对应的第一测试结果。
12.根据权利要求11所述的测试设备,其中,该设备还包括: 交互获取装置,用于当所述页面测试用例包括关于所述第一受测页面的用户交互操作,获取与所述用户交互操作相对应的第二待测页面; 迭代装置,用于对于所述第二待测页面,执行所述转换装置、解析装置和测试装置中的操作,以获得与所述第二待测页面相对应的第二测试结果。
13.根据权利要求12所述的测试设备,其中,所述迭代装置用于: -将所述第二待测页面与已完成测试的参考待测页面相比较,以获得所述第二待测页面相对所述参考待测页面的差分待测页面; -根据所述差分待测页面,执行所述转换装置、解析装置和测试装置中的操作,以获得与所述差分待测页面相对应的差分测试结果; -根据所述差分测试结果,以及所述参考待测页面所对应的参考测试结果,确定所述第二测试结果。
14.根据权利要求11至13中任一项所述的测试设备,其中,所述转换装置用于: -根据预定的格式转换规则,对所述第一待测页面进行格式转换处理,以获得与目标标记语言格式相对应的第一受测页面,其中,所述格式转换规则包括在所述目标标记语言格式与所述第一待测页面所对应的标记语言格式之间的标记映射关系。
15.根据权利要求11至14中任一项所述的测试设备,其中,所述转换装置包括: 检测单元,用于检测所述第一待测页面是否与所述目标语言格式失配; 转换单元,用于当所述第一待测页面与所述目标语言格式失配,对所述第一待测页面进行格式转换处理,以获得与所述目标标记语言格式相对应的第一受测页面。
16.根据权利要求15所述的测试设备,其中,所述检测单元用于:-根据所述第一待测页面的页面特征信息,确定所述第一待测页面所对应的标记语言格式; -将所述第一待测页面所对应的标记语言格式与所述目标标记语言格式相比较,以检测所述第一待测页面是否与所述目标语言格式失配。
17.根据权利要求11至16中任一项所述的测试设备,其中,所述测试装置包括: 用例检测单元,用于根据所述页面测试用例,通过对应的访问接口在所述页面数据结构中检查是否包括所述页面测试用例所对应的数据对象; 整合单元,用于将对应的检查结果作为所述第一待测页面所对应的第一测试结果。
18.根据权利要求17所述的测试设备,其中,所述用例检测单元用于: -根据所述页面测试用例,结合预定的测试用例执行策略,通过对应的访问接口在所述页面数据结构中检查是否包括所述页面测试用例所对应的数据对象。
19.根据权利要求18所述的测试设备,其中,该设备还包括: 策略确定装置,用于根据所述第一待测页面的页面相关信息,确定所述测试用例执行策略; 其中,所述页面相关信息包括以下至少任一项: -所述第一待测页面的优先级; -所述第一待测页面的修改记录信息; -所述第一待测页面的访问记录信息。
20.根据权利要求11至19中任一项所述的测试设备,其中,所述获取装置用于: -通过与终端访问配置信息相对应的页面访问请求,获取所述第一待测页面。
【文档编号】G06F11/36GK103810091SQ201210450891
【公开日】2014年5月21日 申请日期:2012年11月12日 优先权日:2012年11月12日
【发明者】刘正礼, 刘斌, 李霄文 申请人:百度在线网络技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1