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

文档序号:13532366阅读:214来源:国知局
测试报告生成方法、装置、可读存储介质和计算机设备与流程

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



背景技术:

目前,在计算机软件开发过程中,需要对开发的软件进行测试和优化,测试人员需要针对每次测试的结果完成测试并提供一份较为完整的测试报告。在每次测试周期内,由于每个测试人员都需要记录其测试内容的进度以及在测试过程中出现的问题,因此,当参与的开发人员、测试人员以及优化内容很多时,则需要花费大量时间来生成每个阶段的测试报告。

通常一份测试报告会包含测试项目的测试环境,测试版本,测试人员,耗时,以及bug情况,测试用例的执行情况。现有技术中,测试部门的人员生成报告都有很多的区别,没有统一的模板,不便管理。并且对于测试结果的数据,如bug数据、测试用例执行情况、工作时长等,通过人工进行记录,且缺少分析,或者分析数据人工操作,耗时长。



技术实现要素:

鉴于上述状况,有必要针对现有技术中测试报告生成效率低的问题,提供一种测试报告生成方法、装置、可读存储介质和计算机设备。

本发明实施例提供了一种测试报告生成方法,包括:

获取测试项目编号,查询包含所述项目编号的标签名称;

查询标记有所述标签名称的所有问题文件,并获取每个所述问题文件中的问题详情信息;

对所述问题详情信息进行分析,并将分析结果对应写入预设的测试报告模板中,以生成所述测试报告。

本发明实施例通过标签标记测试报告所需要的信息,将测试任务、缺陷和测试计划与测试项目编号关联在一起。当获取到用户输入的一个测试项目的项目编号时,可以直接获取到该项目编号对应的所有问题文件的问题详情信息。并将获取到的信息进行计算,比较,分析后,得到一份直观且有相应数据分析的项目测试报告。本发明实施例对于测试结果的数据自动记录和分析,相对于现有的人工的手动整理,效率大大的提高。而且,每个人员得到的测试报告模板的板式统一,方便管理。

进一步的,上述测试报告生成方法,其中,所述对所述问题详情信息进行分析的步骤包括:

根据所述问题详情信息中的问题类型信息确定所述问题文件的类型;

根据预设的报告生成规则对每个类型问题文件的问题详情信息进行分析。

进一步的,上述测试报告生成方法,其中,所述根据预设的报告生成规则对每个类型问题的问题详情信息进行分析的步骤包括:

当所述问题文件为缺陷类型时,确定缺陷类别,并对每类缺陷进行累计计数,以分别得到每类缺陷的总数量;

当所述问题文件为测试任务类型时,提取所述问题详情信息中测试任务的经办人信息和完成测试任务所消耗的工时,并对所述工时进行累计计算,以得到测试总工时;

当所述问题文件为测试计划类型时,提取所述问题详情信息中的测试用例执行结果,并计算测试用例发现问题的概率。

进一步的,上述测试报告生成方法,其中,所述确定缺陷类别的步骤包括:

根据所述问题详情信息中的问题创建时间信息和测试项目创建时间信息,确定新增缺陷;

根据所述问题详情信息中的当前状态信息和打回时间信息,确定打回缺陷和已关闭缺陷。

进一步的,上述测试报告生成方法,其中,所述计算所有的测试用例发现问题的概率的步骤包括

查询所有的测试用例相关联的缺陷,并进行计数,得到关联缺陷数量;

计算所述关联缺陷数量与所述新增缺陷的总数的比值,以得到测试用例发现问题的概率值。

进一步的,上述测试报告生成方法,其中,所述提取所述问题详情信息中的测试用例执行结果的步骤包括:

获取所述测试项目的测试阶段信息,以及获取所述问题详情信息中的测试周期列表;

查询所述测试周期列表中,测试周期名称与测试阶段信息相同的测试周期id,根据测试周期的id获取所有测试用例的执行结果,以及所述测试用例关联缺陷的数量。

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

查询模块,用于获取测试项目编号,查询包含所述项目编号的标签名称;

