接口测试用例生成方法、装置和系统制造方法及图纸

技术编号:23470506 阅读:25 留言:0更新日期:2020-03-06 12:38
本发明专利技术提供一种接口测试用例生成方法、生成装置,一种接口测试方法、测试装置和系统,主要包括:采集接口信息;调取代码,提取接口参数,采用异步的方式对所述接口参数进行智能分析;对所述智能分析结果进行排列组合,生成测试用例。使接口测试用例能够自动生成,进而接口测试可以自动化完成,解决了接口测试用例需要人工编写、接口测试需要人工参与的问题,提高了用例编写和接口测试的效率和质量,降低运维成本。

Interface test case generation method, device and system

【技术实现步骤摘要】
接口测试用例生成方法、装置和系统
本专利技术涉及计算机自动化领域,特别涉及一种接口测试用例生成方法、装置和接口测试方法、装置及相应系统。
技术介绍
自动化是软件研发中一个重要环节。后台接口测试自动化作为提升回归测试效率和质量的重要工具,越来越受到大家的重视。目前比较普遍的做法有:单元测试UT(Java、Python、PHP等语言都有相关单元测试工具)、接口测试工具(各大厂商一般都有自研工具;开源社区也有一些开源工具,例如:去哪儿开源的YAPI工具)、基于压测工具LoadRunner、Jmeter等的一些录制回放工具。随着软件研发的不断完善,对软件质量要求和后台接口自动化的要求不断提高。目前,各种接口测试方案均需要大量有编程能力的人员进行维护,同时测试脚本统一性差,导致回归测试效率低,自动化功能开发、维护成本高,最终导致项目难以落地。
技术实现思路
为解决接口测试用例需要人工编写,导致接口测试效率和质量低、维护成本高的问题,本专利技术提供一种接口测试用例生成方法、生成装置,一种接口测试方法、测试装置和一种接口测试系统。所述技术方案具体如下:本专利技术提供一种接口测试用例生成方法和装置,使得接口测试用例生成智能化。第一方面,提供一种接口测试用例生成方法,其包括:采集接口信息;调取代码,采用异步的方式对所述接口参数进行智能分析,提取接口参数;对所述接口参数的智能分析结果进行排列组合,生成测试用例。第二方面,提供一种接口测试用例生成装置,其特征在于,所述装置包括:采集模块,用于采集接口信息;智能分析模块,用于调取代码,提取接口参数,采用异步的方式对所述接口参数进行分析;用例生成模块,用于对接口参数进行排列组合,生成测试用例。基于此,本专利技术提供一种接口测试的方法、装置和系统,使得接口测试智能化。第三方面,本专利技术提供一种接口测试方法,其特征在于,从用例库中调取所有接口的测试用例,其中所述测试用例根据上述接口测试用例生成方法生成;在测试流水线上运行自动化脚本。第四方面,提供一种接口测试装置,其包括:调取模块,用于调取测试用例,其中所述测试用例根据上述接口测试用例生成方法生成;自动化执行系统,用于运行自动化脚本。本申请还提供一种用于接口测试的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面接口测试用例生成方法和第三方面接口测试方法。综上所述,通过采用异步的方式智能分析采集到的接口信息,提取接口参数,并对接口参数排列组合,生成用例的技术手段,使接口测试用例能够自动生成,进而接口测试可以自动化完成,解决了接口测试用例需要人工编写、接口测试需要人工参与的问题,提高了用例编写和接口测试的效率和质量,进而降低了运维成本。附图说明为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术一实施例中接口测试用例生成方法的流程示意图;图2为本专利技术另一实施例中接口测试用例生成装置的架构示意图;图3为本专利技术另一实施例中接口测试方法的流程示意图;图4为本专利技术另一实施例中接口测试装置的架构示意图;图5为本专利技术另一实施例中接口测试系统的流程示意图;图6为本专利技术另一实施例中接口测试系统的架构示意图。具体实施方式下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。实施例1请参见图1,其示出一种接口测试用例生成方法的流程示意图,该方法可以用于根据采集接口信息,智能分析接口信息,自动生成接口测试所需测试用例,该方法具体方案如下:001,采集接口信息。例如在tomcat上抓取被测服务接口信息。002,调取代码,采用异步的方式对所述接口信息进行智能分析,提取接口参数。其中智能分析指利用代码从接口信息中提取接口参数,代码从GIT仓中提取。根据服务的名称,存在服务名称和代码库的映射关系表,此表可以通过规则自动生成,如果不符合服务规则的关系,则需要手工维护。通过这个映射关系,可以将接口根据服务定位到GIT仓库中的对应的代码,并且能够将该代码复制到接口分析所在服务器。没有代码的工程,需要对编译文件进行反编译解析操作。采集接口信息时已经拿到了每个接口的报文,但是并不知道各个接口字段的具体信息,如类型,长短限制、类型限制等,需要通过代码,对接口信息进行智能分析,获取接口具体参数。接口信息包括:入参类型、入参限制等,例如,如果入参类型是对象,对接口信息进行递归分析。递归分析的具体内容,以入参的递归分析为例:在方法A的入参中,不只是简单地类型,如Int、String、Double等,而是复杂的类型如Class,Object等。并且在Class中还包含其他的Class,依次包含下去。需要通过逐层分析各个参数的类型,递归找到最后的简单类型。如果采集的信息涉及敏感数据(如金融系统中的客户数据),此处对数据进行如脱敏、按规则填充等工作。003,对所述接口参数进行排列组合,生成测试用例。接口类型可以是如枚举、String、Int、Long、double等,如在接口分析中遇到枚举类型,需要对各个枚举进行测试,有N个取值;例如,对有限制的入参需要对正常值,上边界值和下边界值,范围外的值进行取值,有4中可能;如果一个接口中的参数,有三个枚举,分别有5、8、6种取值可能,有4个有边界限制的参数,那么可生成用例数为5*8*6*4*4*4*4=61440种可能。在此阶段,用户可以配置剔除用例生成规则。具体地,该方法还包括:所述采用异步的方式对所述接口信息进行智能分析包括对被测接口信息进行所述智能分析和对外部服务接口信息进行所述智能分析。接口中调用的所有外部服务接口分析,主要分析外部接口的返回对程序的影响。根据所述对外部服务接口信息进行所述智能分析的结果,生成挡板数据。在接口智能分析中分析调用外部有接口的基础上,对mock挡板数据进行智能生成,为后续的自动化测试做准备。具体地,该方法还包括:实时监控各接口,按预设监控策略采集所述接口信息。其中监控策略包括按频率采集和按接口名称采集。监控策略是预先配置的,启用监控功能时直接将监控策略读取到内存,使用时按策略为后续异步分析重新采集数据。该设置的目的是为避免监控功能涉及复杂判断逻辑而影响系统的每秒事务数(TPS)本文档来自技高网...

