CN115129596A - 接口自动测试方法、系统、装置和存储介质 - Google Patents
接口自动测试方法、系统、装置和存储介质 Download PDFInfo
- Publication number
- CN115129596A CN115129596A CN202210767453.1A CN202210767453A CN115129596A CN 115129596 A CN115129596 A CN 115129596A CN 202210767453 A CN202210767453 A CN 202210767453A CN 115129596 A CN115129596 A CN 115129596A
- Authority
- CN
- China
- Prior art keywords
- data
- interface
- test
- test case
- tested
- 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.)
- Pending
Links
Images
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/3684—Test management for test design, e.g. generating new test cases
-
- 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/3664—Environments for testing or debugging software
-
- 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/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例公开了一种接口自动测试方法、系统、装置和存储介质,属于自动化测试领域,其方法包括判断是否存储有与待测接口数据对应的备用测试用例数据;若否,调取所述待测接口数据的文档数据,并根据所述文档数据生成临时测试用例数据;根据所述临时测试用例数据对所述待测接口数据进行测试。测试用例是自动化测试的必要条件,在没有备用测试用例数据时,自动生成临时测试用例数据,以进行后续的自动测试,使测试过程无需人工参与,提高了测试效率,保证了测试质量,降低了测试成本。
Description
技术领域
本发明涉及一种自动化测试技术领域,尤其涉及一种接口自动测试方法、系统、装置和存储介质。
背景技术
随着技术及业务的快速发展,单体架构模式,甚至是SOA架构模式已不能满足快发展迭代的技术要求,越来越多的公司团队进行了微服务化的改造,微服务遵循“高内聚,低耦合”的基本原则,将业务功能细粒度化,针对特定的功能服务进行发布,影响小,风险小,成本低,能做到频繁发布版本,快速交付需求。同时功能服务提供的接口都遵循标准的REST风格设计,做到微服务接口的标准化。
在功能接口的更新过程中,由于现有的测试方式需要人为参与,提供测试用例等,效率低下,难以满足测试需求。
发明内容
有鉴于此,本发明提供了一种接口自动测试方法、系统、装置和存储介质,用于解决现有技术中的测试效率低的问题。为达上述之一或部分或全部目的或是其他目的,本发明提出一种接口自动测试方法、系统、装置和存储介质,第一方面:
一种接口自动测试方法,应用在持续集成持续部署测试环境中,所述测试方法包括:
判断是否存储有与待测接口数据对应的备用测试用例数据;
若否,调取所述待测接口数据的文档数据,并根据所述文档数据生成临时测试用例数据;
根据所述临时测试用例数据对所述待测接口数据进行测试。
优选地,所述根据所述文档数据生成临时测试用例数据的步骤包括:
从所述文档数据中提取所述待测接口数据的接口基础数据;
根据预设的用例模板编排所述接口基础数据,得到所述临时测试用例数据。
优选地,所述接口基础数据包括请求方法数据、资源定位符数据、请求参数数据、字段类型数据、响应状态码数据和响应结果描述数据;
所述根据预设的用例模板编排所述接口基础数据,得到所述临时测试用例数据的步骤包括:
提取与所述请求方法数据和所述资源定位符数据均匹配的所述用例模板;
从所述用例模板中获取所述请求方法数据、所述资源定位符数据、所述请求参数数据、所述字段类型数据、所述响应状态码数据和所述响应结果描述数据的位置信息;
根据所述位置信息配置所述请求方法数据、所述资源定位符数据、所述请求参数数据、所述字段类型数据、所述响应状态码数据和所述响应结果描述数据,得到所述临时测试用例数据。
优选地,在所述根据所述位置信息配置所述请求方法数据、所述资源定位符数据、所述请求参数数据、所述字段类型数据、所述响应状态码数据和所述响应结果描述数据之后,还包括:
根据所述用例模板或预设的用例条件判断所述临时测试用例数据是否缺少内容数据;
若是,根据缺少的所述内容数据生成补充信息并输出。
优选地,在所述根据所述文档数据生成临时测试用例数据之后,还包括:
将所述临时测试用例数据存储到用例库中。
优选地,在所述判断是否存储有与待测接口数据对应的备用测试用例数据之前,还包括:
获取所述待测接口数据以及所述待测接口数据的接口表征数据;所述接口表征数据包括请求方法数据和资源定位符数据;
所述判断是否存储有与待测接口数据对应的备用测试用例数据的步骤包括:
查找预设的用例库中是否存储有与所述请求方法数据和所述资源定位符数据均匹配的所述备用测试用例数据。
优选地,在所述获取所述待测接口数据之后,所述测试方法还包括:
调取已知接口数据和对应的所述备用测试用例数据;
对所述已知接口数据进行测试。
第二方面:
一种接口自动测试系统,包括
判断模块,用于判断是否存储有与待测接口数据对应的备用测试用例数据;并在否时,调取所述待测接口数据的文档数据,并根据所述文档数据生成临时测试用例数据;
测试模块,用于根据所述临时测试用例数据对所述待测接口数据进行测试。
优选地,所述判断模块包括提取单元,用于从所述文档数据中提取所述待测接口数据的接口基础数据;
编排单元,用于根据预设的用例模板编排所述接口基础数据,得到所述临时测试用例数据。
优选地,所述接口基础数据包括请求方法数据、资源定位符数据、请求参数数据、字段类型数据、响应状态码数据和响应结果描述数据;
所述编排单元包括模板子单元,用于提取与所述请求方法数据和所述资源定位符数据均匹配的所述用例模板;
位置子单元,用于从所述用例模板中获取所述请求方法数据、所述资源定位符数据、所述请求参数数据、所述字段类型数据、所述响应状态码数据和所述响应结果描述数据的位置信息;
配置子单元,用于根据所述位置信息配置所述请求方法数据、所述资源定位符数据、所述请求参数数据、所述字段类型数据、所述响应状态码数据和所述响应结果描述数据,得到所述临时测试用例数据;
优选地,所述编排单元还包括判断子单元,用于根据所述用例模板或预设的用例条件判断所述临时测试用例数据是否缺少内容数据;
若是,根据缺少的所述内容数据生成补充信息并输出。
优选地,所述系统还包括存储模块,用于将所述临时测试用例数据存储到用例库中。
优选地,所述系统还包括获取模块,用于获取所述待测接口数据以及所述待测接口数据的接口表征数据;所述接口表征数据包括请求方法数据和资源定位符数据;
所述判断模块包括判断单元,用于查找预设的用例库中是否存储有与所述请求方法数据和所述资源定位符数据均匹配的所述备用测试用例数据;
优选地,所述获取模块包括已知接口单元,用于调取已知接口数据和对应的所述备用测试用例数据;
已知接口测试单元,用于对所述已知接口数据进行测试。
第三方面:
一种接口自动测试装置,包括存储器和处理器,所述存储器中存储有接口自动测试方法,所述处理器用于在执行所述接口自动测试方法时采用上述所述方法。
第四方面:
一种存储介质,其特征在于,存储有能够被处理器加载并执行上述所述方法的计算机程序。
实施本发明实施例,将具有如下有益效果:
通过判断待测接口数据是否具备备用测试用例数据,若不具备,则自动根据待测接口数据的文档数据生成临时测试用例数据,用来对待测接口数据的自动测试进行支撑。使整个过程无需人工参与,节省了人力资源,提高了测试效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
其中:
图1为一个实施例中接口自动测试方法的流程图。
图2为一个实施例中接口自动测试方法的生成临时测试用例数据的流程图。
图3为一个实施例中接口自动测试方法的根据接口基础数据生成临时测试用例数据的流程图。
图4为一个实施例中接口自动测试系统的结构框图。
图5为一个实施例中接口自动测试装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
本申请实施例公开一种接口自动测试方法,应用在持续集成持续部署测试环境中,即CI/CD流程。在持续集成持续部署测试环境中,串联有多个工具,用于完成对测试数据的自动测试。其中,工具例如代码托管工具、编译工具、打包工具和通知工具等。在接收到测试数据后,持续集成持续部署测试环境中的工具会按照预设的逻辑线对测试数据进行处理,以对测试数据自动测试。
在微服务得到广泛应用的情况下,测试需求越来越大,传统的测试方式需要人为参与,通过人工编写的测试用例对待测接口进行测试,以生成测试结果。人工的参与不仅提高了测试成本,也降低了测试效率,难以满足大量测试的业务需求。针对上述缺陷,本申请实施例公开了一种接口自动测试方法,如图1所示,包括:
S101、判断是否存储有与待测接口数据对应的备用测试用例数据。
需要说明的是,待测接口数据指需要进行测试的服务接口数据。其中,想要对服务接口数据进行测试,需要依托在功能服务数据的基础上。即在开发功能服务时,会对应开发若干接口,用于支撑数据的传输或处理。在对待测接口数据进行测试前,与待测接口数据对应的功能服务数据已部署在测试环境中,保证待测接口数据的正常测试。为了便于理解,例如,功能服务为登录时,需要开发两个API接口。对API接口进行测试前,将登录功能的相关代码部署在测试环境中。测试过程中,执行登录的相关代码以及API接口的相关代码,即待测接口数据,以对API接口进行测试。
此外,对待测接口数据进行自动化测试时,除待测接口数据本身外,还需要具有测试用例,以提供测试导向和/或测试流程。在一实施例中,功能服务数据对应的测试用例均预存在用例库中或者特定的存储路径下,备用测试用例数据是针对待测接口数据预先设置的测试用例。
在一实施例中,通过到预设的用例库中或特定的存储路径下检索待测接口数据的标签或者特定标识,判断是否存储有对应的备用测试用例数据。
若否,执行步骤S102、调取待测接口数据的文档数据,并根据文档数据生成临时测试用例数据。
即,在未存储有与待测接口数据对应的备用测试用例数据时,调取文档数据,以及执行后续步骤。其中,在一实施例中,设计服务接口时,采用微服务化,功能服务的服务接口均按照标准的REST(Representational State Transfer)风格设计,保证服务接口的标准性;以及各服务接口均通过Swagger进行文档管理。需要生成临时测试用例数据时,根据待测接口数据的标签或标识到Swagger中查找并调取对应的文档数据即可。在其他实施例中,若Swagger中未存储有与待测接口数据对应的文档数据,输出补充指令至预设的联系人;若调取的文档数据格式错误或内容缺失,输出替换指令至预设的联系人。便于及时得到文档数据,以自动生成临时测试用例数据。
S103、根据临时测试用例数据对待测接口数据进行测试。
在持续集成持续部署测试环境中,得到待测接口数据和对应的临时测试用例数据后,即可自动进行测试以及输出测试结果,无需人工参与。具体的,在一实施例中,持续集成持续部署测试环境中部署有代码托管工具,例如Bitbucket;编译工具,例如Jenkins;打包工具,例如Docker;通知工具,例如Slack/Email;镜像存储工具,例如Artifactory/ECR。实现从自动编译测试数据到自动测试测试数据。
针对快速的测试需求,在存在待测接口数据时,自动查找相应的备用测试用例数据;若没有相应的备用测试用例数据,则自动生成临时测试用例数据以及自动进行测试。无需人工参与,节省了人工成本,降低了测试成本,提高了测试效率以及测试质量。
在一实施例中,若存储有与待测接口数据对应的备用测试用例数据,则执行步骤S104、根据备用测试用例数据对待测接口数据进行测试。
在另一本发明实施例中,为了进一步限定及说明,如图2所示,步骤根据文档数据生成临时测试用例数据包括:
S201、从文档数据中提取待测接口数据的接口基础数据。
接口基础数据指功能接口的基本参数。在一实施例中,Swagger对功能接口进行接口文档管理,因此文档数据中记录有功能接口的基本参数。需要提取接口基础数据时,通过各个基本参数的位置信息或者唯一标识,到文档数据中查找,即可得到接口基础数据。
S202、根据预设的用例模板编排接口基础数据,得到临时测试用例数据。
在一实施例中,由于功能接口具有一致的设计风格,具有标准性,因此仅预设一个用例模板。需要生成临时测试用例数据时,到指定路径下提取该用例模板即可。在另一实施例中,标准性的功能接口间会存在差异,因此用例模板设置有多个。在调取用例模板时,从待测接口数据对应的文档数据中提取待测接口数据的唯一标识或特征,而后到特定路径下查找与唯一标识或特征对应的用例模板。
在一实施例中,用例模板中包括但不限于接口基础数据的类型、数量、位置。从用例模板中获取接口基础数据的编排规则,按照编排规则对接口基础数据进行编排,即可得到临时测试用例数据。
利用用例模板对接口基础数据进行编排,简单快捷,不易出错,有助于保证临时测试用例数据的准确性和标准性。此外,也便于保证自动测试的流畅性,提高测试效率。
在另一本发明实施例中,为了进一步限定及说明,如图3所示,接口基础数据包括但不限于请求方法数据、资源定位符数据、请求参数数据、字段类型数据、响应状态码数据和响应结果描述数据。步骤根据预设的用例模板编排接口基础数据,得到临时测试用例数据包括:
S301、提取与请求方法数据和资源定位符数据均匹配的用例模板。
在一实施例中,用例模板设置有多个,针对不同的功能接口设置有不同的用例模板。先根据请求方法数据和资源定位符数据找到对应的用例模板。
需要说明的是,请求方法数据包括但不限于get、post、put、delete;资源定位符数据即功能接口的url;请求参数数据包括但不限于SipPhoneIn(username、password、domain、expiry);响应状态码数据包括但不限于响应失败的状态码、响应成功的状态码、断言状态码;响应结果描述数据指结果信息。
S302、从用例模板中获取请求方法数据、资源定位符数据、请求参数数据、字段类型数据、响应状态码数据和响应结果描述数据的位置信息。
S303、根据位置信息配置请求方法数据、资源定位符数据、请求参数数据、字段类型数据、响应状态码数据和响应结果描述数据,得到临时测试用例数据。
在一实施例中,用例模板为表格的形式,根据请求方法数据、资源定位符数据、请求参数数据、字段类型数据、响应状态码数据和响应结果描述数据所位于的列数和行数即可得到位置信息,而后生成新的表格,将请求方法数据、资源定位符数据、请求参数数据、字段类型数据、响应状态码数据和响应结果描述数据按照位置信息存储在新的表格中,从而得到临时测试用例数据。
将待测接口数据的请求方法数据、资源定位符数据、请求参数数据、字段类型数据、响应状态码数据和响应结果描述数据的位置信息均进行配置,生成相应的临时测试用例数据,较为全面的覆盖了待测接口数据的接口基础数据,有助于保证后续的自动测试过程中,能够在临时测试用例数据中查找到必要的信息,从而维持测试过程的流畅进行,保证测试效率。
在另一本发明实施例中,为了进一步限定及说明,在步骤根据位置信息配置请求方法数据、资源定位符数据、请求参数数据、字段类型数据、响应状态码数据和响应结果描述数据之后,还包括:
根据用例模板或预设的用例条件判断临时测试用例数据是否缺少内容数据。
若是,根据缺少的内容数据生成补充信息并输出;若否,执行步骤根据临时测试用例数据对待测接口数据进行测试。
在一实施例中,根据用例模板判断临时测试用例数据是否缺少内容数据的步骤为将用例模板中的内容与临时测试用例数据中的内容一一比对,判断临时测试用例数据中是否存在空值。
在另一实施例中,用例条件为临时测试用例数据中是否存在值为0或无效的内容。从而判断临时测试用例数据是否缺少内容数据。
在缺少内容数据时,从用例模板、临时测试用例数据或用例条件中获得缺少的内容数据的标识或者位置信息,再生成补充信息输出给预设的联系地址。
通过输出补充信息的方式,由其他服务器、处理器或执行主体查找缺少的内容,便于将缺少的内容补充至临时测试用例数据中,得到完整的临时测试用例数据,保证后续的测试流畅度,提高测试效率。
在另一本发明实施例中,为了进一步限定及说明,在步骤根据文档数据生成临时测试用例数据之后,还包括:
将临时测试用例数据存储到用例库中。
用例库为预先设置的用于存储备用测试用例数据的数据库。将临时测试用例数据存储到用例库中后,便于之后在对当前的待测接口数据进行二次测试时,能够从用例库中直接得到对应的测试用例,而无需再次生成临时测试用例数据,节约网络资源,降低测试成本,提高测试效率。
在另一本发明实施例中,为了进一步限定及说明,在步骤判断是否存储有与待测接口数据对应的备用测试用例数据之前还包括:
获取待测接口数据以及待测接口数据的接口表征数据。
在一实施例中,接口表征数据指能够代表待测接口数据唯一性的数据。在另一实施例中,接口表征数据包括请求方法数据和资源定位符数据。通过请求方法数据和资源定位符数据即可找到唯一的功能接口。
步骤判断是否存储有与待测接口数据对应的备用测试用例数据包括:
查找预设的用例库中是否存储有与请求方法数据和资源定位符数据均匹配的备用测试用例数据。
根据请求方法数据和资源定位符数据到用例库中查找对应的备用测试用例数据,有助于提高查找结果的准确性,从而提高得到的备用测试用例数据属于待测接口数据的准确性。进而保证后续的自动测试能够有序且顺畅的执行。
在另一本发明实施例中,为了进一步限定及说明,在步骤获取待测接口数据之后,还包括:
S401、调取已知接口数据和对应的备用测试用例数据。
在一实施例中,已知接口数据指已经存在、未进行修改以及与待测接口数据有关联的功能接口的功能接口数据。其中,判定功能接口间是否有关联的方式为:判断多个功能接口是否均属于同一个功能服务。若均属于同一个功能服务,则判定多个功能接口间具有关联性,否则,判定为没有关联性。
在另一实施例中,判定功能接口间是否有关联的方式为:判断多个功能接口是否存在通信关系。若存在,判定多个功能接口间具有关联性;否则,判定为没有关联性。
在其他实施例中,已知接口数据指已经存在且未进行修改的所有功能接口数据。
需要说明的是,由于已知接口数据在之前已经进行过自动测试,因此用例库中存在对应的备用测试用例数据。其中,存储到用例库中的测试用例数据统称为备用测试用例数据。
调取已知接口数据对应的备用测试用例数据的方式与待测接口数据相同,即根据已知接口数据的请求方法数据和资源定位符数据到用例库中查找。
S402、对已知接口数据进行测试。
得到备用测试用例数据后,利用持续集成持续部署测试环境中预先设置的测试工具,对已知接口数据进行自动测试。
在对待测接口数据进行测试的同时,对已知接口数据也进行测试,便于得知待测接口数据是否会对已知接口数据造成影响,使在对新的功能接口进行测试的同时,回归对旧的功能接口的测试,提高了测试的全面性,提高了测试质量和效果。
利用服务接口标准化的特性,提前预存各个服务接口的文档数据。在服务接口更新后或者开发后,持续集成持续部署中的测试工具自动识别更新或新开发的功能接口,而后对功能接口进行自动测试。在测试构成中,若功能接口没有对应的备用测试用例数据,则根据文档数据和对应的用例模板自动生成临时测试用例数据,以自动对功能接口进行测试,无需人工干预,提高了测试效率,降低了测试成本。此外,在测试更新的或者新开发的功能接口的同时,对旧的功能接口也进行自动化测试,便于判断更新的活新开发的功能接口是否会对旧的功能接口产生不良影响,提高了测试的全面性。
本申请实施例还公开一种接口自动测试系统,如图4所示,包括判断模块1,用于判断是否存储有与待测接口数据对应的备用测试用例数据;并在否时,调取所述待测接口数据的文档数据,并根据所述文档数据生成临时测试用例数据;
测试模块2,用于根据所述临时测试用例数据对所述待测接口数据进行测试。
优选地,所述判断模块1包括提取单元,用于从所述文档数据中提取所述待测接口数据的接口基础数据;
编排单元,用于根据预设的用例模板编排所述接口基础数据,得到所述临时测试用例数据。
优选地,所述接口基础数据包括请求方法数据、资源定位符数据、请求参数数据、字段类型数据、响应状态码数据和响应结果描述数据;
所述编排单元包括模板子单元,用于提取与所述请求方法数据和所述资源定位符数据均匹配的所述用例模板;
位置子单元,用于从所述用例模板中获取所述请求方法数据、所述资源定位符数据、所述请求参数数据、所述字段类型数据、所述响应状态码数据和所述响应结果描述数据的位置信息;
配置子单元,用于根据所述位置信息配置所述请求方法数据、所述资源定位符数据、所述请求参数数据、所述字段类型数据、所述响应状态码数据和所述响应结果描述数据,得到所述临时测试用例数据;
优选地,所述编排单元还包括判断子单元,用于根据所述用例模板或预设的用例条件判断所述临时测试用例数据是否缺少内容数据;
若是,根据缺少的所述内容数据生成补充信息并输出。
优选地,所述系统还包括存储模块,用于将所述临时测试用例数据存储到用例库中。
优选地,所述系统还包括获取模块,用于获取所述待测接口数据以及所述待测接口数据的接口表征数据;所述接口表征数据包括请求方法数据和资源定位符数据;
所述判断模块1包括判断单元,用于查找预设的用例库中是否存储有与所述请求方法数据和所述资源定位符数据均匹配的所述备用测试用例数据;
优选地,所述获取模块包括已知接口单元,用于调取已知接口数据和对应的所述备用测试用例数据;
已知接口测试单元,用于对所述已知接口数据进行测试。
测试模块2和已知接口测试单元分别对待测接口数据和已知接口数据进行测试,其中,在测试待测接口数据时,判断模块1会生成临时测试用例数据,以支撑待测接口数据的自动化测试;已知接口单元则获取用例库中的备用测试用例数据,支撑已知接口数据的自动化测试。新旧接口同时测试,提高了测试效率,便于得到待测接口数据是否会对已知接口数据造成影响,从而提高了测试质量和测试效果。整个测试过程,能够自动生成临时测试用例数与,无需人工参与,降低了测试成本,提高了测试效率。
这里需要指出的是:以上应用于接口自动测试系统实施例项的描述,与上述方法描述是类似的,具有同方法实施例相同的有益效果。对于本发明接口自动测试系统实施例中未披露的技术细节,本领域的技术人员请参照本发明方法实施例的描述而理解。
需要说明的是,本发明实施例中,如果以软件功能模块的形式实现上述方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read OnlyMemory)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本发明实施例不限制于任何特定的硬件和软件结合。
相应地,本申请实施例还公开一种存储介质,存储有能够被处理器加载并执行上述方法的计算机程序。
本申请实施例还公开一种接口自动测试装置,如图5所示,包括一个处理器100、至少一个通信总线200、用户接口300、至少一个外部通信接口400和存储器500。其中,通信总线200配置为实现这些组件之间的连接通信。其中,用户接口300可以包括显示屏,外部通信接口400可以包括标准的有线接口和无线接口。其中,存储器500中存储有接口自动测试方法。其中,处理器100用于在执行存储器500中存储的接口自动测试方法时采用上述方法。
以上应用于接口自动测试装置和存储介质实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明接口自动测试装置和存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台设备执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (10)
1.一种接口自动测试方法,其特征在于,应用在持续集成持续部署测试环境中,所述测试方法包括:
判断是否存储有与待测接口数据对应的备用测试用例数据;
若否,调取所述待测接口数据的文档数据,并根据所述文档数据生成临时测试用例数据;
根据所述临时测试用例数据对所述待测接口数据进行测试。
2.如权利要求1所述的接口自动测试方法,其特征在于,所述根据所述文档数据生成临时测试用例数据的步骤包括:
从所述文档数据中提取所述待测接口数据的接口基础数据;
根据预设的用例模板编排所述接口基础数据,得到所述临时测试用例数据。
3.如权利要求2所述的接口自动测试方法,其特征在于,所述接口基础数据包括请求方法数据、资源定位符数据、请求参数数据、字段类型数据、响应状态码数据和响应结果描述数据;
所述根据预设的用例模板编排所述接口基础数据,得到所述临时测试用例数据的步骤包括:
提取与所述请求方法数据和所述资源定位符数据均匹配的所述用例模板;
从所述用例模板中获取所述请求方法数据、所述资源定位符数据、所述请求参数数据、所述字段类型数据、所述响应状态码数据和所述响应结果描述数据的位置信息;
根据所述位置信息配置所述请求方法数据、所述资源定位符数据、所述请求参数数据、所述字段类型数据、所述响应状态码数据和所述响应结果描述数据,得到所述临时测试用例数据。
4.如权利要求3所述的接口自动测试方法,其特征在于,在所述根据所述位置信息配置所述请求方法数据、所述资源定位符数据、所述请求参数数据、所述字段类型数据、所述响应状态码数据和所述响应结果描述数据之后,还包括:
根据所述用例模板或预设的用例条件判断所述临时测试用例数据是否缺少内容数据;
若是,根据缺少的所述内容数据生成补充信息并输出。
5.如权利要求1-3任一项所述的接口自动测试方法,其特征在于,在所述根据所述文档数据生成临时测试用例数据之后,还包括:
将所述临时测试用例数据存储到用例库中。
6.如权利要求1所述的接口自动测试方法,其特征在于,在所述判断是否存储有与待测接口数据对应的备用测试用例数据之前,还包括:
获取所述待测接口数据以及所述待测接口数据的接口表征数据;所述接口表征数据包括请求方法数据和资源定位符数据;
所述判断是否存储有与待测接口数据对应的备用测试用例数据的步骤包括:
查找预设的用例库中是否存储有与所述请求方法数据和所述资源定位符数据均匹配的所述备用测试用例数据。
7.如权利要求6所述的接口自动测试方法,其特征在于,在所述获取所述待测接口数据之后,所述测试方法还包括:
调取已知接口数据和对应的所述备用测试用例数据;
对所述已知接口数据进行测试。
8.一种接口自动测试系统,其特征在于,包括
判断模块,用于判断是否存储有与待测接口数据对应的备用测试用例数据;并在否时,调取所述待测接口数据的文档数据,并根据所述文档数据生成临时测试用例数据;
测试模块,用于根据所述备用测试用例数据或临时测试用例数据对所述待测接口数据进行测试。
9.一种接口自动测试装置,包括存储器和处理器,其特征在于,所述存储器中存储有接口自动测试方法,所述处理器用于在执行所述接口自动测试方法时采用权利要求1-7任一种所述方法。
10.一种存储介质,其特征在于,存储有能够被处理器加载并执行如权利要求1-7任一项所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210767453.1A CN115129596A (zh) | 2022-06-30 | 2022-06-30 | 接口自动测试方法、系统、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210767453.1A CN115129596A (zh) | 2022-06-30 | 2022-06-30 | 接口自动测试方法、系统、装置和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115129596A true CN115129596A (zh) | 2022-09-30 |
Family
ID=83381621
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210767453.1A Pending CN115129596A (zh) | 2022-06-30 | 2022-06-30 | 接口自动测试方法、系统、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115129596A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116185883A (zh) * | 2023-04-28 | 2023-05-30 | 阿里云计算有限公司 | 测试用例生成方法、测试系统、装置、设备及介质 |
-
2022
- 2022-06-30 CN CN202210767453.1A patent/CN115129596A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116185883A (zh) * | 2023-04-28 | 2023-05-30 | 阿里云计算有限公司 | 测试用例生成方法、测试系统、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108108297B (zh) | 自动化测试的方法和装置 | |
CN106874389B (zh) | 数据的迁移方法和装置 | |
CN107276842B (zh) | 接口测试方法、装置及电子设备 | |
CN103313289A (zh) | Wap系统自动化测试系统和方法 | |
CN113448862B (zh) | 软件版本测试方法、装置及计算机设备 | |
CN109614312A (zh) | 测试用例生成方法、装置、电子设备及存储介质 | |
CN110941779A (zh) | 加载页面的方法、装置、存储介质及电子设备 | |
CN113704110A (zh) | 用户界面的自动化测试方法及装置 | |
CN115129596A (zh) | 接口自动测试方法、系统、装置和存储介质 | |
CN110688305B (zh) | 测试环境同步方法、装置、介质、电子设备 | |
CN109587351B (zh) | 一种呼叫测试方法、装置、设备及存储介质 | |
CN110908907A (zh) | Web页面测试方法、装置、设备及存储介质 | |
CN113485927A (zh) | 一种测试数据生成方法、装置、设备及存储介质 | |
CN111488286B (zh) | 一种Android模块独立开发的方法及装置 | |
CN110955449B (zh) | 客户端的灰度发布方法及装置 | |
CN112433935A (zh) | 测试方法、装置、电子设备及存储介质 | |
CN111800511A (zh) | 同步登录态的处理方法、系统、设备及可读存储介质 | |
CN114443294B (zh) | 大数据服务组件部署方法、系统、终端及存储介质 | |
CN115309558A (zh) | 一种资源调度管理系统、方法、计算机设备及存储介质 | |
CN112230938B (zh) | 工业互联网的租赁产品的配置方法和装置 | |
CN115328611A (zh) | 虚拟机管理方法、装置、服务器及可读存储介质 | |
CN115061785A (zh) | 信息下发方法、装置、存储介质及服务器 | |
CN113821249A (zh) | 项目开发配置的方法、装置、电子设备和可读存储介质 | |
CN110221952B (zh) | 业务数据的处理方法及装置、业务数据处理系统 | |
CN108848183B (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 |