测试报告生成方法、设备、装置及计算机可读存储介质与流程

文档序号:17601071发布日期:2019-05-07 20:19阅读:164来源:国知局
测试报告生成方法、设备、装置及计算机可读存储介质与流程

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



背景技术:

测试报告是对测试过程和结果的记录,便于测试人员发现系统或站点中的问题,以待进一步的修正和维护。在现有技术中,测试报告的内容是由具体的测试过程决定的,测试报告中通常包括了测试过程所产生的全部测试数据,以便测试人员对系统或站点进行全面检查。然而,根据测试需求的不同,事实上测试人员通常并不需要知道全部的测试数据,这种不可订制的测试报告不利于测试人员的查看,并且通常会占用大量的存储资源,对测试效果造成了不利影响。

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



技术实现要素:

本发明的主要目的在于提供一种测试报告生成方法,旨在解决上述测试报告不可订制的技术问题,以改善测试效果。

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

根据测试需求,定义并初始化测试报告生成类;

根据测试链表获取当前待测目标,其中,所述测试链表是根据预设测试范围生成的;

根据测试规则测试所述当前待测目标,并生成测试数据;

将所述测试数据写入测试文件中;

返回根据测试链表获取当前待测目标的步骤,直至遍历所述测试链表中的全部待测目标;

基于所述测试文件和所述测试报告生成类生成测试报告。

优选地,根据测试需求,定义并初始化测试报告生成类的步骤包括:

获取待生成的测试报告的测试报告名;

根据所述测试报告名,获取与所述测试报告对应的报告内容信息和报告格式信息;

根据所述报告内容信息和所述报告格式信息,创建测试报告目录;

初始化所述测试报告目录对应的测试内部数据,所述测试内部数据包括所述测试报告目录中的数据结构及调用方法。

优选地,根据测试链表获取当前待测目标的步骤包括:

根据测试链表,请求获取当前待测目标,并检测请求获取所述当前待测目标的连接参数;

当所述连接参数超出预设连接参数范围时,暂停请求获取所述当前待测目标,并将所述待测目标及请求获取所述当前待测目标的累计暂停次数记录在所述测试文件的第一跳过数据中;

获取请求获取所述当前待测目标的预设次数;

比对所述累计暂停次数和所述预设次数;

当所述累计暂停次数小于所述预设次数时,请求获取所述待测目标;

当所述累计暂停次数大于或等于所述预设次数时,停止请求获取所述待测目标,并将所述待测目标记录在所述测试文件的第二跳过数据中。

优选地,在根据测试链表获取当前待测目标的步骤之后,所述测试报告生成方法还包括以下步骤:

提取所述待测目标中的链接;

判断所述链接是否处于预设测试范围以内;

当所述链接处于所述预设测试范围以内时,将所述链接添加至所述测试链表中;

当所述链接处于所述预设测试范围之外时,将所述链接记录在所述测试文件的第三跳过数据中。

优选地,当所述链接处于所述预设测试范围以内时,将所述链接添加至所述测试链表中的步骤包括:

当所述链接处于所述预设测试范围以内时,判断所述测试链表中是否存在与所述链接相对应的待测目标;

当所述测试链表中存在与所述链接相对应的待测目标时,将所述链接记录在所述测试文件的第四跳过数据中;

当所述测试链表中不存在与所述链接相对应的待测目标时,将所述链接添加至所述测试链表中。

优选地,所述测试规则包括连接测试规则、内容测试规则和订制测试规则;

根据测试规则测试所述当前待测目标,并生成测试数据的步骤包括:

检测根据所述测试链表获取当前待测目标的连接参数;

根据所述连接测试规则校验所述连接参数,并生成连接测试数据;

解析所述待测目标的内容信息;

根据所述内容测试规则校验所述内容信息,并生成内容测试数据;

根据所述订制测试规则校验所述当前待测目标,并生成订制测试数据。

优选地,基于所述测试文件和所述测试报告生成类生成测试报告的步骤包括:

基于所述测试报告生成类,解析所述测试文件;

根据所述测试文件的解析结果,合成超文本标记语言数据;

根据所述超文本标记语言数据,生成超文本标记语言文件,以得到测试报告。

为实现上述目的,本发明还提出一种测试报告生成设备,所述测试报告生成设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现测试报告生成方法的步骤,所述测试报告生成方法包括以下步骤:根据测试需求,定义并初始化测试报告生成类;根据测试链表获取当前待测目标,其中,所述测试链表是根据预设测试范围生成的;根据测试规则测试所述当前待测目标,并生成测试数据;将所述测试数据写入测试文件中;返回根据测试链表获取当前待测目标的步骤,直至遍历所述测试链表中的全部待测目标;基于所述测试文件和所述测试报告生成类生成测试报告。

为实现上述目的,本发明还提出一种测试报告生成装置,所述测试报告生成装置包括初始化模块、获取模块、测试模块、写入模块和生成模块,其中,所述初始化模块用以根据测试需求,定义并初始化测试报告生成类;所述获取模块用以根据测试链表获取当前待测目标,其中,所述测试链表是根据预设测试范围生成的;所述测试模块用以根据测试规则测试所述当前待测目标,并生成测试数据;所述写入模块用以将所述测试数据写入测试文件中;所述生成模块用以基于所述测试文件和所述测试报告生成类生成测试报告。

为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有测试报告生成程序,所述测试报告生成程序被处理器执行时实现测试报告生成方法的步骤,所述测试报告生成方法包括以下步骤:根据测试需求,定义并初始化测试报告生成类;根据测试链表获取当前待测目标,其中,所述测试链表是根据预设测试范围生成的;根据测试规则测试所述当前待测目标,并生成测试数据;将所述测试数据写入测试文件中;返回根据测试链表获取当前待测目标的步骤,直至遍历所述测试链表中的全部待测目标;基于所述测试文件和所述测试报告生成类生成测试报告。

在本发明技术方案中,测试报告生成方法包括以下步骤:根据测试需求,定义并初始化测试报告生成类;根据测试链表获取当前待测目标,其中,所述测试链表是根据预设测试范围生成的;根据测试规则测试所述当前待测目标,并生成测试数据;将所述测试数据写入测试文件中;返回根据测试链表获取当前待测目标的步骤,直至遍历所述测试链表中的全部待测目标;基于所述测试文件和所述测试报告生成类生成测试报告。通过根据测试需求定义并初始化测试报告生成类,构建所需的测试报告的框架。在测试过程中,采用基于链表的方式进行测试,并在每一次测试循环中,将所得的测试数据写入测试文件中,在遍历全部待测目标后,即可获得包含全部测试数据的测试文件。进一步基于测试文件和测试报告生成类生成符合测试需求的测试报告,从而实现测试报告的订制,以便测试人员查看测试报告,改善测试效果。同时,这种根据测试需求而订制产生的测试报告通常并不包括全部测试数据,因此有利于减小测试报告所需的存储资源,通过将节约的存储资源投入到测试的其它环节中,还有利于进一步改善测试效果。

附图说明

图1为本发明测试报告生成方法第一实施例的流程示意图;

图2为本发明测试报告生成方法第二实施例中步骤s100的细化流程示意图;

图3为本发明测试报告生成方法第三实施例中步骤s200的细化流程示意图;

图4为本发明测试报告生成方法第四实施例的流程示意图;

图5为本发明测试报告生成方法第五实施例中步骤s631的细化流程示意图;

图6为本发明测试报告生成方法第六实施例中步骤s300的细化流程示意图;

图7为本发明测试报告生成方法第七实施例中步骤s500的细化流程示意图;

图8是本发明实施例方案涉及的硬件运行环境的测试报告生成设备的结构示意图。

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

具体实施方式

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

本发明实施例的主要解决方案是:通过根据测试需求定义并初始化测试报告生成类,并基于链表进行测试,将生成的测试数据写入测试文件中,通过解析测试文件,基于测试报告生成满足测试需求的测试报告,以实现测试报告的订制。

由于现有技术的测试报告中包括了测试过程中涉及的全部测试数据,不便测试人员的查看,且通常占据大量的存储资源,导致测试效果变差。

本发明提供一种解决方案,通过根据测试需求定义并初始化测试报告生成类,并基于链表进行测试,将生成的测试数据写入测试文件中,通过解析测试文件,基于测试报告生成类生成满足测试需求的测试报告,以方便测试人员的查看,减小存储资源的占用,改善测试效果。

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

步骤s100、根据测试需求,定义并初始化测试报告生成类;

为了使最终生成的测试报告满足测试人员的测试需求,包括全部所需的测试数据,并排除不需要的测试数据,通过定义并初始化测试报告生成类,构建测试报告的框架。测试报告的框架可以包括测试报告的内容框架和格式框架,以便于测试人员查看测试报告。在定义并初始化测试报告生成类时,主要是对测试过程及测试报告生成过程中可能涉及到的参量、方法等进行定义并初始化,后文中还将详细阐述。

步骤s200、根据测试链表获取当前待测目标;

链表是一种非连续、非顺序的存储结构。测试链表是根据预设测试范围生成的,包括了待测目标。测试链表可以根据数据驱动文件一次生成,也可以在遍历测试过程中不断被填充以持续生成,后文中还将详细阐述。测试链表的元素包括数据域和指针域,在数据域中,包括了具体的待测目标,而在指针域中,包括了下一个待测目标的指向信息,在完成本待测目标的测试后,根据指针域中下一个待测目标的指向信息获取下一个待测目标,并继续下一个待测目标的测试,以驱动整个测试的流转。特别的,在站点测试中,待测目标可以是待测链接,在测量本待测链接时,通过请求待测链接以访问待测链接对应的页面内容。

步骤s300、根据测试规则测试当前待测目标,并生成测试数据;

测试规则通常是与待测目标和测试需求等因素相关的。在测试过程中,根据测试规则,对待测目标进行测试,并生成测试数据。测试数据包括了测试过程中所涉及的全部或部分数据,并且涵盖了最终的测试报告中所需的全部数据。具体的,测试数据可以包括待测目标的指向信息、待测目标是否测试成功等信息,后文中还将详细阐述。

步骤s400、将测试数据写入测试文件中;

在每一测试循环中,根据测试规则测试当前待测目标后,将测试数据写入测试文件中,以存储测试数据,便于后续生成测试报告时调用测试文件中的相关内容。测试文件通常是配置文件的一种,测试数据可以通过键值对等形式写入在测试文件中,以避免在测试过程中对测试数据进行复杂的处理,从而提高测试效率。

返回步骤s200,直至遍历测试链表中的全部待测目标;

在每一测试循环中,执行上述步骤s200至步骤s400,直至遍历测试链表中的全部待测目标,以完成预设测试范围内全部待测目标的测试,得到包括完整测试数据的测试文件。具体的,在测试循环是根据链表顺序进行的情况下,可以通过判断最后一个待测目标是否对应于链表的最后一位元素确定,若是,表明已经遍历了全部待测目标,则完成本次测试;若否,则根据指针域所指向的下一待测目标,继续进行测试。在测试循环是根据其它顺序进行时,可以按照相应的循环顺序判断是否遍历了全部待测目标。

步骤s500、基于测试文件和测试报告生成类生成测试报告。

由于测试文件中所写入的通常是键值对等形式的测试数据,并不便于测试人员的查看,因此,通过解析测试文件,基于测试报告生成类以生成测试报告。由于测试报告生成类中已经预先构建了测试报告的框架,包括内容信息和格式信息等,因此,基于测试文件和测试报告生成类,提取出相应的内容信息,并按照预设的格式信息组织所提取的内容信息,生成测试报告,以待测试人员查看。