获取模块,用于查询标记有所述标签名称的所有问题文件,并获取每个所述问题文件中的问题详情信息;

分析模块,用于对所述问题详情信息进行分析;

测试报告生成模块,用于将分析结果对应写入预设的测试报告模板中,以生成所述测试报告。

进一步的,上述测试报告生成装置,其中,所述分析模块包括:

确定模块,用于根据所述问题详情信息中的问题类型信息确定所述问题文件的类型;

分析子模块,用于根据预设的报告生成规则对每个类型问题文件的问题详情信息进行分析。

进一步的,上述测试报告生成装置,其中,所述分析子模块包括:

缺陷分析模块,用于当所述问题文件为缺陷类型时,确定缺陷类别,并对每类缺陷进行累计计数,以分别得到每类缺陷的总数量;

测试任务分析模块,用于当所述问题文件为测试任务类型时,提取所述问题详情信息中测试任务的经办人信息和完成测试任务所消耗的工时,并对所述工时进行累计计算,以得到测试总工时;

测试计划分析模块,用于当所述问题文件为测试计划类型时,提取所述问题详情信息中的测试用例执行结果,并计算测试用例发现问题的概率。

进一步的,上述测试报告生成装置,其中,缺陷分析模块确定缺陷类别的步骤包括:

根据所述问题详情信息中的问题创建时间信息和测试项目创建时间信息,确定新增缺陷;

根据所述问题详情信息中的当前状态信息和打回时间信息,确定打回缺陷和已关闭缺陷。

进一步的,上述测试报告生成装置,其中,测试计划分析模块计算所有的测试用例发现问题的概率的步骤包括:

查询所有的测试用例相关联的缺陷,并进行计数,得到关联缺陷数量;

计算所述关联缺陷数量与所述新增缺陷的总数的比值,以得到测试用例发现问题的概率值。

进一步的,上述测试报告生成装置,其中,所述测试计划分析模块提取所述问题详情信息中的测试用例执行结果的步骤包括:

获取所述测试项目的测试阶段信息,以及获取所述问题详情信息中的测试周期列表;

查询所述测试周期列表中,测试周期名称与测试阶段信息相同的测试周期id,根据测试周期的id获取所有测试用例的执行结果,以及所述测试用例关联缺陷。

本发明实施例还提供了一种可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述方法的步骤。

本发明实施例还提供了一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。

附图说明

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

图2为本发明第二实施例中的测试报告生成方法的流程图;

图3为本发明第三实施例中的测试报告生成装置的流程图;

图4为图3中分析模块的结构框图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。

参照下面的描述和附图,将清楚本发明的实施例的这些和其他方面。在这些描述和附图中,具体公开了本发明的实施例中的一些特定实施方式,来表示实施本发明的实施例的原理的一些方式,但是应当理解,本发明的实施例的范围不受此限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。

jira是一款项目与事务跟踪工具,被广泛应用于缺陷跟踪、客户服务、需求收集、流程审批、任务跟踪、项目跟踪和敏捷管理等工作领域。本发明实施例中,基于jira对程序项目开发的测试过程进行跟踪,并根据记录的问题信息生成测试报告。用户通过jira记录测试项目的版本、测试环境、测试人员信息、测试用例执行情况、测试缺陷等信息进行详细的记录。方便了程序开发人员对每个项目测试的进度进行跟进和各程序开发人员之间的信息交互,以及对每个测试项目进行管理。

请参阅图1,为本发明第一实施例中的测试报告生成方法,包括步骤s11~s13。

步骤s11,获取测试项目编号,查询包含所述项目编号的标签名称。

jira平台对项目测试的跟进,是以一个个问题实现的。用户在jira平台上创建项目测试过程中的每一个问题文件,并在jira界面编辑问题详情信息。针对一个项目首次建立一个问题文件时,在jira的界面上添加项目基本信息,如,项目编号、项目版本号、测试环境、测试阶段、项目测试申请的创建时间等信息。之后针对该项目的问题可沿用首次创建的问题文件的项目基本信息。使测试分析报告可以根据测试过程中的不同的版本进行自动统计,或使测试分析报告可以根据测试过程中的不同阶段进行自动统计,大大降低了后续测试过程的盲目性。

