用于获取测试覆盖率的方法、装置、系统、电子设备和介质制造方法及图纸

技术编号:27459930 阅读:13 留言:0更新日期:2021-02-25 05:14
本公开的实施例公开了获取测试覆盖率的方法、装置、系统、电子设备和介质。该方法的一具体实施方式包括:响应于接收到目标端发送的测试覆盖率获取请求,扫描部署于本机的待测试应用;为所扫描到的至少一个待测试应用分配相应的端口;按照该测试覆盖率获取请求所指示的测试方式启动该至少一个待测试应用,以及执行测试用例;获取该至少一个待测试应用对应的覆盖率文件;将所获取的覆盖率文件通过所分配的相应的端口发送至该目标端。该实施方式实现了远程同时收集多个应用的测试覆盖率,降低了测试覆盖率收集的复杂度,减少了操作出错率,节约了人力。约了人力。约了人力。

【技术实现步骤摘要】
用于获取测试覆盖率的方法、装置、系统、电子设备和介质


[0001]本公开的实施例涉及计算机
,具体涉及用于获取测试覆盖率的方法、装置、系统、电子设备和介质。

技术介绍

[0002]测试覆盖率是评价测试完整性的重要的度量标准之一。测试覆盖率分为单元测试覆盖率和功能测试覆盖率。其中,功能测试覆盖率是为了统计测试人员在测试过程中,执行的用例覆盖到的方法、代码行、分支、类等指标,以作为测试过程改进以及度量测试质量的一个重要参考。现有的测试覆盖率收集方法通常由人工针对不同应用设置不同的配置文件,在服务器上启动应用并进行测试,再使用开源的覆盖率工具jacoco的API(Application Programming Interface,应用程序接口)或者第三方工具jenkins插件来搜集各应用的测试覆盖率文件。导致操作复杂,效率较低。

技术实现思路