在本实施例中,测试报告生成方法包括以下步骤:根据测试需求,定义并初始化测试报告生成类;根据测试链表获取当前待测目标,其中,所述测试链表是根据预设测试范围生成的;根据测试规则测试所述当前待测目标,并生成测试数据;将所述测试数据写入测试文件中;返回根据测试链表获取当前待测目标的步骤,直至遍历所述测试链表中的全部待测目标;基于所述测试文件和所述测试报告生成类生成测试报告。通过根据测试需求定义并初始化测试报告生成类,构建所需的测试报告的框架。在测试过程中,采用基于链表的方式进行测试,并在每一次测试循环中,将所得的测试数据写入测试文件中,在遍历全部待测目标后,即可获得包含全部测试数据的测试文件。进一步基于测试文件和测试报告生成类生成符合测试需求的测试报告,从而实现测试报告的订制,以便测试人员查看测试报告,改善测试效果。同时,这种根据测试需求而订制产生的测试报告通常并不包括全部测试数据,因此有利于减小测试报告所需的存储资源,通过将节约的存储资源投入到测试的其它环节中,还有利于进一步改善测试效果。

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

步骤s110、获取待生成的测试报告的测试报告名;

步骤s120、根据测试报告名,获取与测试报告对应的报告内容信息和报告格式信息;

步骤s130、根据报告内容信息和报告格式信息,创建测试报告目录;

步骤s140、初始化测试报告目录对应的测试内部数据,测试内部数据包括测试报告目录中的数据结构及调用方法。

为了便于测试人员初始化测试报告生成类,可以预先为具体的测试报告框架设置对应的测试报告名,建立测试报告名和报告内容信息与报告格式信息之间的映射关系。那么,在初始化测试报告生成类时,通过获取测试人员所提供的待生成的测试报告的测试报告名,即可得到与该测试报告对应的报告内容信息和报告格式信息。根据报告内容信息和报告格式信息,创建测试报告目录,初始化测试报告目录对应的测试内部数据,其中,测试内部数据包括测试报告目录中的数据结构及调用方法,以便按照预设结构存储测试数据,在后续生成测试报告时,根据测试文件对测试报告目录进行填充,以生成测试报告。

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

步骤s210、根据测试链表,请求获取当前待测目标,并检测请求获取当前待测目标的连接参数;

步骤s220、当连接参数超出预设连接参数范围时,暂停请求获取当前待测目标,并将待测目标及请求获取当前待测目标的累计暂停次数记录在测试文件的第一跳过数据中;

步骤s230、获取请求获取当前待测目标的预设次数;

步骤s240、比对累计暂停次数和预设次数;

步骤s251、当累计暂停次数小于预设次数时,请求获取待测目标;

步骤s252、当累计暂停次数大于或等于预设次数时,停止请求获取待测目标,并将待测目标记录在测试文件的第二跳过数据中。

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

基于上述各实施例,如图4所示,在本发明的第四实施例中,在步骤s200之后,测试报告生成方法还包括以下步骤:

步骤s610、提取待测目标中的链接;

步骤s620、判断链接是否处于预设测试范围以内;

步骤s631、当链接处于预设测试范围以内时,将链接添加至测试链表中;

步骤s632、当链接处于预设测试范围之外时,将链接记录在测试文件的第三跳过数据中。

在本实施例中,测试链表是在测试过程中不断被填充而持续生成的,根据待测目标的内容,不断获取其它待测目标,并填充到测试链表中,以驱动测试的流转。具体的,在待测目标中可能还存在其它的链接,这些链接有些指向预设测试范围以内,也有些可能指向预设测试范围之外,因此,需要根据预设测试范围对链接进行筛选,并将处于预设测试范围以内的链接添加至测试链表中。在一具体示例中,以对站点的测试为例,待测目标具体为待测链接,当需要对域名后缀为.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获取其指向的页面,并对页面上的其它内容进行测试。为了保障测试的全面,在选择测试链表的入口链接时,应尽量选择能够跳转到预设测试范围所包含的所有待测目标的主页面,以免出现漏测。当然,在测试中,待测目标也可以是链接、页面以外的其它元素。

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

步骤s631a、当链接处于预设测试范围以内时,判断测试链表中是否存在与链接相对应的待测目标;

步骤s631b、当测试链表中存在与链接相对应的待测目标时,将链接记录在测试文件的第四跳过数据中;

步骤s631c、当测试链表中不存在与链接相对应的待测目标时,将链接添加至测试链表中。

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

基于上述各实施例,如图6所示,在本发明的第六实施例中,测试规则包括连接测试规则、内容测试规则和订制测试规则;