jira平台中,用户可针对每一个问题编辑标题,该标题一般为对创建的问题的简要描述,并在jira界面中填写问题详情信息,该问题详情信息包括问题类型、问题创建时间、状态、解决结果、标签、经办人、测试用例等信息。

本实施例基于jira系统开发一个适用于项目测试报告生成的程序,应用于服务器,例如计算机中,根据jira系统中的数据自动生成项目测试报告,其数据准确、格式统一,提高用户的工作效率。当获取到用户输入项目编号后,查询包含所述项目编号的标签名称。根据标签名称可确定需要测试报告所需要的所有问题文件,并获取这些问题文件中的问题详情信息中需写入测试报告模板的数据,以生成测试报告,而其他未标记标签的问题文件则不参与测试报告的生成。因此,用户可在jira平台上创建问题时,要对需要写入测试报告的问题编辑标签名称,该编辑的标记名称中包含项目测试编号,以便于生成该测试项目对应的测试报告。

步骤s12,查询标记有所述标签名称的所有问题文件,并获取每个所述问题文件中的问题详情信息。

测试人员在输入送测申请编号后,可通过该编号获取到此次测试项目的版本,测试环境,测试阶段以及测试时间(此时间会默认为测试开始的时间),并可以查询到标记有所述标签名称的所有问题文件。通过jira的api(applicationprogramminginterface,应用程序编程接口)直接获取每个所述问题文件中的问题详情信息。该详情信息即为测试报告所需要的信息。

步骤s13,对所述问题详情信息进行分析,并将分析结果对应写入预设的测试报告模板中,以生成所述测试报告。

基于jira系统,预先设置所需要的测试报告模板,即测试报告的样式、需要的测试数据及图表等。针对测试报告模板预设测试报告生成规则,即预设针对获取的问题详情信息如何进行分析的规则。

服务器获取到每个标记的问题文件中的问题详情信息后,根据报告模板所设置的规则分析每个问题文件的问题详情信息,例如根据问题详情信息确定缺陷类别、统计各类缺陷数量、测试工时或测试用例执行情况等。并将分析结果写入测试报告模板的对应位置,由此生成一份测试报告。

本实施例通过标签标记测试报告所需要的问题文件,例如可利用jira平台上的标签功能,将问题文件中的问题详情信息如测试任务、缺陷和测试计划等信息与测试项目编号关联在一起。当获取到用户输入的一个测试项目的项目编号时,查询该项目编号对应的所有问题文件的问题详情信息。将获取到的信息进行计算,比较,分析后,得到一份直观且有相应数据分析的项目测试报告。本实施例对于测试结果的数据,如bug数据、测试用例执行情况、工作时长等,自动记录和分析,相对于现有的人工的手动整理,效率大大的提高。而且,每个人员得到的测试报告模板的板式统一,方便管理。

请参阅图2,为本发明第二实施例中的测试报告生成方法,包括步骤:

步骤s21,获取测试项目编号,查询包含所述项目编号的标签名称。

步骤s22,查询标记有所述标签名称的所有问题文件,并获取每个所述问题文件中的问题详情信息。

上述步骤s21和步骤s22的具体实施过程与第一实施例中的相同,此处不再赘述。

步骤s23,根据所述问题详情信息中的问题类型信息确定所述问题文件的类型。

