遍历测试方法、设备、装置及计算机可读存储介质与流程

文档序号:17601139发布日期:2019-05-07 20:20阅读:198来源:国知局
遍历测试方法、设备、装置及计算机可读存储介质与流程

本发明涉及测试技术领域,尤其涉及一种遍历测试方法、设备、装置及计算机可读存储介质。



背景技术:

为了提高网站的可靠性,改善用户体验,需要对相关站点进行遍历测试。在现有技术中,通过将测试域所限定的范围内的所有内容,包括文本、图片、超链接、js、css、源码规范等全部预先提取出来,再对已经提取出的内容逐一进行测试。然而,这种测试方式将占用大量的存储资源,且测试速率较慢,导致测试效率降低。

上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。



技术实现要素:

本发明的主要目的在于提供一种遍历测试方法,旨在解决上述测试占用存储资源多、测试速率慢的技术问题,以提高测试效率。

为实现上述目的,本发明提供一种遍历测试方法,包括以下步骤:

获取测试配置信息,并根据所述测试配置信息初始化测试框架,其中,所述测试配置信息包括测试域信息和测试规则信息,所述测试框架包括测试链表和测试规则;

根据所述测试链表获取待测链接,并请求所述待测链接;

解析所述待测链接的页面内容,并根据所述测试规则校验所述页面内容,生成内容测试结果;

将所述内容测试结果写入测试报告中;

返回根据所述测试链表获取待测链接,并请求所述待测链接的步骤,直至遍历所述测试链表中的全部待测链接。

优选地,获取测试配置信息,并根据所述测试配置信息初始化测试框架的步骤包括:

获取测试配置信息,其中,所述测试域信息包括数据驱动文件信息;

根据所述数据驱动文件信息,生成测试链表;

其中,所述测试链表的数据域包括数据驱动的内容数据,所述测试链表的指针域包括数据驱动的指向数据。

优选地,在解析所述待测链接的页面内容的步骤之后,所述遍历测试方法还包括以下步骤:

提取所述待测链接中的页面链接;

根据所述测试域信息,判断所述页面链接是否处于所述测试域中;

当所述页面链接处于所述测试域中时,将所述页面链接添加至所述测试链表中。

优选地,当所述页面链接处于所述测试域中时,将所述页面链接添加至所述测试链表中的步骤包括:

当所述页面链接处于所述测试域中时,判断所述测试链表中是否存在与所述页面链接一致的待测链接;

当所述测试链表中不存在与所述页面链接一致的待测链接时,将所述页面链接添加至所述测试链表中。

优选地,在根据所述测试链表获取待测链接,并请求所述待测链接的步骤之后,所述遍历测试方法还包括以下步骤:

获取所述待测链接的连接参数,并根据所述测试规则校验所述连接参数,生成连接测试结果;

将所述连接测试结果写入所述测试报告中。

优选地,所述测试配置信息还包括预设连接参数范围;

根据所述测试链表获取待测链接,并请求所述待测链接的步骤包括:

根据所述测试链表获取待测链接,请求所述待测链接,并检测请求所述待测链接过程中的连接参数;

当所述连接参数超出所述预设连接参数范围时,暂停请求所述待测链接,并生成连接记录;

在遍历所述测试链表中全部未暂停的待测链接之后,根据所述连接记录,获取暂停的待测链接;

比对对应于同一暂停的所述待测链接的连接记录数目和预设数目;

当所述连接记录数目小于所述预设数目时,请求所述待测链接;

当所述连接记录数目大于或等于所述预设数目时,停止请求所述待测链接,并生成连接提示信息。

优选地,所述测试配置信息还包括模拟浏览器配置信息;

根据所述测试链表获取待测链接,并请求所述待测链接的步骤包括:

根据所述测试链表获取待测链接;

判断所述待测链接是否需要通过浏览器请求;

当所述待测链接需要通过浏览器请求时,调用所述模拟浏览器,请求所述待测链接;

当所述待测链接不需要通过浏览器请求时,直接请求所述待测链接。

为实现上述目的,本发明还提出一种遍历测试设备,所述遍历测试设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现遍历测试方法的步骤,所述遍历测试方法包括以下步骤:获取测试配置信息,并根据所述测试配置信息初始化测试框架,其中,所述测试配置信息包括测试域信息和测试规则信息,所述测试框架包括测试链表和测试规则;根据所述测试链表获取待测链接,并请求所述待测链接;解析所述待测链接的页面内容,并根据所述测试规则校验所述页面内容,生成内容测试结果;将所述内容测试结果写入测试报告中;返回根据所述测试链表获取待测链接,并请求所述待测链接的步骤,直至遍历所述测试链表中的全部待测链接。

为实现上述目的,本发明还提出一种遍历测试装置,所述遍历测试装置包括测试配置模块、链接请求模块、内容校验模块和报告写入模块,其中,所述测试配置模块用以获取测试配置信息,并根据所述测试配置信息初始化测试框架,其中,所述测试配置信息包括测试域信息和测试规则信息,所述测试框架包括测试链表和测试规则;所述链接请求模块用以根据所述测试链表获取待测链接,并请求所述待测链接;所述内容校验模块用以解析所述待测链接的页面内容,并根据所述测试规则校验所述页面内容,生成内容测试结果;所述报告写入模块用以将所述内容测试结果写入测试报告中。

为实现上述目的,本发明进一步提出一种计算机可读存储介质,所述计算机可读存储介质上存储有遍历测试程序,所述遍历测试程序被处理器执行时实现遍历测试方法的步骤,所述遍历测试方法包括以下步骤:获取测试配置信息,并根据所述测试配置信息初始化测试框架,其中,所述测试配置信息包括测试域信息和测试规则信息,所述测试框架包括测试链表和测试规则;根据所述测试链表获取待测链接,并请求所述待测链接;解析所述待测链接的页面内容,并根据所述测试规则校验所述页面内容,生成内容测试结果;将所述内容测试结果写入测试报告中;返回根据所述测试链表获取待测链接,并请求所述待测链接的步骤,直至遍历所述测试链表中的全部待测链接。

在本发明技术方案中,遍历测试方法包括以下步骤:获取测试配置信息,并根据测试配置信息初始化测试框架,其中,测试配置信息包括测试域信息和测试规则信息,测试框架包括测试链表和测试规则,测试链表与测试域信息相对应,测试规则与测试规则信息相对应;根据测试链表获取待测链接,并请求待测链接;解析待测链接的页面内容,并根据测试规则校验页面内容,生成内容测试结果;将内容测试结果写入测试报告中;返回根据测试链表获取待测链接,并请求待测链接的步骤,直至遍历测试链表中的全部待测链接。通过测试链表对测试域内的页面内容进行全面遍历测试,不同于现有技术中通过预先提取出全部的待测内容再集中进行测试的方式,在本方案中,由包括获取待测链接、请求待测链接、对待测链接的页面内容进行解析和校验、将内容测试结果写入测报告中的步骤形成一个测试循环,由于每个测试循环所需占用的存储资源较小,且测试速率较大,从而有利于提高遍历测试整体的测试效率。

附图说明

图1为本发明遍历测试方法第一实施例的流程示意图;

图2为本发明遍历测试方法第三实施例的流程示意图;

图3为本发明遍历测试方法第四实施例的流程示意图;

图4为本发明遍历测试方法第五实施例的流程示意图;

图5为本发明遍历测试方法第六实施例中步骤s200的细化流程示意图;

图6为本发明遍历测试方法第七实施例中步骤s200的细化流程示意图;

图7是本发明实施例方案涉及的硬件运行环境的遍历测试设备的结构示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例的主要解决方案是:基于测试链表对测试域内的页面内容进行全面遍历测试,在每个测试循环中执行获取待测链接、请求待测链接、对待测链接的页面内容进行解析和校验、将内容测试结果写入测报告中的步骤。