步骤s300包括:

步骤s310、检测根据测试链表获取当前待测目标的连接参数;

步骤s320、根据连接测试规则校验连接参数,并生成连接测试数据;

步骤s330、解析待测目标的内容信息;

步骤s340、根据内容测试规则校验内容信息,并生成内容测试数据;

步骤s350、根据订制测试规则校验当前待测目标,并生成订制测试数据。

对待测目标的测试具体包括连接测试、内容测试和订制测试等。上述步骤s310和步骤s320,步骤s330和步骤s340,步骤s350的顺序不受限制,也就是连接测试、内容测试和订制测试的顺序不受限制。其中,连接测试具体可以包括对请求返回码的校验、请求响应时间校验、请求返回数据大小校验等,以便测试人员根据连接测试数据优化待测目标的连接过程,改善用户体验。在进行内容测试时,通过解析待测目标的内容信息,将各个类型的内容信息提取并分类,以根据相应的测试规则校验内容信息,生成内容测试数据。其中,内容信息具体可以包括文本内容、图片内容、超链接内容、脚本语言(例如javascript,js)内容、层叠样式表(cascadingstylesheets,css)内容和源码规范内容等。相应的,内容测试规则包括文本测试规则、图片测试规则、超链接测试规则、js测试规则、css测试规则和源码规范测试规则等,并分别进行文本校验、图片校验、超链接校验、js校验、css校验和源码规范校验等,同时生成内容测试数据。而订制测试规则通常是由测试人员根据测试需求所订制的,例如对超文本传输协议(hypertexttransferprotocol,http)和以安全为目标的http通道(hypertexttransferprotocoloversecuresocketlayer,https)的校验等。

基于上述各实施例,如图7所示,在本发明的第七实施例中,步骤s500包括:

步骤s510、基于测试报告生成类,解析测试文件;

步骤s520、根据测试文件的解析结果,合成超文本标记语言(hypertextmarkuplanguage,html)数据;

步骤s530、根据html数据,生成html文件,以得到测试报告。

html是标准通用标记语言下的一个应用,也是一种规范和一种标准,通过标记符号来标记要显示的内容的各个部分,运用简单且功能强大,具有很好的可扩展性和通用性。在完成遍历测试后,将得到包括测试概要数据、待测目标、待测目标的成功数据、待测目标的失败数据以及跳过数据等的测试文件,然而,测试文件通常为配置文件,其中的内容是键值对,不便查看。基于测试报告生成类,对测试文件进行解析,以提取出与测试需求相应的测试数据,即满足测试需求的报告内容信息,并结合报告格式信息,合成html数据,进一步生成html文件,以得到满足测试需求的测试报告,更加直观地展示测试结果,方便测试人员查看。

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

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

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

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

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

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

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

根据测试需求,定义并初始化测试报告生成类;

根据测试链表获取当前待测目标;

根据测试规则测试当前待测目标,并生成测试数据,其中,测试链表是根据预设测试范围生成的;

将测试数据写入测试文件中;

返回根据测试链表获取当前待测目标的步骤,直至遍历测试链表中的全部待测目标;

基于测试文件和测试报告生成类生成测试报告。

进一步的,处理器1001可以用于调用存储器1005中存储的测试报告生成程序,根据测试需求,定义并初始化测试报告生成类的操作包括:

获取待生成的测试报告的测试报告名;

根据测试报告名,获取与测试报告对应的报告内容信息和报告格式信息;

根据报告内容信息和报告格式信息,创建测试报告目录;

初始化测试报告目录对应的测试内部数据,测试内部数据包括测试报告目录中的数据结构及调用方法。

进一步的,处理器1001可以用于调用存储器1005中存储的测试报告生成程序,根据测试链表获取当前待测目标的操作包括:

根据测试链表,请求获取当前待测目标,并检测请求获取当前待测目标的连接参数;

当连接参数超出预设连接参数范围时,暂停请求获取当前待测目标,并将待测目标及请求获取当前待测目标的累计暂停次数记录在测试文件的第一跳过数据中;

获取请求获取当前待测目标的预设次数;

比对累计暂停次数和预设次数;

当累计暂停次数小于预设次数时,请求获取待测目标;

当累计暂停次数大于或等于预设次数时,停止请求获取待测目标,并将待测目标记录在测试文件的第二跳过数据中。

进一步的,处理器1001可以用于调用存储器1005中存储的测试报告生成程序,在根据测试链表获取当前待测目标的操作之后,还执行以下操作:

提取待测目标中的链接;

判断链接是否处于预设测试范围以内;

当链接处于预设测试范围以内时,将链接添加至测试链表中;

当链接处于预设测试范围之外时,将链接记录在测试文件的第三跳过数据中。

进一步的,处理器1001可以用于调用存储器1005中存储的测试报告生成程序,当链接处于预设测试范围以内时,将链接添加至测试链表中的操作包括:

当链接处于预设测试范围以内时,判断测试链表中是否存在与链接相对应的待测目标;

当测试链表中存在与链接相对应的待测目标时,将链接记录在测试文件的第四跳过数据中;

当测试链表中不存在与链接相对应的待测目标时,将链接添加至测试链表中。

进一步的,处理器1001可以用于调用存储器1005中存储的测试报告生成程序,测试规则包括连接测试规则、内容测试规则和订制测试规则;

根据测试规则测试当前待测目标,并生成测试数据的操作包括:

检测根据测试链表获取当前待测目标的连接参数;

根据连接测试规则校验连接参数,并生成连接测试数据;

解析待测目标的内容信息;

根据内容测试规则校验内容信息,并生成内容测试数据;

根据订制测试规则校验当前待测目标,并生成订制测试数据。

进一步的,处理器1001可以用于调用存储器1005中存储的测试报告生成程序,基于测试文件和测试报告生成类生成测试报告的操作包括:

基于测试报告生成类,解析测试文件;

根据测试文件的解析结果,合成超文本标记语言数据;

根据超文本标记语言数据,生成超文本标记语言文件,以得到测试报告。

此外,本发明实施例还提出一种测试报告生成装置,测试报告生成装置包括:

初始化模块,用以根据测试需求,定义并初始化测试报告生成类;

获取模块,用以根据测试链表获取当前待测目标,其中,所述测试链表是根据预设测试范围生成的;

测试模块,用以根据测试规则测试当前待测目标,并生成测试数据;

写入模块,用以将测试数据写入测试文件中;

生成模块,用以基于测试文件和测试报告生成类生成测试报告。

进一步的,初始化模块包括:

名称获取单元,用以获取待生成的测试报告的测试报告名;

信息获取单元,用以根据测试报告名,获取与测试报告对应的报告内容信息和报告格式信息;

目录创建单元,用以根据报告内容信息和报告格式信息,创建测试报告目录;

内部初始化单元,用以初始化测试报告目录对应的测试内部数据,测试内部数据包括测试报告目录中的数据结构及调用方法。

进一步的,获取模块包括:

第一连接检测单元,用以根据测试链表,请求获取当前待测目标,并检测请求获取当前待测目标的连接参数;

请求单元,用以当连接参数超出预设连接参数范围时,暂停请求获取当前待测目标;

写入模块还用以将待测目标及请求获取当前待测目标的累计暂停次数记录在测试文件的第一跳过数据中;

次数获取单元,用以获取请求获取当前待测目标的预设次数;

比对单元,用以比对累计暂停次数和预设次数;

请求单元还用以当累计暂停次数小于预设次数时,请求获取当前待测目标;

请求单元还用以当累计暂停次数大于或等于预设次数时,停止请求获取待测目标;

写入模块还用以将待测目标记录在测试文件的第二跳过数据中。

进一步的,测试报告生成装置还包括;

链接提取模块,用以提取待测目标中的链接;

范围判断模块,用以判断链接是否处于预设测试范围以内;

链表添加模块,用以当链接处于预设测试范围以内时,将链接添加至测试链表中;

写入模块还用以当链接处于预设测试范围之外时,将链接记录在测试文件的第三跳过数据中。

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

重复判断单元,用以当链接处于预设测试范围以内时,判断测试链表中是否存在与链接相对应的待测目标;

链接添加单元,用以当测试链表中不存在与链接相对应的待测目标时,将链接添加至测试链表中;

写入模块还用以当测试链表中存在与链接相对应的待测目标时,将链接记录在测试文件的第四跳过数据中。

进一步的,测试规则包括连接测试规则、内容测试规则和订制测试规则;

测试模块包括:

第二连接检测单元,用以检测根据测试链表获取当前待测目标的连接参数;

连接测试单元,用以根据连接测试规则校验连接参数,并生成连接测试数据;

内容解析单元,用以解析待测目标的内容信息;

内容测试单元,用以根据内容测试规则校验内容信息,并生成内容测试数据;

订制测试单元,用以根据订制测试规则校验当前待测目标,并生成订制测试数据。

进一步的,生成模块包括:

文件解析单元,用以基于测试报告生成类,解析测试文件;

合成单元,用以根据测试文件的解析结果,合成超文本标记语言数据;

生成单元,用以根据超文本标记语言数据,生成超文本标记语言文件,以得到测试报告。

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

根据测试需求,定义并初始化测试报告生成类;

根据测试链表获取当前待测目标;

根据测试规则测试当前待测目标,并生成测试数据,其中,测试链表是根据预设测试范围生成的;

将测试数据写入测试文件中;

返回根据测试链表获取当前待测目标的步骤,直至遍历测试链表中的全部待测目标;

基于测试文件和测试报告生成类生成测试报告。

进一步的,测试报告生成程序被处理器执行时,根据测试需求,定义并初始化测试报告生成类的操作包括:

获取待生成的测试报告的测试报告名;

根据测试报告名,获取与测试报告对应的报告内容信息和报告格式信息;

根据报告内容信息和报告格式信息,创建测试报告目录;

初始化测试报告目录对应的测试内部数据,测试内部数据包括测试报告目录中的数据结构及调用方法。

进一步的,测试报告生成程序被处理器执行时,根据测试链表获取当前待测目标的操作包括:

根据测试链表,请求获取当前待测目标,并检测请求获取当前待测目标的连接参数;

当连接参数超出预设连接参数范围时,暂停请求获取当前待测目标,并将待测目标及请求获取当前待测目标的累计暂停次数记录在测试文件的第一跳过数据中;

获取请求获取当前待测目标的预设次数;

比对累计暂停次数和预设次数;

当累计暂停次数小于预设次数时,请求获取待测目标;

当累计暂停次数大于或等于预设次数时,停止请求获取待测目标,并将待测目标记录在测试文件的第二跳过数据中。

进一步的,测试报告生成程序被处理器执行时,在根据测试链表获取当前待测目标的操作之后,还执行以下操作:

提取当前待测目标中的链接;

判断链接是否处于预设测试范围以内;

当链接处于预设测试范围以内时,将链接添加至测试链表中;

当链接处于预设测试范围之外时,将链接记录在测试文件的第三跳过数据中。

进一步的,当链接处于预设测试范围以内时,将链接添加至测试链表中的操作包括:

当链接处于预设测试范围以内时,判断测试链表中是否存在与链接相对应的待测目标;

当测试链表中存在与链接相对应的待测目标时,将链接记录在测试文件的第四跳过数据中;

当测试链表中不存在与链接相对应的待测目标时,将链接添加至测试链表中。

进一步的,测试规则包括连接测试规则、内容测试规则和订制测试规则;

根据测试规则测试当前待测目标,并生成测试数据的操作包括:

检测根据测试链表获取当前待测目标的连接参数;

根据连接测试规则校验连接参数,并生成连接测试数据;

解析待测目标的内容信息;

根据内容测试规则校验内容信息,并生成内容测试数据;

根据订制测试规则校验当前待测目标,并生成订制测试数据。

进一步的,测试报告生成程序被处理器执行时,基于测试文件和测试报告生成类生成测试报告的操作包括:

基于测试报告生成类,解析测试文件;

根据测试文件的解析结果,合成超文本标记语言数据;

根据超文本标记语言数据,生成超文本标记语言文件,以得到测试报告。

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

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

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

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

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