用户在jira平台上创建问题文件时,在问题详情确定该问题文件的问题类型。一般问题类型包括缺陷类型、测试任务类型、测试计划类型。每一种问题类型其需要的数据不同,分析过程也不相同。根据用户需求设置报告生成规则,对每类问题文件进行分析。当问题文件为缺陷类型时,说明创建的问题是一个程序bug,该bug可分为新增缺陷(bug)、打回缺陷、关闭缺陷。新增bug即是针对这次版本测试新发现的问题,打回bug以及关闭bug都是针对上个版本所解决的问题。当问题文件为测试任务类型时,主要分析测试消耗的总工时。当问题文件为测试计划类型,即是针对测试用例的执行情况的分析。服务器遍历所有的标记标签的问题文件,根据每个问题文件中的问题类型信息确定每一个问题文件的类型,根据问题类型做相应的数据处理。

步骤s24,当所述问题文件为缺陷类型时,确定缺陷类别,并对每类缺陷进行累计计数,以分别得到每类缺陷的总数量。

遍历所有的标记标签的问题文件,对缺陷类型的问题文件,确定其缺陷类别,即判断缺陷为新增bug还是打回bug还是关闭bug。统计所有类别的缺陷的数量。即统计所有的标记的问题文件中,新增bug、打回bug和关闭bug的数量。

具体实施时,首先比较所述问题详情信息中的问题创建时间信息和测试项目创建时间信息;当所述问题文件创建时间信息在测试项目创建时间信息之后,确定所述缺陷为新增缺陷,在新增缺陷的数量上加1。

其次,查询所述问题详情信息中的状态信息。

当所述问题文件的当前状态信息为未解决状态时,查询所述问题详情信息中是否包含有打回时间信息,若是,确定所述缺陷为打回缺陷,在打回缺陷的数量上加1;

当所述问题文件的当前状态为已解决状态,确定所述缺陷为已关闭缺陷,在关闭缺陷的数量上加1。

对各个类别的缺陷数量进行累计计算即可得到新增bug、打回bug和关闭bug的数量。

步骤s25,当所述问题文件为测试任务类型时,提取所述问题详情信息中测试任务的经办人信息和完成测试任务所消耗的工时,并对所述工时进行累计计算,以得到测试总工时。

遍历所有的标记标签的问题文件,对测试任务类型的问题文件,则遍历获取所有测试任务的经办人,将所有的经办人都作为测试报告中的测试人员。另外遍历测试任务时同时获取每个测试任务所消耗的工时,并进行累计计算,得到测试总工时。若某一测试任务包含有子任务的情况下,则遍历该测试任务的子任务计算所有子任务消耗的工时之和,即得到该测试任务的工时。即用户可以知道该项目测试的测试人员和测试工时。

步骤s26,当所述问题文件为测试计划类型时,提取其问题详情信息中的测试用例执行结果,并计算测试用例发现问题的概率。

测试人员一般针对一个测试项目设计多个测试用例来实现该测试项目的功能。用户在jira平台上创建问题文件后,jira记录每个测试用例的执行结果(成功,失败,阻塞,不支持)。通过执行测试用例成功发现该测试项目中的bug时,则将测试用例和其发现的bug关联起来。所以通过测试人员执行用例发现缺陷的数量来说明这个用例的效果如何,确定每个测试用例是否能够真正的发现项目中的bug。

上述步骤中,计算出测试用例发现问题的概率的步骤包括:

步骤s261,查询所有的测试用例相关联的缺陷,并进行计数,得到关联缺陷数量;

步骤s262,计算所述关联缺陷数量与所述新增缺陷的总数的比值,以得到测试用例发现问题的概率值。

当查询到一个测试计划类型的问题时,根据该问题文件中的问题详情信息,统计测试用例所关联的缺陷的数量,以得到关联缺陷数量。将关联缺陷数量除以新增缺陷的总数得到所有的测试用例发现问题的概率值。

具体实施时,当判断一个问题文件的类型为测试计划类型时,获取该测试项目的测试阶段信息,以及获取该问题文件的问题详情信息中的测试周期列表。并查询测试周期列表中,测试周期名称与测试阶段相同的测试周期id,根据测试周期的id获取所有测试用例的执行情况(成功,失败,阻塞,不支持)以及所有测试用例关联缺陷,并计算相关联缺陷的数量。当遍历问题结束后通过计算关联缺陷数量与新增缺陷的总数的比值,以得到测试用例发现问题的概率值。