由于现有技术中预先提取出全部的待测内容,再集中进行测试,导致对存储资源的占用较大,且测试速率较慢,测试效率低下。

本发明提供一种解决方案,基于测试链表对测试域内的页面内容进行全面遍历测试,由包括获取待测链接、请求待测链接、对待测链接的页面内容进行解析和校验、将内容测试结果写入测报告中的步骤形成一个测试循环,由于每个测试循环所需占用的存储资源较小,且测试速率较大,从而有利于提高遍历测试整体的测试效率。

本发明第一实施例提供一种遍历测试方法,如图1所示,遍历测试方法包括以下步骤:

步骤s100、获取测试配置信息,并根据测试配置信息初始化测试框架;

其中,测试配置信息包括测试域信息和测试规则信息,测试框架包括测试链表和测试规则。具体的,测试配置信息通常写在测试配置文件中,测试配置文件可以是可扩展标记语言(extensiblemarkuplanguage,xml)格式的,通过解析测试配置文件,得到测试配置信息。测试域信息包括测试域内容、测试域开关、过滤策略开关和数据驱动文件信息等,以给出具体的待测范围。根据不同的测试需求,可以定义不同的测试域,例如,在进行局部调试时,可以定义被调试的局部范围及与其密切关联的范围为测试域,通过测试域开关和过滤策略开关,打开对应的测试域内容,以提高测试效率;在进行整体调试时,可以定义整个站点范围为测试域,通过测试域开关和过滤策略开关,打开全部站点范围对应的测试域内容,以实现全面测试。当然,在采用数据驱动进行测试时,也可以根据数据驱动文件信息,得到相应的待测范围,即测试域内容。测试规则信息包括规则配置文件信息等,以启用和停用对应的测试规则,从而适应不同的测试需求,提高测试的灵活性。根据测试配置信息初始化测试框架具体包括初始化测试链表和初始化测试规则。其中,初始化测试链表也就是根据测试域信息生成测试链表,以待遍历测试过程中从测试链表中循环读取待测内容;初始化测试规则也就是根据测试规则信息装载测试规则,以待在遍历测试过程中调用。此外,测试配置信息还可以包括测试环境信息等,根据测试配置信息初始化测试框架还可以包括根据测试环境信息构建相应的测试环境,以保障遍历测试的正常进行。测试配置信息也可以包括测试名称等,以便对本次测试进行记录和区分。根据测试配置信息初始化测试框架也可以包括初始化待测链接的页面解析逻辑,以便在测试过程中对待测链接进行解析,以及初始化测试结果收集方法,以便整理测试结果等,从而为整个遍历测试做好所有的前期准备。

步骤s200、根据测试链表获取待测链接,并请求待测链接;

测试链表是根据测试域信息生成的,因此包括了待测链接。其中,测试链表可以一次生成,也可以在遍历测试过程中不断被填充以持续生成,后文中还将详细阐述。测试链表的元素包括数据域和指针域,在数据域中,包括了具体的待测链接,而在指针域中,包括了下一个待测链接的指向信息,在完成本待测链接的测试后,根据指针域中下一个待测链接的指向信息获取下一个待测链接,并继续下一个待测链接的测试,以驱动整个遍历测试的流转。在测量本待测链接时,通过请求待测链接以访问待测链接对应的页面内容。

步骤s300、解析待测链接的页面内容,并根据测试规则校验页面内容,生成内容测试结果;

通过解析待测链接的页面内容,将各类页面内容提取并分类,以根据相应的测试规则校验页面内容,生成内容测试结果。其中,页面内容具体可以包括文本内容、图片内容、超链接内容、脚本语言(例如javascript,js)内容、层叠样式表(cascadingstylesheets,css)内容和源码规范内容等。相应的,测试规则包括文本测试规则、图片测试规则、超链接测试规则、js测试规则、css测试规则和源码规范测试规则等,并分别进行文本校验、图片校验、超链接校验、js校验、css校验和源码规范校验等,同时生成内容测试结果。

步骤s400、将内容测试结果写入测试报告中;

