CN109376069B - 一种测试报告的生成方法及设备 - Google Patents
一种测试报告的生成方法及设备 Download PDFInfo
- Publication number
- CN109376069B CN109376069B CN201811018238.1A CN201811018238A CN109376069B CN 109376069 B CN109376069 B CN 109376069B CN 201811018238 A CN201811018238 A CN 201811018238A CN 109376069 B CN109376069 B CN 109376069B
- Authority
- CN
- China
- Prior art keywords
- test
- output signal
- application program
- item
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明适用于信息处理技术领域,提供了一种测试报告的生成方法及设备,包括:接收应用测试请求;基于测试内容信息,生成应用程序的测试模板;根据程序标识获取应用程序的程序文件,并对程序文件进行解析,确定应用程序中包含的输出信号;基于各个测试项目的测试描述信息,建立测试项目与输出信号的对应关系;运行应用程序,采集各个输出信号的运行参数,并基于运行参数确定各个测试项目的测试结果;根据测试结果生成应用程序的测试报告。本发明无需开发人员手动配置,在关联完毕后自动生成各个测试项目的测试结果,并输出测试报告,进一步简化了生成测试报告的操作步骤,提高了测试报告生成效率。
Description
技术领域
本发明属于信息处理技术领域,尤其涉及一种测试报告的生成方法及设备。
背景技术
随着终端技术的不断发展,为了满足用户使用过程中的各种需求,应用程序的数量以及更新速度也不断增长,因此,如何对应用程序进行测试,并高效地生成应用程序的测试报告,则直接影响应用程序的开发周期。现有的测试报告的生成技术,需要开发人员手动配置每一个测试项目,并关联测试项目与应用程序的输出信号之间的关联关系,当测试项目较多或所需测试的应用程序数目较大时,开发人员需要花费较长时间进行配置操作,在配置完毕后才能生成测试报告。由此可见,现有的测试报告的生成技术,配置效率较低,从而降低了报告生成效率,延长了应用程序的开发周期。
发明内容
有鉴于此,本发明实施例提供了一种测试报告的生成方法及设备,以解决现有的测试报告的生成方法,配置效率较低,从而降低了报告生成效率,延长了应用程序的开发周期的问题。
本发明实施例的第一方面提供了一种测试报告的生成方法,包括:
接收应用测试请求;所述应用测试请求携带有待测试的应用程序的程序标识以及测试内容信息;
基于所述测试内容信息,生成所述应用程序的测试模板;所述测试模板内包含至少一个测试项目;
根据所述程序标识获取所述应用程序的程序文件,并对所述程序文件进行解析,确定所述应用程序中包含的输出信号;
基于各个所述测试项目的测试描述信息,建立所述测试项目与输出信号的对应关系;
运行所述应用程序,采集各个输出信号的运行参数,并基于所述运行参数确定各个所述测试项目的测试结果;
根据所述测试结果生成所述应用程序的测试报告。
本发明实施例的第二方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面的各个步骤。
本发明实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现第一方面的各个步骤。
实施本发明实施例提供的一种测试报告的生成方法及设备具有以下有益效果:
本发明实施例中,通过应用测试请求的测试内容信息,自动生成包含所有需要对应用程序进行测试的测试项目的测试模板,并基于各个测试项目的测试描述信息确定与之关联的输出信号,无需开发人员手动配置,在关联完毕后自动生成各个测试项目的测试结果,并输出测试报告,进一步简化了生成测试报告的操作步骤,提高了测试报告生成效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施例提供的一种测试报告的生成方法的实现流程图;
图2是本发明第二实施例提供的一种测试报告的生成方法S104具体实现流程图;
图3是本发明第三实施例提供的一种测试报告的生成方法具体实现流程图;
图4是本发明第四实施例提供的一种测试报告的生成方法S105具体实现流程图;
图5是本发明第五实施例提供的一种测试报告的生成方法S102具体实现流程图;
图6是本发明一实施例提供的一种终端设备的结构框图;
图7是本发明另一实施例提供的一种终端设备的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例通过应用测试请求的测试内容信息,自动生成包含所有需要对应用程序进行测试的测试项目的测试模板,并基于各个测试项目的测试描述信息确定与之关联的输出信号,无需开发人员手动配置,在关联完毕后自动生成各个测试项目的测试结果,并输出测试报告,解决了测试报告的生成方法,配置效率较低,从而降低了报告生成效率,延长了应用程序的开发周期的问题。
在本发明实施例中,流程的执行主体为终端设备。该终端设备包括但不限于:服务器、计算机、智能手机以及平板电脑等具有测试报告的生成功能的设备。图1示出了本发明第一实施例提供的测试报告的生成方法的实现流程图,详述如下:
在S101中,接收应用测试请求;所述应用测试请求携带有待测试的应用程序的程序标识以及测试内容信息。
在本实施例中,用户在需要对应用程序进行测试并生成对应的测试报告时,可以向终端设备发送一个应用测试请求,并将所需进行测试的应用程序的程序标识以及测试该应用程序所需完成的测试内容信息封装到该应用测试请求内,以便终端设备根据该应用测试请求执行相应的测试操作,生成用户所需的测试报告。需要说明的是,用户可以直接在终端设备上进行操作,输入程序标识以及测试内容信息,通过点击测试开始等按钮,终端设备自动采集页面中包含的输入内容,生成该应用测试请求。若该终端设备为一服务器,用户可以在本地终端上安装对应的客户端,或打开服务器提供的测试请求页面,在本地终端内输入对应的内容后,并通过客户端或测试请求页面对应的域名标识,确定终端设备的网络地址,并将应用测试请求发送给终端设备。
在本实施例中,该测试内容信息具体用于限定对应用程序所需进行测试的测试内容、测试项目和/或测试模式。例如,用户需要在应用程序开发完成后,进行压力测试以及模块遍历测试,则可以将上述两个测试内容对应的测试标识封装在该测试内容信息后,终端设备通过识别测试标识确定应用程序所需完成的测试内容。当然,用户可以根据应用程序的不同阶段,将所需测试的内容生成一个测试模板,例如在应用程序的开发阶段,将接口连通测试、接口参数测试、数据交互测试等多项测试内容封装成一个测试模板,用户直接在测试内容信息中输入该模板编号,终端设备即可根据模板编号确定封装在该模板内的所有测试项目以及测试内容。
可选地,用户可以设置对应的测试启动条件,例如云端服务器检测到用户上传应用程序,则云端服务器会自动发送一个应用测试请求至终端设备,并将该应用程序的程序标识添加到该应用测试请求中,以便终端设备对该应用程序进行测试。又或者,终端设备设置有测试周期,在检测到当前时刻到达预设的测试周期时,会对应用程序数据库内的所有应用程序进行测试操作,并输出测试报告。
在S102中,基于所述测试内容信息,生成所述应用程序的测试模板;所述测试模板内包含至少一个测试项目。
在本实施例中,终端设备需要将应用测试请求中包含的测试内容信息,转换为计算机可处理的测试模板,即需要对待测试的应用程序执行何种测试操作。因此,终端设备会对测试内容信息进行解析,并从测试项目库中提取与该测试内容信息关联的测试项目,通过所有与应用测试请求关联的测试项目生成测试模板,从而能够通过该测试模板对应用程序进行测试操作。
可选地,该测试内容信息中可以记录有测试模板编号,在该情况下,终端设备可以直接根据该测试模板编号获取与之对应的测试模板。即终端设备存储有测试模板库,并为各个测试模板配置对应的编号,用户终端也可以获取该测试模板与模板编号的对应关系,并选取所需进行测试的模板编号封装到测试内容信息中。需要说明的是,终端设备可以向终端设备发送模板建立指令,将所需封装到一个测试模板内的测试项目编号添加到该模板建立指令内,终端设备可以基于该模板建立指令响应用户的自定义测试模板的操作,并为该测试模板配置对应的模板编号,返回给用户。
可选地,若测试内容信息通过自然语言进行描述,在该情况下,终端设备可以对该测试内容信息进行语义分析,提取该测试内容信息中包含的测试关键词,并识别测试项目库内各个候选测试项目与测试关键词之间的匹配度,选取匹配度高于预设匹配阈值的候选测试项目作为该应用程序所需进行测试的测试项目。
在S103中,根据所述程序标识获取所述应用程序的程序文件,并对所述程序文件进行解析,确定所述应用程序中包含的输出信号。
在本实施例中,终端设备在确定测试模板的过程中,还可以根据应用测试请求包含的程序标识,获取待测试的应用程序的程序文件。具体地,用户可以将需要进行测试的应用程序存在云端服务器或终端设备的应用程序库内,在该情况下,终端设备可以基于该程序标识,从云端服务器或应用程序库内查找对应的应用程序的程序文件。或者,用户可以指定安装于终端设备上的任一应用程序作为待测试的应用程序,在该情况下,终端设备直接从本地存储空间查询该应用程序的存储地址,并获取该应用程序的程序文件。
在本实施例中,终端设备为了在后续测试过程中,输出各个测试项目的测试结果,终端设备需要通过应用程序的各个输出信号来获取测试数据,因此终端设备在获取了应用程序的程序文件后,会对该程序文件进行解析,确定该应用程序运行过程中产生的输出信号,以便后续与测试项目进行关联。举例性地,应用程序的输出接口包括与硬件接口关联的接口,例如通信传输接口,或进行应用程序内数据交互所使用的虚拟接口,例如图像处理接口。
可选地,终端设备在确定了应用程序的输出信号后,可以基于各个输出信号的功能以及数据类型,为各个输出信号配置对应的信号关键词,以便在后续的识别测试项目的过程中,能够提高识别的效率。当然,若某一应用程序已执行测试操作,则可以直接获取上次执行的输出信号列表以及各个输出信号的信号关键词,无需重复识别。
在S104中,基于各个所述测试项目的测试描述信息,建立所述测试项目与输出信号的对应关系。
在本实施例中,终端设备在确定了测试模板以及应用程序的输出信号后,可以建立输出信号与测试模板内的测试项目之间的对应关系,以便通过输出信号的运算数据得到该测试项目的所需的测试结果。例如,某一测试项目需要检测应用程序的带宽速率,则需要关联该应用程序与互联网进行交互的输出信号,通过检测在预设单位时间内该输出信号传输的数据量,确定该应用程序的带宽速率。由此可见,每个测试项目均可以通过采集输出信号以获取对应的测试结果。
可选地,终端设备根据测试描述信息,确定测试项目与输出信号的对应关系的方式可以为:测试描述信息包含输入该测试项目对应的数据类型,终端设备识别输出信号的数据类型,并将与测试项目对应的数据类型一致的输出信号识别为该测试项目对应的输出信号,从而建立各个测试项目与输出信号之间的对应关系。需要说明的是,一个测试项目可以对应多个输出信号,即需要通过多个输出信号的运行参数,才可以得到对应的输出结果。
在S105中,运行所述应用程序,采集各个输出信号的运行参数,并基于所述运行参数确定各个所述测试项目的测试结果。
在本实施例中,终端设备在确定了测试模板内各个测试项目关联的输出信号后,可以执行测试流程操作了。终端设备通过运行应用程序,从而激活应用程序中的各个输出信号接口,并通过预设的测试用例来完成测试项目对应的测试操作,并采集各个输出信号的运行参数。终端设备根据各个输出信号的运行参数以及其关联的测试项目的测试内容,得到该测试项目所需的测试结果。
举例性地,通过计算带宽速率的测试项目为例子进行说明,该关联的输出信号为应用程序与互联网进行交互的输出信号,终端设备通过预设的测试数据包,通过该输出信号的接口向服务器发送该测试数据包,并检测该输出信号的速率峰值以及平均值,基于上述两个参数计算得到该测试项目对应的测试结果。
可选地,若某一测试项目无法获取到对应的测试数据,以输出对应的测试结果,终端设备可以标记出该测试项目所关联的输出信号,并识别标记的输出信号为异常输出接口,并生成异常接口报告,以便应用程序的开发人员根据该异常接口报告对该应用程序进行异常修复操作,
在S106中,根据所述测试结果生成所述应用程序的测试报告。
在本实施例中,终端设备在确定了各个测试项目的测试结果后,可以将所有测试结果进行集成,生成该应用程序的测试报告。可选地,若终端设备记录有各个测试项目的测试性能阈值,则可以将该测试结果与其对应的测试性能阈值进行匹配,判断该测试项目是否测试通过,从而方便用户能够从测试报告中直观地确定该应用程序是否能够直接发布,或仍需要进行优化调整。
以上可以看出,本发明实施例提供的一种测试报告的生成方法通过应用测试请求的测试内容信息,自动生成包含所有需要对应用程序进行测试的测试项目的测试模板,并基于各个测试项目的测试描述信息确定与之关联的输出信号,无需开发人员手动配置,在关联完毕后自动生成各个测试项目的测试结果,并输出测试报告,进一步简化了生成测试报告的操作步骤,提高了测试报告生成效率。
图2示出了本发明第二实施例提供的一种测试报告的生成方法S104的具体实现流程图。参见图2所示,相对于图1述实施例,本实施例提供的一种测试报告的生成方法中S104包括:S1041~S1043,具体详述如下:
在S1041,对所述测试描述信息以及各个所述输出信号的信号描述信息执行关键词提取操作,得到测试关键词序列以及信号关键词序列。
在本实施例中,测试描述信息以及信号描述信息均为通过自然语言对该接口的功能和/或运行参数进行描述,为了测试描述信息以及信号描述信息之间的匹配度,终端设备会通过预设的关键词提取算法,分别确定测试描述信息对应的测试关键词序列,以及信号描述信息对应的信号接口关键词序列,从而能够将测试描述信息以及信号描述信息中的无效词语进行过滤,例如介词以及助词等无实际物理含义的词语,提高了识别效率。
在本实施例中,测试关键词序列中至少包含一个关键词,且各个关键词在测试关键词序列中的次序与该关键词在测试描述信息中的出现次序相同,若某一关键词在测试描述信息中出现多次,则只记录一次。同样地,信号关键词序列也满足上述特征,在此不再赘述。
在S1042中,将所述测试关键词序列以及所述信号关键词序列的导入预设的匹配度计算模型,分别计算所述测试项目与各个所述输出信号之间的匹配度;所述匹配度计算模型具体为:
其中,MatchPoint(Textitem,OutputSignal)为所述测试项目与各个所述输出信号之间的匹配度,[Textitemj]为所述测试关键词序列,[OutputSignali]为所述信号关键词序列;ρ(Textitemj,OutputSignali)为所述测试关键词序列中第j个关键词与所述测试关键词序列中第i个关键词之间的关联度;m为所述测试关键词序列包含的关键词的第一个数;n为所述测试关键词序列中包含的关键词的第二个数;为最大值选取函数;Quo为预设系数。
在本实施例中,终端设备会将测试关键词序列以及信号关键词序列导入到匹配度计算模型内,确定测试描述信息的本地接口与各个调用接口之间的匹配度,若该匹配度的数值越大,则表示该测试项目与该输出信号之间的传输的数据的类型以及功能越相似,则表示两者的关联性越高;反之,若该匹配度数值越小,则表示该测试项目与该输出信号之间的差异越大,即两者的关联性越低。
在本实施例中,由于上述两类关键词序列中各个关键词的次序是根据在测试描述信息以及信号描述信息中的出现次序确定的,因此相同位置的关键词所表征的物理含义并不一定相同,因此这里会确定测试关键词序列中的各个关键词与信号关键词序列中的各个关键词之间的关联度,并通过函数选取关联度最大的一个作为测试关键词所对应的信号接口关键词,并基于各个关联关键词确定该测试项目与该输出信号之间的匹配度,通过上述的计算方式,能够大大提高输出信号的匹配准确率。
在S1043中,选取所述匹配度大于预设匹配阈值的所述输出信号作为所述测试项目关联的信号,建立所述测试项目与输出信号的对应关系。
在本实施例中,终端设备在计算了该测试项目与该输出信号之间的匹配度后,会选取匹配度大于预设匹配阈值的输出信号作为测试项目关联的信号。由于一个测试项目可以包括两个或以上的输出信号,因此并不会只是提取最大值的一个输出信号。
在本发明实施例中,通过将描述信息转换为关键词序列,并通过计算各个关键词之间的关联度确定测试项目与输出信号之间的匹配度,从而能够提高关联接口的识别的准确率,进一步提高校验成功率。
图3示出了本发明第三实施例提供的一种测试报告的生成方法的具体实现流程图。参见图3所示,相对于图1所述实施例,本实施例提供的一种测试报告的生成方法还包括:S301~S303,具体详述如下:
进一步地,在所述建立所述测试项目与输出信号的对应关系之后,还包括:
在S301中,若存在未建立对应关系的测试项目,则确定生成该未建立对应关系的测试项目的测试结果所需的输入因子。
在本实施例中,由于部分应用程序并没有设置测试项目所需采集运行参数的输出接口,在该情况下,终端设备可以基于测试项目的所需的输入因子,创建对应的虚拟输出信号,以便测试项目可以根据虚拟输出信号获取对应的运行参数,得到该测试项目的测试结果。
在本实施例中,终端设备会解析该为建立对应的测试项目,以确定生成该测试项目所需的输入因子,即需要哪些类型的数据或信号。具体地,该输入因子可以为数据类型、接口类型、信号性能范围等信息。终端设备可以根据该输入因子,从应用程序中定位对应的输入信号。
在S302中,从所述应用程序内提取包含所述输入因子的输入信号,识别为该未建立对应关系的测试项目的关联输入信号。
在本实施例中,终端设备在解析应用程序的程序文件时,除了识别该应用程序包含的输出信号外,还可以识别该应用程序对应的输入信号,每个输入信号配置对应的信号名。具体地,终端设备可以通过运行该应用程序,以确定各个输入信号的信号特征参数,例如导入该输入信号接口的输入类型、运行参数等信息,从而终端设备可以通过各个输入信号的信号特征参数,来判断是否包含测试项目的输入因子,若包含该输入因子,则表示终端设备可以通过该应用程序的输入信号,进行后续转换操作后,输出该测试项目的测试结果。
在本实施例中,终端设备会根据输入信号是否包含测试项目的输入因子,例如该输入信号的信号类型是否与输入因子的相匹配;若该输入信号对应给的输入接口类型是否与输入因子所指定的接口类型一致,因此,通过上述的识别操作,可以得到测试项目的关联输入信号。需要说明的是,一个输入因子可以对应多个输入信号,则将多个输入信号均识别为该测试项目的关联输入信号,例如若应用程序为一多线程运行的应用程序,通过不同的进程与通信对端进行并发通信,在该情况下,上述的输入接口均接收通信对端的传输数据,从而一个输入因子会对应多个输入信号。
在S303中,基于所述关联输入信号创建虚拟输出信号,并建立所述虚拟输出信号与该未建立对应关系的测试项目的对应关系。
在本实施例中,终端设备在确定了未建立对应关系的测试项目的关联输入信号后,会基于上述关联输入信号以及该测试项目的测试条件,创建一个虚拟输出信号,需要说明的是,该虚拟输出信号并不会在应用程序的正常运行中输出数据,而只会在本次测试操作中存在,当测试报告生成完毕后,会将该虚拟输出信号从应用程序的程序文件中删除。
举例性地,某一测试项目需要确定应用程序的图片格式转换速率,而应用程序并不包含图像格式输出接口,但包含图像输入接口,在该情况下,终端设备可以根据该图像输入接口以及预设的图像格式转换算法,生成一虚拟的图像格式输出接口,从而在运行应用程序的过程中,能够通过该虚拟的图像格式输出接口确定该应用程序的图片格式转换速率。
在本发明实施例中,通过识别测试项目的输入因子,并从应用程序中获取该输入因子对应的输入信号,并创建一个该测试项目关联的输出信号,从而能够保证测试模块内的各个测试项目均能够输出对应的测试结果,减少了测试异常的情况发生,提高了测试效率。
图4示出了本发明第四实施例提供的一种测试报告的生成方法S105的具体实现流程图。参见图4所示,相对于图1-图3所述实施例,本实施例提供的一种测试报告的生成方法中S105包括:S1051~S1052,具体详述如下:
在S1051中,若检测到所述输出信号为触控信号类型,则启动模拟触控进程。
在本实施例中,由于在运行应用程序的过程中,是无需用户手动参与的,大部分的测试过程均可以通过测试用例来模拟数据输入。而对于触控信号类型的测试操作,在正常情况下,需要通过用户触摸触控屏才能够产生对应的触控信号,因此在远程测试的过程中,无法通过测试用例进行模拟。为了解决上述问题,终端设备配置有模拟触控进程,举例性地,该模拟触控进程可以为一monkey进程,当终端设备检测到某一输出信号为触控信号类型时,可能该测试项目需要检测应用程序对于触控信号的灵敏程度以及响应速率,在该情况下,终端设备可以通过启动该模拟触控进程,来模拟用户发生的触控操作。
在S1052中,通过所述模拟触控进程随机生成触控指令,以采集触控信号类型的输出信号的运行参数。
在本实施例中,终端设备在启动了模拟触控进程后,该进程会随机生成触控指令,并将该触控指令发送给应用程序,以便应用程序通过该触控指令,输出相应的触控输出信号,通过上述模拟操作,即便远程测试的过程中,也可能够采集得到触控信号类型的输出信号的运行参数,从而完成对应测试项目。
在本发明实施例中,通过触发模拟触控进程,以实现远程测试操作也能够采集到触控输出信号,提高了测试报告的使用范围。
图5示出了本发明第五实施例提供的一种测试报告的生成方法的具体实现流程图。参见图5所示,相对于图1-图3所述实施例,本实施例提供的一种测试报告的生成方法中S102,包括:S1021~S1022,具体详述如下:
在S1021中,获取所述测试内容信息中的项目标识。
在本实施例中,用户已经填写了所需测试的各个测试项目的项目标识,并将所有测试项目标识封装于测试内容信息内,在该情况下,终端设备可以解析该测试内容信息中包含的测试项目标识,并进行提取,通过该项目标识定位应用程序所需进行测试的测试项目。
在S1022中,从测试项目模板库中提取所述项目标识对应的测试项目,生成所述测试模板。
在本实施例中,终端设备可以通过测试项目模板库提取用户所需进行测试的测试项目,该测试项目模板库可以存储在终端设备的存储单元内,也可以存储于云端,该测试项目模板库内每个测试项目均配置对应的项目标号,以便设备能够根据项目标识进行查询、提取、修改等操作。
在本实施例中,终端设备在提取了各个测试项目后,则可以将所有测试项目进行封装,得到该应用程序的测试模板。
在本发明实施例中,用户通过输入需要进行测试的项目标识,终端设备能够自动生成对应的测试模板,从而提高了应用程序的测试速度。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
图6示出了本发明一实施例提供的一种终端设备的结构框图,该终端设备包括的各单元用于执行图1对应的实施例中的各步骤。具体请参阅图1与图1所对应的实施例中的相关描述。为了便于说明,仅示出了与本实施例相关的部分。
参见图6,所述终端设备包括:
应用测试请求接收单元61,用于接收应用测试请求;所述应用测试请求携带有待测试的应用程序的程序标识以及测试内容信息;
测试模板生成单元62,用于基于所述测试内容信息,生成所述应用程序的测试模板;所述测试模板内包含至少一个测试项目;
程序文件解析单元63,用于根据所述程序标识获取所述应用程序的程序文件,并对所述程序文件进行解析,确定所述应用程序中包含的输出信号;
对应关系建立单元64,用于基于各个所述测试项目的测试描述信息,建立所述测试项目与输出信号的对应关系;
应用测试执行单元65,用于运行所述应用程序,采集各个输出信号的运行参数,并基于所述运行参数确定各个所述测试项目的测试结果;
测试报告输出单元66,用于根据所述测试结果生成所述应用程序的测试报告。
可选地,所述对应关系建立单元64包括:
关键词提取单元,用于对所述测试描述信息以及各个所述输出信号的信号描述信息执行关键词提取操作,得到测试关键词序列以及信号关键词序列;
关键词匹配单元,用于将所述测试关键词序列以及所述信号关键词序列的导入预设的匹配度计算模型,分别计算所述测试项目与各个所述输出信号之间的匹配度;所述匹配度计算模型具体为:
其中,MatchPoint(Textitem,OutputSignal)为所述测试项目与各个所述输出信号之间的匹配度,[Textitemj]为所述测试关键词序列,[OutputSignali]为所述信号关键词序列;ρ(Textitemj,OutputSignali)为所述测试关键词序列中第j个关键词与所述测试关键词序列中第i个关键词之间的关联度;m为所述测试关键词序列包含的关键词的第一个数;n为所述测试关键词序列中包含的关键词的第二个数;为最大值选取函数;Quo为预设系数;
关联信号识别单元,用于选取所述匹配度大于预设匹配阈值的所述输出信号作为所述测试项目关联的信号,建立所述测试项目与输出信号的对应关系。
可选地,所述终端设备还包括:
输入因子识别单元,用于若存在未建立对应关系的测试项目,则确定生成该未建立对应关系的测试项目的测试结果所需的输入因子;
关联输入信号识别单元,用于从所述应用程序内提取包含所述输入因子的输入信号,识别为该未建立对应关系的测试项目的关联输入信号;
虚拟信号创建单元,用于基于所述关联输入信号创建虚拟输出信号,并建立所述虚拟输出信号与该未建立对应关系的测试项目的对应关系。
可选地,所述应用测试执行单元65包括:
触控进程启动单元,用于若检测到所述输出信号为触控信号类型,则启动模拟触控进程;
触控指令生成单元,用于通过所述模拟触控进程随机生成触控指令,以采集触控信号类型的输出信号的运行参数。
可选地,所述测试模板生成单元62包括:
项目标识获取单元,用于获取所述测试内容信息中的项目标识;
测试模板汇聚单元,用于从测试项目模板库中提取所述项目标识对应的测试项目,生成所述测试模板。
因此,本发明实施例提供的终端设备同样可以通过应用测试请求的测试内容信息,自动生成包含所有需要对应用程序进行测试的测试项目的测试模板,并基于各个测试项目的测试描述信息确定与之关联的输出信号,无需开发人员手动配置,在关联完毕后自动生成各个测试项目的测试结果,并输出测试报告,进一步简化了生成测试报告的操作步骤,提高了测试报告生成效率。
图7是本发明另一实施例提供的一种终端设备的示意图。如图7所示,该实施例的终端设备7包括:处理器70、存储器71以及存储在所述存储器71中并可在所述处理器70上运行的计算机程序72,例如测试报告的生成程序。所述处理器70执行所述计算机程序72时实现上述各个测试报告的生成方法实施例中的步骤,例如图1所示的S101至S106。或者,所述处理器70执行所述计算机程序72时实现上述各装置实施例中各单元的功能,例如图7所示模块71至76功能。
示例性的,所述计算机程序72可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器71中,并由所述处理器70执行,以完成本发明。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序72在所述终端设备7中的执行过程。例如,所述计算机程序72可以被分割成应用测试请求接收单元、测试模板生成单元、程序文件解析单元、对应关系建立单元、应用测试执行单元以及测试报告输出单元,各单元具体功能如上所述。
所述终端设备7可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器70、存储器71。本领域技术人员可以理解,图7仅仅是终端设备7的示例,并不构成对终端设备7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器70可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71可以是所述终端设备7的内部存储单元,例如终端设备7的硬盘或内存。所述存储器71也可以是所述终端设备7的外部存储设备,例如所述终端设备7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括所述终端设备7的内部存储单元也包括外部存储设备。所述存储器71用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (6)
1.一种测试报告的生成方法,其特征在于,包括:
接收应用测试请求;所述应用测试请求携带有待测试的应用程序的程序标识以及测试内容信息;
基于所述测试内容信息,生成所述应用程序的测试模板;所述测试模板内包含至少一个测试项目;
根据所述程序标识获取所述应用程序的程序文件,并对所述程序文件进行解析,确定所述应用程序中包含的输出信号;
基于各个所述测试项目的测试描述信息,建立所述测试项目与输出信号的对应关系;
运行所述应用程序,采集各个输出信号的运行参数,并基于所述运行参数确定各个所述测试项目的测试结果;
根据所述测试结果生成所述应用程序的测试报告;
所述基于各个所述测试项目的测试描述信息,建立所述测试项目与输出信号的对应关系,包括:
对所述测试描述信息以及各个所述输出信号的信号描述信息执行关键词提取操作,得到测试关键词序列以及信号关键词序列;
将所述测试关键词序列以及所述信号关键词序列的导入预设的匹配度计算模型,分别计算所述测试项目与各个所述输出信号之间的匹配度;所述匹配度计算模型具体为:
其中,MatchPoint(Textitem,OutputSignal)为所述测试项目与各个所述输出信号之间的匹配度,[Textitemj]为所述测试关键词序列,[OutputSignali]为所述信号关键词序列;ρ(Textitemj,OutputSignali)为所述测试关键词序列中第j个关键词与所述测试关键词序列中第i个关键词之间的关联度;m为所述测试关键词序列包含的关键词的第一个数;n为所述测试关键词序列中包含的关键词的第二个数;为最大值选取函数;Quo为预设系数;
选取所述匹配度大于预设匹配阈值的所述输出信号作为所述测试项目关联的信号,建立所述测试项目与输出信号的对应关系;
在所述建立所述测试项目与输出信号的对应关系之后,还包括:
若存在未建立对应关系的测试项目,则确定生成该未建立对应关系的测试项目的测试结果所需的输入因子;
从所述应用程序内提取包含所述输入因子的输入信号,识别为该未建立对应关系的测试项目的关联输入信号;
基于所述关联输入信号创建虚拟输出信号,并建立所述虚拟输出信号与该未建立对应关系的测试项目的对应关系。
2.根据权利要求1所述的生成方法,其特征在于,所述运行所述应用程序,采集各个输出信号的运行参数,包括:
若检测到所述输出信号为触控信号类型,则启动模拟触控进程;
通过所述模拟触控进程随机生成触控指令,以采集触控信号类型的输出信号的运行参数。
3.根据权利要求1-2任一项所述的生成方法,其特征在于,所述基于所述测试内容信息,生成所述应用程序的测试模板,包括:
获取所述测试内容信息中的项目标识;
从测试项目模板库中提取所述项目标识对应的测试项目,生成所述测试模板。
4.一种终端设备,其特征在于,所述终端设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:
接收应用测试请求;所述应用测试请求携带有待测试的应用程序的程序标识以及测试内容信息;
基于所述测试内容信息,生成所述应用程序的测试模板;所述测试模板内包含至少一个测试项目;
根据所述程序标识获取所述应用程序的程序文件,并对所述程序文件进行解析,确定所述应用程序中包含的输出信号;
基于各个所述测试项目的测试描述信息,建立所述测试项目与输出信号的对应关系;
运行所述应用程序,采集各个输出信号的运行参数,并基于所述运行参数确定各个所述测试项目的测试结果;
根据所述测试结果生成所述应用程序的测试报告;
所述基于各个所述测试项目的测试描述信息,建立所述测试项目与输出信号的对应关系,包括:
对所述测试描述信息以及各个所述输出信号的信号描述信息执行关键词提取操作,得到测试关键词序列以及信号关键词序列;
将所述测试关键词序列以及所述信号关键词序列的导入预设的匹配度计算模型,分别计算所述测试项目与各个所述输出信号之间的匹配度;所述匹配度计算模型具体为:
其中,MatchPoint(Textitem,OutputSignal)为所述测试项目与各个所述输出信号之间的匹配度,[Textitemj]为所述测试关键词序列,[OutputSignali]为所述信号关键词序列;ρ(Textitemj,OutputSignali)为所述测试关键词序列中第j个关键词与所述测试关键词序列中第i个关键词之间的关联度;m为所述测试关键词序列包含的关键词的第一个数;n为所述测试关键词序列中包含的关键词的第二个数;为最大值选取函数;Quo为预设系数;
选取所述匹配度大于预设匹配阈值的所述输出信号作为所述测试项目关联的信号,建立所述测试项目与输出信号的对应关系;
在所述建立所述测试项目与输出信号的对应关系之后,所述处理器执行所述计算机程序时还实现如下步骤:
若存在未建立对应关系的测试项目,则确定生成该未建立对应关系的测试项目的测试结果所需的输入因子;
从所述应用程序内提取包含所述输入因子的输入信号,识别为该未建立对应关系的测试项目的关联输入信号;
基于所述关联输入信号创建虚拟输出信号,并建立所述虚拟输出信号与该未建立对应关系的测试项目的对应关系。
5.根据权利要求4所述的终端设备,其特征在于,所述运行所述应用程序,采集各个输出信号的运行参数,包括:
若检测到所述输出信号为触控信号类型,则启动模拟触控进程;
通过所述模拟触控进程随机生成触控指令,以采集触控信号类型的输出信号的运行参数。
6.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811018238.1A CN109376069B (zh) | 2018-09-03 | 2018-09-03 | 一种测试报告的生成方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811018238.1A CN109376069B (zh) | 2018-09-03 | 2018-09-03 | 一种测试报告的生成方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109376069A CN109376069A (zh) | 2019-02-22 |
CN109376069B true CN109376069B (zh) | 2023-07-21 |
Family
ID=65404745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811018238.1A Active CN109376069B (zh) | 2018-09-03 | 2018-09-03 | 一种测试报告的生成方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109376069B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110138613B (zh) * | 2019-05-16 | 2022-06-14 | 广东电网有限责任公司 | 一种网络测试模板构建方法、电力网络测试方法及相关装置 |
CN110245077A (zh) * | 2019-05-22 | 2019-09-17 | 深圳壹账通智能科技有限公司 | 一种程序异常的响应方法及设备 |
CN110716869A (zh) * | 2019-09-18 | 2020-01-21 | 平安科技(深圳)有限公司 | 测试用例生成方法、装置、电子设备及计算机可读存储介质 |
CN112463534B (zh) * | 2020-11-26 | 2022-11-11 | 歌尔科技有限公司 | 一种日报生成方法、装置、设备及介质 |
CN112884440A (zh) * | 2021-03-02 | 2021-06-01 | 岭东核电有限公司 | 核电试验中的试验工序执行方法、装置和计算机设备 |
CN114035533A (zh) * | 2021-09-24 | 2022-02-11 | 合众新能源汽车有限公司 | 车辆智能化测试方法及装置 |
CN114238043A (zh) * | 2021-12-31 | 2022-03-25 | 北谷电子有限公司 | 测试数据分析系统及形成方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070007515A (ko) * | 2005-07-11 | 2007-01-16 | 삼성전자주식회사 | 다수의 출력 레벨을 가지는 내장형 자체 테스트회로 |
CN105975394A (zh) * | 2016-05-06 | 2016-09-28 | 华为技术有限公司 | 一种程序测试方法及装置 |
CN106059582A (zh) * | 2016-04-28 | 2016-10-26 | 芯海科技(深圳)股份有限公司 | 一种数模混合信号芯片测试系统及方法 |
CN106095670A (zh) * | 2016-06-02 | 2016-11-09 | 网易(杭州)网络有限公司 | 测试报告的生成方法及装置 |
CN106484616A (zh) * | 2016-09-30 | 2017-03-08 | 北京新能源汽车股份有限公司 | 一种整车控制器的接口自动化测试方法及装置 |
CN106814726A (zh) * | 2015-12-01 | 2017-06-09 | 陕西重型汽车有限公司 | 车载终端can信号自动化测试方法及装置、自动测试台架 |
CN107451064A (zh) * | 2017-08-16 | 2017-12-08 | 北京车和家信息技术有限责任公司 | 自动测试方法、装置、计算机设备和可读存储介质 |
CN108073517A (zh) * | 2017-12-27 | 2018-05-25 | 中国电子产品可靠性与环境试验研究所 | 第三方软件测试的管理方法、装置、介质和计算机设备 |
CN108255653A (zh) * | 2018-01-02 | 2018-07-06 | 深圳壹账通智能科技有限公司 | 一种产品的测试方法及其终端 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1680741B1 (en) * | 2003-11-04 | 2012-09-05 | Kimberly-Clark Worldwide, Inc. | Testing tool for complex component based software systems |
EP2329376A1 (en) * | 2008-08-15 | 2011-06-08 | Verum Holding B.V. | A method and system for testing complex machine control software |
-
2018
- 2018-09-03 CN CN201811018238.1A patent/CN109376069B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070007515A (ko) * | 2005-07-11 | 2007-01-16 | 삼성전자주식회사 | 다수의 출력 레벨을 가지는 내장형 자체 테스트회로 |
CN106814726A (zh) * | 2015-12-01 | 2017-06-09 | 陕西重型汽车有限公司 | 车载终端can信号自动化测试方法及装置、自动测试台架 |
CN106059582A (zh) * | 2016-04-28 | 2016-10-26 | 芯海科技(深圳)股份有限公司 | 一种数模混合信号芯片测试系统及方法 |
CN105975394A (zh) * | 2016-05-06 | 2016-09-28 | 华为技术有限公司 | 一种程序测试方法及装置 |
CN106095670A (zh) * | 2016-06-02 | 2016-11-09 | 网易(杭州)网络有限公司 | 测试报告的生成方法及装置 |
CN106484616A (zh) * | 2016-09-30 | 2017-03-08 | 北京新能源汽车股份有限公司 | 一种整车控制器的接口自动化测试方法及装置 |
CN107451064A (zh) * | 2017-08-16 | 2017-12-08 | 北京车和家信息技术有限责任公司 | 自动测试方法、装置、计算机设备和可读存储介质 |
CN108073517A (zh) * | 2017-12-27 | 2018-05-25 | 中国电子产品可靠性与环境试验研究所 | 第三方软件测试的管理方法、装置、介质和计算机设备 |
CN108255653A (zh) * | 2018-01-02 | 2018-07-06 | 深圳壹账通智能科技有限公司 | 一种产品的测试方法及其终端 |
Also Published As
Publication number | Publication date |
---|---|
CN109376069A (zh) | 2019-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109376069B (zh) | 一种测试报告的生成方法及设备 | |
CN109885311B (zh) | 一种应用程序的生成方法及设备 | |
CN109491894B (zh) | 一种接口测试的方法及设备 | |
TWI729472B (zh) | 特徵詞的確定方法、裝置和伺服器 | |
JP6860070B2 (ja) | 分析装置、ログの分析方法及び分析プログラム | |
CN109240924B (zh) | 一种应用程序的测试方法及设备 | |
CN108108288A (zh) | 一种日志数据解析方法、装置及设备 | |
WO2021017735A1 (zh) | 一种智能合约的形式化验证方法、电子装置及存储介质 | |
CN111338954A (zh) | 一种测试报告的生成方法及设备 | |
CN109491736B (zh) | 一种弹框窗口的显示方法及设备 | |
WO2018120720A1 (zh) | 客户端程序的测试错误定位方法、电子装置及存储介质 | |
WO2020233360A1 (zh) | 一种产品测评模型的生成方法及设备 | |
US20110078203A1 (en) | System and method for application navigation | |
US10534700B2 (en) | Separating test verifications from test executions | |
US11436133B2 (en) | Comparable user interface object identifications | |
CN110737689A (zh) | 数据标准符合性检测方法、装置、系统及存储介质 | |
CN111177113A (zh) | 数据迁移方法、装置、计算机设备和存储介质 | |
CN113986241A (zh) | 一种基于知识图谱的业务规则的配置方法以及装置 | |
CN107871055B (zh) | 一种数据分析方法和装置 | |
CN111523676B (zh) | 辅助机器学习模型上线的方法及装置 | |
CN112883088B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN111917848A (zh) | 基于边缘计算和云计算协同的数据处理方法及云服务器 | |
CN113688134B (zh) | 基于多维数据的可视化变量管理方法、系统及设备 | |
CN115562993A (zh) | 测试脚本录制方法和装置、电子设备及存储介质 | |
CN115794064A (zh) | 任务处理流程的配置方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |