测试代码覆盖率采集方法、系统、设备以及介质技术方案

技术编号:20992443 阅读:17 留言:0更新日期:2019-04-29 22:27
本发明专利技术公开了一种测试代码覆盖率采集方法、系统、设备以及介质,该测试代码覆盖率采集方法包括:获取包含测试代码的多个应用服务器的配置信息;生成多个检测线程,每一所述检测线程映射于一所述应用服务器;根据所述配置信息,将所述检测线程与对应的所述应用服务器建立通信连接;通过运行于所述应用服务器中的检测代理获取所述测试代码的覆盖率数据,并发送至与所述应用服务器的对应的所述检测线程;将由所述检测线程接收到的所述覆盖率数据于一显示界面显示,本发明专利技术简化了繁琐的配置过程,自动获取每个应用服务器中的测试代码的覆盖率数据,实现检测线程的弹性增减,有利于覆盖率数据的统一管理与存储。

Test Code Coverage Acquisition Method, System, Equipment and Media

The invention discloses a test code coverage acquisition method, system, device and medium. The test code coverage acquisition method includes: acquiring configuration information of multiple application servers containing test code; generating multiple detection threads, each of which is mapped to the application server; and according to the configuration information, the detection threads and corresponding application servers are acquired. The application server establishes a communication connection; obtains the coverage data of the test code by the detection agent running in the application server, and sends it to the corresponding detection thread of the application server; displays the coverage data received by the detection thread on a display interface; the invention simplifies the tedious configuration process and automatically obtains the coverage data. The coverage data of test code in each application server can increase or decrease the elasticity of detection threads, which is conducive to the unified management and storage of coverage data.

【技术实现步骤摘要】
测试代码覆盖率采集方法、系统、设备以及介质
本专利技术涉及的是一种代码测试领域的技术,更具体的说,涉及一种测试代码覆盖率采集方法、系统、设备以及介质。
技术介绍
互联网公司提供的服务(应用)相当多,而且更新迭代也相当地频繁。测试人员往往同时负责多个服务的测试工作。如果想获得自己测试的服务中的代码覆盖率信息,不得不做一系列复杂的配置,然后在需要的时候调用命令进行采集。在复杂的日常工作中,不得不投入大量的时间去重复相同的工作。多人协同工作的时候也有配置被别人改掉的风险。并且各自为战的方式也没做到数据的统一收集与管理。显而易见,现有的技术存在如下缺点:配置复杂,新增服务需要从无到有;使用及维护成本高;数据统一管理困难。
技术实现思路
针对现有技术存在的问题,本专利技术的目的在于提供一种测试代码覆盖率采集方法、系统、设备以及介质,通过在各个应用服务器中植入检测代理来获得各个应用服务器中的测试代码的覆盖率数据,并且每一个应用服务器对应一个检测服务器中的检测线程,通过检测线程来接收覆盖率数据,从而简化了繁琐的配置过程,自动获取每个应用服务器中的测试代码的覆盖率数据,实现检测线程的弹性增减,有利于覆盖率数据的统一管理与存储。根据本专利技术的一个方面,提供一种测试代码覆盖率采集方法,包括:获取包含测试代码的多个应用服务器的配置信息;生成多个检测线程,每一所述检测线程映射于一所述应用服务器;根据所述配置信息,将所述检测线程与对应的所述应用服务器建立通信连接;通过运行于所述应用服务器中的检测代理获取所述测试代码的覆盖率数据,并发送至与所述应用服务器的对应的所述检测线程;将由所述检测线程接收到的所述覆盖率数据于一显示界面显示。优选的,所述获取包含测试代码的多个应用服务器的配置信息包括以下步骤:包含有所述测试代码的所述应用服务器生成所述配置信息,并将所述配置信息发送至一发布服务器;根据所述发布服务器中的所述配置信息更新一配置服务器中的数据;于所述配置服务器中获取所述配置信息。优选的,所述配置信息中包括每一所述应用服务器中的识别ID、所述应用服务器的地址以及所述应用服务器中的所述检测代理的端口号。优选的,所述通过运行于所述应用服务器中的检测代理获取所述测试代码的覆盖率数据,并发送至与所述应用服务器的对应的所述检测线程具体包括:获取所述检测代理的启动数据,所述启动数据中包括所述检测代理的启动路径以及所述测试代码的位置信息;根据所述启动路径启动所述检测代理;根据所述测试代码的所述位置信息,所述检测代理获取所述应用服务器中的测试代码的所述覆盖率数据;将所述覆盖率数据发送至与所述应用服务器对应的所述检测线程。优选的,所述覆盖率数据包括:行覆盖率、类覆盖率、分支覆盖率以及方法覆盖率。优选的,所述检测线程定时接收所述检测代理发出的所述覆盖率数据。优选的,所述测试代码覆盖率采集方法还包括:获取测试代码对应的源代码的存储路径;根据所述源代码的所述存储路径提取所述源代码;根据所述覆盖率数据获得被覆盖的所述源代码。优选的,具体包括:检测服务器获取包含测试代码的多个应用服务器的配置信息;所述检测服务器生成多个检测线程,每一所述检测线程映射于一所述应用服务器;所述检测服务器根据所述配置信息,将所述检测线程与对应的所述应用服务器建立通信连接;所述检测代理获取所述测试代码的覆盖率数据,并发送至与所述应用服务器的对应的所述检测线程;所述检测服务器将由所述检测线程接收到的所述覆盖率数据于一显示界面显示。根据本专利技术的一个方面,提供一种测试代码覆盖率采集系统,包括:配置获取模块,获取包含测试代码的多个应用服务器的配置信息;生成模块,生成多个检测线程,每一所述检测线程映射于一所述应用服务器;通信模块,根据所述配置信息,将所述检测线程与对应的所述应用服务器建立通信连接;检测模块,通过运行于所述应用服务器中的检测代理获取所述测试代码的覆盖率数据,并发送至与所述应用服务器的对应的所述检测线程;显示模块,将由所述检测线程接收到的所述覆盖率数据于一显示界面显示。根据本专利技术的一个方面,提供一种测试代码覆盖率采集设备,包括:处理器;存储器,其中存储有所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述测试代码覆盖率采集方法的步骤。根据本专利技术的一个方面,提供一种计算机可读存储介质,其特征在于,所述程序被执行时实现上述测试代码覆盖率采集方法的步骤。上述技术方案的有益效果是:本专利技术的测试代码覆盖率采集方法、系统、设备以及介质,通过在各个应用服务器中植入检测代理来获得各个应用服务器中的测试代码的覆盖率数据,并且每一个应用服务器对应一个检测服务器中的检测线程,通过检测线程来接收覆盖率数据,从而简化了繁琐的配置过程,自动获取每个应用服务器中的测试代码的覆盖率数据,实现检测线程的弹性增减,有利于覆盖率数据的统一管理与存储。本专利技术的其它特征和优点以及本专利技术的各种实施例的结构和操作,将在以下参照附图进行详细的描述。应当注意,本专利技术不限于本文描述的具体实施例。在本文给出的这些实施例仅仅是为了说明的目的。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显。图1为本专利技术的较佳的实施例中,一种测试代码覆盖率采集方法的具体实施场景;图2为本专利技术的较佳的实施例中,一种测试代码覆盖率采集方法的流程示意图;图3为本专利技术的较佳的实施例中,一种与图1中的具体实施场景对应的功能框图;图4为本专利技术的较佳的实施例中,一种配置信息的获取流程示意图;图5为本专利技术的较佳的实施例中,一种覆盖率数据获取流程示意图;图6为本专利技术的较佳的实施例中,一种测试代码覆盖率采集系统的结构框图;图7为本专利技术的较佳的实施例中,测试代码覆盖率采集设备;图8为本专利技术的较佳的实施例中,计算机可读存储介质的结构示意图。从以下结合附图的详细描述中,本专利技术的特征和优点将变得更加明显。贯穿附图,相同的附图标识相应元素。在附图中,相同附图标记通常指示相同的、功能上相似的和/或结构上相似的元件。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有付出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本申请中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。需要说明的是,在不冲突的情况下,本专利技术中的实施例及实施例中的特征可以相互组合。下面结合附图和具体实施例对本专利技术作进一步说明,但不作为本专利技术的限定。图1是一种测试代码覆盖率采集方法的具体实施场景。图1示出的实施场景中,包括应用集群102、检测服务器101、发布服务器1本文档来自技高网...