[0003]本公开的实施例提出了用于获取测试覆盖率的方法、装置、电子设备和介质。
[0004]第一方面,本公开的实施例提供了一种用于获取测试覆盖率的方法,该方法包括:响应于接收到目标端发送的测试覆盖率获取请求,扫描部署于本机的待测试应用;为所扫描到的至少一个待测试应用分配相应的端口;按照测试覆盖率获取请求所指示的测试方式启动至少一个待测试应用,以及执行测试用例;获取至少一个待测试应用对应的覆盖率文件;将所获取的覆盖率文件通过所分配的相应的端口发送至目标端。
[0005]第二方面,本公开的实施例提供了一种用于获取测试覆盖率的装置,该装置包括:扫描单元,被配置成响应于接收到目标端发送的测试覆盖率获取请求,扫描部署于本机的待测试应用;分配单元,被配置成为所扫描到的至少一个待测试应用分配相应的端口;执行单元,被配置成按照测试覆盖率获取请求所指示的测试方式启动至少一个待测试应用,以及执行测试用例;获取单元,被配置成获取至少一个待测试应用对应的覆盖率文件;发送单元,被配置成将所获取的覆盖率文件通过所分配的相应的端口发送至目标端。
[0006]第三方面,本公开的实施例提供了一种用于获取测试覆盖率的系统,该系统包括:主控端,被配置成向被控端发送测试覆盖率获取请求;接收被控端发送的覆盖率文件;被控端,被配置成实现如第一方面中所描述的方法。
[0007]第四方面,本公开的实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一实现方式描述的方法。
[0008]第五方面,本公开的实施例提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
[0009]本公开的实施例提供的用于获取测试覆盖率的方法、装置、系统、电子设备和介质,通过远程接收测试覆盖率获取请求,自动为不同的应用分配不同的端口以传输搜集到
的覆盖率文件,从而实现了远程同时收集多个应用的测试覆盖率,降低了测试覆盖率收集的复杂度,减少了操作出错率,节约了人力。
附图说明
[0010]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显:
[0011]图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
[0012]图2是根据本公开的用于获取测试覆盖率的方法的一个实施例的流程图;
[0013]图3是根据本公开的实施例的用于获取测试覆盖率的方法的一个应用场景的示意图;
[0014]图4是根据本公开的用于获取测试覆盖率的方法的又一个实施例的流程图;
[0015]图5是根据本公开的用于获取测试覆盖率的装置的一个实施例的结构示意图;
[0016]图6是根据本公开的用于获取测试覆盖率的系统的一个实施例的结构示意图;
[0017]图7是适于用来实现本公开的实施例的电子设备的结构示意图。
具体实施方式
[0018]下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关专利技术,而非对该专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关专利技术相关的部分。
[0019]需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
[0020]图1示出了可以应用本公开的用于获取测试覆盖率的方法或用于获取测试覆盖率的装置的示例性架构100。
[0021]如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
[0022]终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如软件测试类应用、网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、图像识别类应用等。
[0023]终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是具有显示屏并且远程通信的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
[0024]服务器105可以是提供各种服务的服务器,例如为终端设备101、102、103上软件测试类应用提供支持的后台服务器。后台服务器可以对接收到的测试覆盖率获取请求进行分析处理,并生成处理结果(例如覆盖率文件),还可以将生成的处理结果反馈给终端设备。
[0025]需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可
以实现成多个软件或软件模块(例如用来提供分布式服务的软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
[0026]需要说明的是,本公开的实施例所提供的用于获取测试覆盖率的方法一般由服务器105执行,相应地,用于获取测试覆盖率的装置一般设置于服务器105中。应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
[0027]继续参考图2,示出了根据本公开的用于获取测试覆盖率的方法的一个实施例的流程200。该用于获取测试覆盖率的方法包括以下步骤:
[0028]步骤201,响应于接收到目标端发送的测试覆盖率获取请求,扫描部署于本机的待测试应用。
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于获取测试覆盖率的方法,包括:响应于接收到目标端发送的测试覆盖率获取请求,扫描部署于本机的待测试应用;为所扫描到的至少一个待测试应用分配相应的端口;按照所述测试覆盖率获取请求所指示的测试方式启动所述至少一个待测试应用,以及执行测试用例;获取所述至少一个待测试应用对应的覆盖率文件;将所获取的覆盖率文件通过所分配的相应的端口发送至所述目标端。2.根据权利要求1所述的方法,其中,所述响应于接收到目标端发送的测试覆盖率获取请求,扫描部署于本机的待测试应用,包括:响应于接收到远程连接请求,从所述远程连接请求中提取发送端的公钥;确定预设授权列表中是否存在所述公钥;响应于确定所述预设授权列表中存在所述公钥,对所述发送端进行身份验证;响应于确定所述发送端通过所述身份验证,建立与所述发送端的连接;响应于接收到所述发送端发送的测试覆盖率获取请求,扫描部署于本机的待测试应用。3.根据权利要求1所述的方法,其中,所述为所扫描到的至少一个待测试应用分配相应的端口,包括:确定所扫描到的待测试应用的数目作为目标数目;从本机端口中选取所述目标数目个未被占用的端口;建立所选取的未被占用的端口的标识与所扫描到的至少一个待测试应用之间的对应关系。4.根据权利要求3所述的方法,其中,所述从本机端口中选取所述目标数目个未被占用的端口,包括:调用所述目标数目个线程,从所述本机端口中并行选取未被占用的端口。5.根据权利要求4所述的方法,其中,所述从所述本机端口中并行选取未被占用的端口,包括:对于所述目标数目个线程中的线程,获取与该线程对应的初始端口标识,以及执行以下端口确定步骤:确定所述初始端口标识所指示的端口是否被占用;响应于确定未被占用,将所述初始端口标识所指示的端口确定为可用端口;响应于确定被占用,将所述初始端口标识对应的编号增加所述目标数目后所生成的标识确定为新的初始端口标识,以及继续执行所述端口确定步骤。6.根据权利要求3-5之一所述的方法,其中,所述按照所述测试覆盖率获取请求所指示的测试方式启动所述至少一个待测试应用,以及执行测试用例,包括:对于所述至少一个待测试应用中的待测试应用,通过该待测试应用对应的端口修改该待测试应用的配置文件;根据所述配置文件启动对应的应用,以及执行测试用例。7.一种用于获取测试覆盖率的装置,包括:扫描单元,被配置成响应于接收到目标端发送的测试覆盖率获取请求,扫描部署于本机的待测试应用;
分配单元,被配置成为所扫描到的至少一个待测试应用分配相应的端口;执行单元,被配置成按照所述测试覆盖率获取请求所指示的测试方式启动所述至少一个待测试应用,以及执行测试用例;获取单元,被配置成获取所述至少一个待测试应用对应的覆盖率文件;发送单元,被配置...

【专利技术属性】
技术研发人员:任星旺李秋林
申请(专利权)人:京东数科海益信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1