【技术保护点】
1.一种接口测试用例生成方法,其特征在于,包括:/n采集接口信息;/n调取代码,采用异步的方式对所述接口参数进行智能分析,提取接口参数;/n对所述智能分析结果进行排列组合,生成测试用例。/n

【技术特征摘要】
1.一种接口测试用例生成方法,其特征在于,包括:
采集接口信息;
调取代码,采用异步的方式对所述接口参数进行智能分析,提取接口参数;
对所述智能分析结果进行排列组合,生成测试用例。


2.根据权利要求1所述的接口测试用例生成方法,其特征在于,该方法还包括:
所述采用异步的方式对所述接口参数进行智能分析包括对被测接口信息进行所述智能分析和对外部服务接口信息进行所述智能分析;
根据所述对外部服务接口信息进行所述智能分析的结果,生成挡板数据。


3.根据权利要求2所述的接口测试用例生成方法,其特征在于,该方法还包括:
实时监控各接口,按预设监控策略采集所述接口信息;
所述对智能分析结果进行排列组合,生成测试用例还包括对所述挡板数据的排列组合;
将生成所述用例存储到用例库。


4.一种接口测试用例生成装置,其特征在于,所述装置包括:
采集模块,用于采集接口信息;
智能分析模块,用于调取代码,采用异步的方式对所述接口信息进行分析,提取接口参数;
用例生成模块,用于对接口参数进行排列组合,生成测试用例。


5.根据权利要求4所述的接口测试用例生成装置,其特征在于,该装置还包括:
所述对所述接口信息进行智能分析包括对被测接口信息进行所述智能分析和对外部服务接口信...

【专利技术属性】
技术研发人员:李洋唐晓楠鲍胜飞刘勇军
申请(专利权)人:中信百信银行股份有限公司
类型:发明
国别省市:北京;11

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

1