将内容测试结果写入测试报告中,以便测试人员进行查验,从而对相应站点进行调试。具体的,在每执行一次具体的待测链接的测试时,在测试报告中添加写入该待测链接的测试结果,一方面有利于减少测试结果的记录错误,另一方面也有利于减少占用的内存资源,从而提高测试效率。

返回执行步骤s200,直至遍历测试链表中的全部待测链接。

返回执行根据测试链表获取待测链接,并请求待测链接的步骤,以获取下一待测链接,并对下一待测链接进行测试,直至遍历测试链表中的全部待测链接。具体的,在测试循环是根据链表顺序进行的情况下,可以通过判断最后一个测试链接是否对应于链表的最后一位元素确定,若是,表明已经遍历了全部待测链接,则完成本次测试;若否,则根据指针域所指向的下一待测链接,继续进行测试。在测试循环是根据其它顺序进行时,可以按照相应的循环顺序判断是否遍历了全部待测链接。在遍历全部待测链接后,将产生完整的测试报告,通过输出测试报告,以待测试人员查看,从而对相应的测试域进行调试。

在本实施例中,遍历测试方法包括以下步骤:获取测试配置信息,并根据测试配置信息初始化测试框架,其中,测试配置信息包括测试域信息和测试规则信息,测试框架包括测试链表和测试规则,测试链表与测试域信息相对应,测试规则与测试规则信息相对应;根据测试链表获取待测链接,并请求待测链接;解析待测链接的页面内容,并根据测试规则校验页面内容,生成内容测试结果;将内容测试结果写入测试报告中;返回根据测试链表获取待测链接,并请求待测链接的步骤,直至遍历测试链表中的全部待测链接。通过测试链表对测试域内的页面内容进行全面遍历测试,不同于现有技术中通过预先提取出全部的待测内容再集中进行测试的方式,在本方案中,由包括获取待测链接、请求待测链接、对待测链接的页面内容进行解析和校验、将内容测试结果写入测报告中的步骤形成一个测试循环,由于每个测试循环所需占用的存储资源较小,且测试速率较大,从而有利于提高遍历测试整体的测试效率。

基于上述第一实施例,如图2所示,在本发明的第二实施例中,步骤s100包括:

步骤s110、获取测试配置信息,其中,测试域信息包括数据驱动文件信息;

步骤s120、根据数据驱动文件信息,生成测试链表;

其中,测试链表的数据域包括数据驱动的内容数据,测试链表的指针域包括数据驱动的指向数据。在本实施例中,遍历测试是基于数据驱动方式,或至少部分是基于数据驱动方式进行的。在数据驱动方式中,由数据驱动测试过程的流转。根据数据驱动文件信息,将数据驱动文件的内容一次性全部填充入测试链表中,以待测试过程中的调用。

基于上述第一实施例,如图2所示,在本发明的第三实施例中,在解析待测链接的页面内容的步骤之后,遍历测试方法还包括以下步骤:

步骤s510、提取待测链接中的页面链接;

步骤s520、根据测试域信息,判断页面链接是否处于测试域中;

步骤s530、当页面链接处于测试域中时,将页面链接添加至测试链表中。

在本实施例中,测试链表是在测试过程中不断被填充而持续生成的,根据待测链接的页面内容,不断获取其它待测链接,并填充到测试链表中,以驱动测试的流转。具体的,在待测链接对应的页面上,可能还存在其它的页面链接,这些页面链接有些指向测试域以内的范围,也有些可能指向测试域以外的范围,因此,需要根据测试域信息对页面链接进行筛选,并将处于测试域中的页面链接添加至测试链表中。例如,当需要对域名后缀为.abc的全部页面进行测试时,假设某一待测链接的域名为def.abc,在该待测链接对应的页面上,还包括域名为ghi.def.abc和域名为mno.jkl的页面链接,那么,根据测试域信息可知,域名为ghi.def.abc的页面链接在测试域范围内,将ghi.def.abc添加至测试链表中,而域名为mno.jkl的页面链接不在测试域范围内,因此不添加该页面链接至测试链表中。但是,需要注意的是,针对mno.jkl这一页面链接本身的测试通常是包括在对待测链接def.abc的测试中的,也就是在步骤s300中,当测试规则包括超链接测试规则时,需要根据超链接测试规则对mno.jkl这一页面链接本身进行测试,并生成相应的测试结果。而由于mno.jkl这一页面链接不在测试域范围内,因此不再需要通过mno.jkl获取其指向的页面,并对页面上的其它内容进行测试。为了保障测试的全面,在选择测试链表的入口链接时,应尽量选择能够跳转到测试域信息所包含的所有页面的主页面,以免出现漏测。