【技术保护点】
1.一种测试代码覆盖率采集方法,其特征在于,包括:获取包含测试代码的多个应用服务器的配置信息;生成多个检测线程,每一所述检测线程映射于一所述应用服务器;根据所述配置信息,将所述检测线程与对应的所述应用服务器建立通信连接;通过运行于所述应用服务器中的检测代理获取所述测试代码的覆盖率数据,并发送至与所述应用服务器的对应的所述检测线程;将由所述检测线程接收到的所述覆盖率数据于一显示界面显示。

【技术特征摘要】
1.一种测试代码覆盖率采集方法,其特征在于,包括:获取包含测试代码的多个应用服务器的配置信息;生成多个检测线程,每一所述检测线程映射于一所述应用服务器;根据所述配置信息,将所述检测线程与对应的所述应用服务器建立通信连接;通过运行于所述应用服务器中的检测代理获取所述测试代码的覆盖率数据,并发送至与所述应用服务器的对应的所述检测线程;将由所述检测线程接收到的所述覆盖率数据于一显示界面显示。2.根据权利要求1所述的测试代码覆盖率采集方法,其特征在于,所述获取包含测试代码的多个应用服务器的配置信息包括以下步骤:包含有所述测试代码的所述应用服务器生成所述配置信息,并将所述配置信息发送至一发布服务器;根据所述发布服务器中的所述配置信息更新一配置服务器中的数据;于所述配置服务器中获取所述配置信息。3.根据权利要求2所述的测试代码覆盖率采集方法,其特征在于,所述配置信息中包括每一所述应用服务器中的识别ID、所述应用服务器的地址以及所述应用服务器中的所述检测代理的端口号。4.根据权利要求1所述的测试代码覆盖率采集方法,其特征在于,所述通过运行于所述应用服务器中的检测代理获取所述测试代码的覆盖率数据,并发送至与所述应用服务器的对应的所述检测线程具体包括:获取所述检测代理的启动数据,所述启动数据中包括所述检测代理的启动路径以及所述测试代码的位置信息;根据所述启动路径启动所述检测代理;根据所述测试代码的所述位置信息,所述检测代理获取所述应用服务器中的测试代码的所述覆盖率数据;将所述覆盖率数据发送至与所述应用服务器对应的所述检测线程。5.根据权利要求4所述的测试代码覆盖率采集方法,其特征在于,所述覆盖率数据包括:行覆盖率、类覆盖率、分支覆盖率以及方法覆盖率。6.根据权利要求1所述的测试代码...

【专利技术属性】
技术研发人员:邵兵顾杰
申请(专利权)人:江苏满运软件科技有限公司
类型:发明
国别省市:江苏,32

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

1