步骤s27,将每类缺陷名称、各类缺陷总数量、测试人员信息、测试总工时、测试用例执行结果和测试用例发现问题的概率写入测试模板中,以生成所述测试报告。

具体实施时,该测试报告可以包括文本信息和图表信息,即该测试项目的问题分析结果生成以文本信息和图表信息的形式展现。

可以理解的,用户可以根据不同的要求可以灵活变更测试报告模板以及当前测试报告所需要的信息。例如,还可以提取问题详情信息中的项目版本号、测试环境、测试阶段、项目测试申请的创建时间写入测试模板中。

本实施例将测试项目的问题文件类型分为缺陷类型、测试任务类型、测试计划类型,分别对该三类问题文件进行分析,得到各类缺陷总数量、测试人员信息、测试总工时、测试用例执行结果和测试用例发现问题的概率,并将分析结果写入测试报告模板中,生成对应的测试报告。通过对问题文件进行分类分析,其生成的测试报告效率高,直观性强,符合用户的需求。本实施例基于jira平台api的情况下,通过在相应数据绑定,只需要输入一个送测申请的编号就可以生成一份完整的测试报告,相对于人工的手动整理。效率大大的提高。

请参阅图3,为本发明实施例中的测试报告生成装置,包括:

查询模块100,用于获取测试项目编号,查询包含所述项目编号的标签名称;

获取模块200,用于查询标记有所述标签名称的所有问题文件,并获取每个所述问题文件中的问题详情信息;

分析模块300,用于对所述问题详情信息进行分析;

测试报告生成模块400,用于将分析结果对应写入预设的测试报告模板中,以生成所述测试报告。

进一步的,如图4所示,所述分析模块300包括:

确定模块310,用于根据所述问题详情信息中的问题类型信息确定所述问题的类型;

分析子模块320,用于根据预设的报告生成规则对每个类型问题文件的问题详情信息进行分析。

进一步的,上述测试报告生成装置,其中,所述分析子模块320包括:

缺陷分析模块321,用于当所述问题文件为缺陷类型时,确定缺陷类别,并对每类缺陷进行累计计数,以分别得到每类缺陷的总数量;

测试任务分析模块322,用于当所述问题文件为测试任务类型时,提取所述问题详情信息中测试任务的经办人信息和完成测试任务所消耗的工时,并对所述工时进行累计计算,以得到测试总工时;

测试计划分析模块323,用于当所述问题文件为测试计划类型时,提取所述问题详情信息中的测试用例执行结果,并计算测试用例发现问题的概率。

进一步的,上述测试报告生成装置,其中,缺陷分析模块321确定缺陷类别的步骤包括:

根据所述问题详情信息中的问题创建时间信息和测试项目创建时间信息,确定新增缺陷;

根据所述问题详情信息中的当前状态信息和打回时间信息,确定打回缺陷和已关闭缺陷。

进一步的,上述测试报告生成装置,其中,测试计划分析模块323计算所有的测试用例发现问题的概率的步骤包括:

查询所有的测试用例相关联的缺陷,并进行计数,得到关联缺陷数量;

计算所述关联缺陷数量与所述新增缺陷的总数的比值,以得到测试用例发现问题的概率值。

进一步的,上述测试报告生成装置,其中,所述测试计划分析模块323提取所述问题详情信息中的测试用例执行结果的步骤包括:

获取所述测试项目的测试阶段信息,以及获取所述问题详情信息中的测试周期列表;

查询所述测试周期列表中,测试周期名称与测试阶段信息相同的测试周期id,根据测试周期的id获取所有测试用例的执行结果,以及所述测试用例关联缺陷。

本实施例的测试报告生成装置,可以用于执行图1至图2任一所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。

本发明还提供了一种可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现上述实施例1至2中任意一个的方法的步骤。

本发明还提供了一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述实施例1至2中任意一个的方法的步骤。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。

计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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