需要注意的是,上述第二实施例和第三实施例也可以相结合,也就是针对部分采用数据驱动的测试,根据数据驱动文件信息填充测试链表的一部分,并根据页面链接在测试过程中不断填充测试链表,从而实现完整的测试。

基于上述第三实施例,如图3所示,在本发明的第四实施例中,步骤s530包括:

步骤s531、当页面链接处于测试域中时,判断测试链表中是否存在与页面链接一致的待测链接;

步骤s532、当测试链表中不存在与页面链接一致的待测链接时,将页面链接添加至测试链表中。

在本实施例中,考虑到在不同的待测链接所指向的页面中,可能存在相同的页面链接,为了避免重复测试,在获取到处于测试域中的页面链接之后,还执行去重操作,即判断测试链表中是否已经存在与页面链接一致的待测链接,若存在,则不再添加该页面链接至测试链表中,以提高测试效率,若不存在,则将该页面链接添加至测试链表中,以待测试。例如,去重可以采用布隆过滤方式,具体的,基于哈希表的数据结构,通过一个哈希函数将一个元素映射成一个位阵列中的一个点,以判断该元素是否已经在特定的集合中。布隆过滤具有很好的空间效率和查询时间,但是存在一定的误识别率。当出现误识别时,相当于该页面链接将被重复测试,但整体来说,布隆过滤的误识别率较小,对效率下降的影响并不很大,而通过去重,能够明显地提高测试效率。当然,也可以采用其它的去重方式对页面链接进行去重,以提高测试效率。

基于上述各实施例,如图4所示,在步骤s200之后,遍历测试方法还包括以下步骤:

步骤s600、获取待测链接的连接参数,并根据测试规则校验连接参数,生成连接测试结果;

步骤s700、将连接测试结果写入测试报告中。

其中,步骤s600和步骤s700可以与步骤s300和步骤s400同步进行,或者先后进行,即分别对待测链接的连接参数和页面内容进行测试,以实现更加全面的测试。其中,对连接参数的测试具体包括对请求返回码的校验、请求响应时间校验、请求返回数据大小校验和其它预设规则的校验等,以便测试人员优化待测链接的连接过程,改善用户体验。根据测试规则校验连接参数所得的连接测试结果可以写入到同一测试报告中,或者与内容测试结果分别写入不同的测试报告中,以便测试人员查看。具体的写入方式可以在步骤s100中根据测试配置信息初始化测试框架时定义,以满足测试人员的需求。

测试配置信息还包括预设连接参数范围,基于上述各实施例,如图5所示,在本发明的第六实施例中,步骤s200包括:

步骤s210、根据测试链表获取待测链接,请求待测链接,并检测请求待测链接过程中的连接参数;

步骤s220、当连接参数超出预设连接参数范围时,暂停请求待测链接,并生成连接记录;

步骤s230、在遍历测试链表中全部未暂停的待测链接之后,根据连接记录,获取暂停的待测链接;

步骤s240、比对对应于同一暂停的待测链接的连接记录数目和预设数目;

步骤s251、当连接记录数目小于预设数目时,请求待测链接;

步骤s252、当连接记录数目大于或等于预设数目时,停止请求待测链接,并生成连接提示信息。

在本实施例中,为了避免某个待测链接的连接存在问题,导致测试流程的停滞,降低测试效率,通过预设连接参数范围对各待测链接的连接过程进行调控。其中,预设连接参数范围具体可以包括连接超时时间范围、请求返回数据大小范围、请求返回码范围、请求间等待时间范围、线程数量范围等,当该待测链接的连接超时时间超过了连接超时时间范围,或请求返回数据大小超过了请求返回数据大小范围,或请求返回码不在请求返回码范围之内,或请求间等待时间超过了请求间等待时间范围,或同时连接的待测链接的线程数量超过了线程数量范围等时,则暂停请求该待测链接,并生成连接记录,以记录连接过程中具体的问题,继续下一待测链接的测试。考虑到某些待测链接的暂停可能是由于偶然因素造成的,为了减轻测试人员的负担,当遍历完成测试链表中全部未暂停的待测链接之后,根据连接记录,返回测试之前暂停的待测链接。通过比对对应于同一暂停的待测链接的连接记录数目和预设数目,确定该待测链接测试失败的次数,当测试失败的次数小于预设数目时,表明之前的暂停可能是由于偶然因素导致的,请求该待测链接;而连接记录数目大于或等于预设数目时,表明该待测链接始终不正常,则考虑存在其它故障,停止请求待测链接,并生成连接提示信息,以提示测试人员进行检查。

测试配置信息还包括模拟浏览器配置信息,基于上述各实施例,如图6所示,在本发明的第七实施例中,步骤s200包括:

步骤s260、根据测试链表获取待测链接;

步骤s270、判断待测链接是否需要通过浏览器请求;

步骤s281、当待测链接需要通过浏览器请求时,调用模拟浏览器,请求待测链接;

步骤s282、当待测链接不需要通过浏览器请求时,直接请求待测链接。

在本实施例中,考虑到在某些安全限制条件下,部分待测链接可能必须通过浏览器请求方能获得,因此,在获取待测链接之后,判断该待测链接是否需要通过浏览器请求,当待测链接需要通过浏览器请求时,调用模拟浏览器,请求待测链接,以驱动测试的正常进行;否则,直接请求待测链接,以提高测试效率。具体的,在判断某一待测链接是否需要通过浏览器请求时,可以先针对该待测链接进行试请求,当试请求失败时,直接调用模拟浏览器再次请求该待测链接,或者根据试请求的失败信息,确定该待测链接是否需要通过浏览器请求。

如图7所示,图7是本发明实施例方案涉及的硬件运行环境的终端,即遍历测试设备的结构示意图。

本发明实施例终端可以是服务器、pc,也可以是智能手机、平板电脑、电子书阅读器、mp3(movingpictureexpertsgroupaudiolayeriii,动态影像专家压缩标准音频层面3)播放器、mp4(movingpictureexpertsgroupaudiolayeriv,动态影像专家压缩标准音频层面3)播放器、便携计算机等具有显示功能的可移动式终端设备。

如图7所示,该终端可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

可选地,终端还可以包括摄像头、rf(radiofrequency,射频)电路,传感器、音频电路、wifi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在移动终端移动到耳边时,关闭显示屏和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

本领域技术人员可以理解,图7中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图7所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及遍历测试程序。

在图7所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的遍历测试程序,并执行以下操作:

获取测试配置信息,并根据测试配置信息初始化测试框架,其中,测试配置信息包括测试域信息和测试规则信息,测试框架包括测试链表和测试规则;

根据测试链表获取待测链接,并请求待测链接;

解析待测链接的页面内容,并根据测试规则校验页面内容,生成内容测试结果;

将内容测试结果写入测试报告中;

返回根据测试链表获取待测链接,并请求待测链接的步骤,直至遍历测试链表中的全部待测链接。

进一步的,处理器1001可以用于调用存储器1005中存储的遍历测试程序,获取测试配置信息,并根据测试配置信息初始化测试框架的操作包括:

获取测试配置信息,其中,测试域信息包括数据驱动文件信息;

根据数据驱动文件信息,生成测试链表;

其中,测试链表的数据域包括数据驱动的内容数据,测试链表的指针域包括数据驱动的指向数据。

进一步的,处理器1001可以用于调用存储器1005中存储的遍历测试程序,在解析待测链接的页面内容的操作之后,还执行以下操作:

提取待测链接中的页面链接;

根据测试域信息,判断页面链接是否处于测试域中;

当页面链接处于测试域中时,将页面链接添加至测试链表中。

进一步的,处理器1001可以用于调用存储器1005中存储的遍历测试程序,当页面链接处于测试域中时,将页面链接添加至测试链表中的操作包括:

当页面链接处于测试域中时,判断测试链表中是否存在与页面链接一致的待测链接;

当测试链表中不存在与页面链接一致的待测链接时,将页面链接添加至测试链表中。

进一步的,处理器1001可以用于调用存储器1005中存储的遍历测试程序,在根据测试链表获取待测链接,并请求待测链接的操作之后,还执行以下操作:

获取待测链接的连接参数,并根据测试规则校验连接参数,生成连接测试结果;

将连接测试结果写入测试报告中。

进一步的,处理器1001可以用于调用存储器1005中存储的遍历测试程序,测试配置信息还包括预设连接参数范围;

根据测试链表获取待测链接,并请求待测链接的操作包括:

根据测试链表获取待测链接,请求待测链接,并检测请求待测链接过程中的连接参数;

当连接参数超出预设连接参数范围时,暂停请求待测链接,并生成连接记录;

在遍历测试链表中全部未暂停的待测链接之后,根据连接记录,获取暂停的待测链接;

比对对应于同一暂停的待测链接的连接记录数目和预设数目;

当连接记录数目小于预设数目时,请求待测链接;

当连接记录数目大于或等于预设数目时,停止请求待测链接,并生成连接提示信息。

进一步的,处理器1001可以用于调用存储器1005中存储的遍历测试程序,测试配置信息还包括模拟浏览器配置信息;

根据测试链表获取待测链接,并请求待测链接的操作包括:

根据测试链表获取待测链接;

判断待测链接是否需要通过浏览器请求;

当待测链接需要通过浏览器请求时,调用模拟浏览器,请求待测链接;

当待测链接不需要通过浏览器请求时,直接请求待测链接。

此外,本发明实施例还提出一种遍历测试装置,遍历测试装置包括:

测试配置模块,用以获取测试配置信息,并根据测试配置信息初始化测试框架,其中,测试配置信息包括测试域信息和测试规则信息,测试框架包括测试链表和测试规则;

链接请求模块,用以根据测试链表获取待测链接,并请求待测链接;

内容校验模块,用以解析待测链接的页面内容,并根据测试规则校验页面内容,生成内容测试结果;

报告写入模块,用以将内容测试结果写入测试报告中。

进一步的,测试配置模块包括:

信息获取单元,用以获取测试配置信息,其中,测试域信息包括数据驱动文件信息;

链表生成单元,用以根据数据驱动文件信息,生成测试链表;

其中,测试链表的数据域包括数据驱动的内容数据,测试链表的指针域包括数据驱动的指向数据。

进一步的,遍历测试装置还包括:

链接提取模块,用以提取待测链接中的页面链接;

测试域判断模块,用以根据测试域信息,判断页面链接是否处于测试域中;

链表添加模块,用以当页面链接处于测试域中时,将页面链接添加至测试链表中。

进一步的,链表添加模块包括:

链接去重单元,用以当页面链接处于测试域中时,判断测试链表中是否存在与页面链接一致的待测链接;

链表添加单元,用以当测试链表中不存在与页面链接一致的待测链接时,将页面链接添加至测试链表中。

进一步的,遍历测试装置还包括:

连接校验模块,用以获取待测链接的连接参数,并根据测试规则校验连接参数,生成连接测试结果;

报告写入模块还用以将连接测试结果写入测试报告中。

进一步的,测试配置信息还包括预设连接参数范围;

链接请求模块包括:

连接单元,用以根据测试链表获取待测链接,请求待测链接,并检测请求待测链接过程中的连接参数;

停止单元,用以当连接参数超出预设连接参数范围时,暂停请求待测链接,并生成连接记录;

链接获取单元,用以在遍历测试链表中全部未暂停的待测链接之后,根据连接记录,获取暂停的待测链接;

比对单元,用以比对对应于同一暂停的待测链接的连接记录数目和预设数目;

连接单元还用以当连接记录数目小于预设数目时,请求待测链接;

停止单元还用以当连接记录数目大于或等于预设数目时,停止请求待测链接,并生成连接提示信息。

进一步的,测试配置信息还包括模拟浏览器配置信息;

链接请求模块包括:

连接单元,用以根据测试链表获取待测链接;

判断单元,用以判断待测链接是否需要通过浏览器请求;

连接单元用以当待测链接需要通过浏览器请求时,调用模拟浏览器,请求待测链接;

连接单元还用以当待测链接不需要通过浏览器请求时,直接请求待测链接。

此外,本发明实施例还提出一种计算机可读存储介质,计算机可读存储介质上存储有遍历测试程序,遍历测试程序被处理器执行时实现如下操作:

获取测试配置信息,并根据测试配置信息初始化测试框架,其中,测试配置信息包括测试域信息和测试规则信息,测试框架包括测试链表和测试规则;

根据测试链表获取待测链接,并请求待测链接;

解析待测链接的页面内容,并根据测试规则校验页面内容,生成内容测试结果;

将内容测试结果写入测试报告中;

返回根据测试链表获取待测链接,并请求待测链接的步骤,直至遍历测试链表中的全部待测链接。

进一步的,遍历测试程序被处理器执行时,获取测试配置信息,并根据测试配置信息初始化测试框架的操作包括:

获取测试配置信息,其中,测试域信息包括数据驱动文件信息;

根据数据驱动文件信息,生成测试链表;

其中,测试链表的数据域包括数据驱动的内容数据,测试链表的指针域包括数据驱动的指向数据。

进一步的,遍历测试程序被处理器执行时,在解析待测链接的页面内容的操作之后,还执行以下操作:

提取待测链接中的页面链接;

根据测试域信息,判断页面链接是否处于测试域中;

当页面链接处于测试域中时,将页面链接添加至测试链表中。

进一步的,遍历测试程序被处理器执行时,当页面链接处于测试域中时,将页面链接添加至测试链表中的操作包括:

当页面链接处于测试域中时,判断测试链表中是否存在与页面链接一致的待测链接;

当测试链表中不存在与页面链接一致的待测链接时,将页面链接添加至测试链表中。

进一步的,遍历测试程序被处理器执行时,在根据测试链表获取待测链接,并请求待测链接的操作之后,还执行以下操作:

获取待测链接的连接参数,并根据测试规则校验连接参数,生成连接测试结果;

将连接测试结果写入测试报告中。

进一步的,遍历测试程序被处理器执行时,测试配置信息还包括预设连接参数范围;

根据测试链表获取待测链接,并请求待测链接的操作包括:

根据测试链表获取待测链接,请求待测链接,并检测请求待测链接过程中的连接参数;

当连接参数超出预设连接参数范围时,暂停请求待测链接,并生成连接记录;

在遍历测试链表中全部未暂停的待测链接之后,根据连接记录,获取暂停的待测链接;

比对对应于同一暂停的待测链接的连接记录数目和预设数目;

当连接记录数目小于预设数目时,请求待测链接;

当连接记录数目大于或等于预设数目时,停止请求待测链接,并生成连接提示信息。

进一步的,遍历测试程序被处理器执行时,测试配置信息还包括模拟浏览器配置信息;

根据测试链表获取待测链接,并请求待测链接的操作包括:

根据测试链表获取待测链接;

判断待测链接是否需要通过浏览器请求;

当待测链接需要通过浏览器请求时,调用模拟浏览器,请求待测链接;

当待测链接不需要通过浏览器请求时,直接请求待测链接。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1