CN110990269A - 一种接口测试的方法、装置及系统 - Google Patents
一种接口测试的方法、装置及系统 Download PDFInfo
- Publication number
- CN110990269A CN110990269A CN201911173636.5A CN201911173636A CN110990269A CN 110990269 A CN110990269 A CN 110990269A CN 201911173636 A CN201911173636 A CN 201911173636A CN 110990269 A CN110990269 A CN 110990269A
- Authority
- CN
- China
- Prior art keywords
- parameter
- interface
- test
- target parameter
- parameter value
- 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/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- 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
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
技术领域
本发明涉及接口测试领域,尤其涉及一种接口测试的方法、装置及系统。
背景技术
当前,随着互联网的发展,一个项目为了实现预期的功能会开放数量庞大的接口供使用者调用。为了保证这些接口能够被正常调用,在实际上线前需要对这些接口进行测试。然而,由于接口的协议的种类也有很多,每种接口都可能具有完全不同的实现方式,每个接口的参数数量依据业务的复杂度的不同也会不同,少则几个,多则近百个。这些问题都给测试这些接口的正确性和保证测试接口的覆盖率带来了巨大的挑战。
同时,在项目实际开发过程中,由于项目的变动,常常会需要对接口或者接口参数进行调整或者修改。但测试数据却没有同步做相应的调整或修改,造成测试时大量的调试成本和时间精力花费于对测试数据或接口的规范的修改上。
发明内容
为了解决现有技术的不足,本发明的主要目的在于提供一种接口测试的方法、装置及系统,用以自动生成接口测试用例,实现接口的自动化测试。
第一方面,本申请提供了一种接口测试的方法,所述方法包括:
读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;
其中,获得所述目标参数的参数值至少包括:
根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件读取所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;
根据所述目标参数与所述目标参数的参数值,生成接口测试用例;
向被测端发送根据所述接口测试用例生成的接口调用请求,获得被测端根据所述请求调用所述待测接口生成并返回的测试结果。
在一些实施例中,在获得被测端返回的测试结果后,所述方法还包括:
根据预存的断言规则,对所述测试结果进行断言判断,获得断言判断结果以便生成测试报告。
在一些实施例中,所述方法还包括:
读取待测接口对应的测试配置文件,获得接口文件,所述接口文件包含所述目标参数的参数属性;
所述根据所述目标参数与所述目标参数的参数值,生成接口测试用例还包括:
读取所述接口文件,获得所述目标参数的参数属性;
根据所述目标参数、所述目标参数的参数信息及所述目标参数的参数值,生成接口测试用例。
在一些实施例中,所述参数属性包括所述目标参数的参数类型。
在一些实施例中,所述参数属性包括所述目标参数是否为测试必填参数。
第二方面,本申请提供了一种接口测试的方法,所述方法包括:
测试端读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;
其中,获得所述目标参数的参数值至少包括:
所述测试端根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件读取所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;
所述测试端根据所述目标参数与所述目标参数的参数值,生成接口测试用例;
所述测试端根据所述接口测试用例生成接口调用请求并向被测端发送所述请求,
所述被测端根据所述请求调用所述待测接口生成测试结果并发送至测试端;
所述测试端接收所述测试结果。
第三方面,本申请提供了一种接口测试装置,所述装置包括:
采集模块,用于读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值,其中,获得所述目标参数的参数值至少包括:
根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件读取所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;
生成模块,用于根据所述目标参数与所述目标参数的参数值,生成接口测试用例;
通信模块,用于向被测端发送根据所述接口测试用例生成的接口调用请求,获得被测端根据所述请求调用所述待测接口生成并返回的测试结果。
在一些实施例中,所述装置还包括:
分析模块,用于根据预存的断言规则,对所述测试结果进行断言判断,获得断言判断结果以便生成测试报告。
第四方面,本申请提供了一种接口测试系统,所述系统包括:
测试端,用于读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;
其中,获得所述目标参数的参数值至少包括:根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件获得所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;根据所述目标参数与所述目标参数的参数值,生成接口测试用例;向被测端发送根据所述接口测试用例生成的接口调用请求,获得被测端根据所述请求调用接口生成并返回的测试结果;
被测端,用于根据所述请求调用接口生成并返回的测试结果。
第五方面,本申请提供了一种计算机系统,所述系统包括:
一个或多个处理器;
以及与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:
读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;
其中,获得所述目标参数的参数值至少包括:
根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件获得所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;
根据所述目标参数与所述目标参数的参数值,生成接口测试用例;
向被测端发送根据所述接口测试用例生成的接口调用请求,获得被测端根据所述请求调用接口生成并返回的测试结果。
根据本申请提供的具体实施例,本申请公开了以下技术效果:
本申请公开了通过读取待测接口对应的测试配置文件获得目标参数与目标参数的参数值,其中,获得所述目标参数的参数值至少包括:根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件读取所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值,提供了根据从参数值文件读取的可调整目标参数的参数值与测试配置文件中设置的固定值目标参数的参数值生成测试用例的方法,可覆盖所有接口及接口参数,提高了测试的质量;进一步地,可根据所述目标参数与所述目标参数的参数值,生成接口测试用例,向被测端发送根据所述接口测试用例生成的接口调用请求,获得被测端根据所述请求调用所述待测接口生成并返回的测试结果,实现了测试用例的自动化生成,降低了编写测试用例的成本,提高了测试效率;
本申请还公开了读取所述测试配置文件,获得所述待测接口对应的接口文件,所述接口文件包含所述目标参数的参数属性;所述根据所述目标参数与所述目标参数的参数值,生成接口测试用例还包括:读取所述接口文件,获得所述目标参数的参数属性;根据所述目标参数、所述目标参数的参数属性及所述目标参数的参数值,生成接口测试用例,其中目标参数的参数属性中包含了目标参数是否为测试必填参数、目标参数的参数类型,实现了对目标参数的参数属性的自动设置,当目标参数为非必填参数时,可通过所述方法生成目标参数有参数值、目标参数为空的不同情况的测试用例,实现了模拟不同的情况对待测接口进行测试,提高了接口测试的测试覆盖率;
本申请公开了对测试结果根据预存的断言判断规则进行断言判断分析,以自动生成分析结果供测试人员参考,减轻了测试人员的工作量,降低了对测试人员编码水平的要求。
当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的系统结构图;
图2是本申请的测试配置文件图;
图3是本申请的测试数据文件图;
图4是本申请的测试报告图;
图5是本申请的方法流程图;
图6是本申请的装置结构图;
图7是本申请的计算机系统结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如背景技术所述,为了保证接口能够被正常调用,需要对其进行测试。由于在项目开发的过程中接口常常会进行调整,被调整的接口的参数也经常发生变动。因此,本申请提供了一种接口测试的方法,将数据进行抽象,按照接口、待测参数与待测参数的参数值对应的方式生成测试配置文件,通过自动读取与待测接口对应的测试配置文件,获取与待测接口对应的待测参数及待测参数对应的参数值,并基于此自动生成测试用例,后利用该生成的测试用例对待测接口进行测试,获得待测接口的测试结果。
图1示出了本申请提供的系统结构图,包括了被测端和测试端。测试端可根据预先生成的测试配置文件自动生成测试用例,根据测试用例发送请求至被测端,获得被测端根据请求生成并传回的测试数据。进一步地测试端可根据传回的测试数据进行自动分析,生成测试报告供测试人员参考,实现了对接口的自动化测试。
实施例一
为了实现上述目的,具体的,以Python+unitest开源框架搭建的测试端为例,上述方案可通过如下步骤实现:
步骤一、读取待测接口对应的测试配置文件,获得目标参数与所述目标参数的参数值、接口文件;
其中,本申请目标参数的参数值有两种获得途径,分别为固定值和读取数据文件获得。测试配置文件中指定了参数值的获得途径,当读取待测接口对应的测试配置文件时,即可获得目标参数以及其参数值的获得途径,进而依据途径获得参数值:
固定值的途径是指对于一些参数,其值基本保持不变的,则可将参数值直接放置在测试配置文件中,通过读取待测接口对应的测试配置文件即可直接获得目标参数对应的参数值。如读取待测接口对应的,得到interface_search.pn:1:其中pn参数为固定值参数,参数值为1,即表示该目标参数的参数值为固定值且值为1。
从数据文件获得是指将目标参数的参数值放置在预先独立存储的数据文件中,当读取待测接口对应的测试配置文件获知目标参数的参数值在数据文件中时,则根据该数据文件的标识找到该数据文件进而获得对应的参数值。为了便于通过测试配置文件获得对应的数据文件,数据文件的名称优选设置为与对应的目标参数的名称相同,进而通过名称确定对应的数据文件以进行查询。如读取待测接口对应的测试配置文件,得到interface_search.kw:File:其中kw标识通过数据文件获得参数值,而kw冒号后的File则为数据文件标识(如名称),即表示该目标参数的参数值需从数据文件File中获得。
在数据文件中,以行为数据单位,每一行内容都代表一条数据。每个数据文件中可以存储多行的数据。本申请的测试配置文件中进一步的还配置了具体的如何从数据文件存储的诸多数据中读取参数值的规则,以便后续生成具体的测试用例:
如图2中所示,interface_search.loop:5行表示生成测试用例需循环5次,即从数据文件中循环5次读数据的过程,以获得5条数据。
如图2中所示,interface_search.kw:File,random,表明指定读取同名的kw数据文件来获取数据,random表示随机从同名的数据文件中选择一条数据生成测试用例,也可将random改为order,表示按数据文件中从上至下的顺序选择数据文件中的数据生成测试用例。
根据这些规则可以从数据文件中读取具体的参数值,以便后续生成测试用例。
一个用于测试的接口,其对测试输入的参数都有一定的属性设置,如要求输入的目标参数的数据类型,某一目标参数是否是测试必填项、目标参数的含义、默认值等。测试用数据也需满足对应测试接口对输入参数的属性设置。为此,本申请中还针对接口配置了接口文件,并将接口文件的地址配置在测试配置文件中,如图2所示的interface_search.path表示测试配置文件中还包含了接口文件的地址,通过该地址可获得接口文件,进而获得接口文件中的参数属性信息,如下表1示出了接口文件的参数属性表,包含了接口参数的参数类型、含义、是否必填及默认值。根据参数属性信息设计测试数据。如对于接口文件中规定为非必填的参数,可生成该参数为空的测试数据。对于接口文件中规定为必填的参数,则按照上述参数值的取值方式从数据文件或固定值中获得数据。
接口文件中规定了四种接口参数支持的参数类型,包括字符串、数值、数组及布尔值。当待测接口的所有参数的参数类型超过一种时,需要读取接口文件,获得所有参数的对应参数类型,以实现对应生成测试用例。
参数 | 必填 | 类型 | 含义 | 默认值 |
ver | 否 | String | 版本 | 1.0 |
kw | 是 | String | 关键字 | null |
pn | 否 | int | 第几页 | 1 |
ps | 否 | int | 每页个数 | 20 |
表1
步骤二、根据目标参数及目标参数的参数值、接口文件中的目标参数的参数属性,生成测试数据文件。
优选的,对于接口文件中规定为非必填的参数,可生成该参数为空的测试数据。
对于接口文件中规定为必填的参数,如果是数据文件取值,则目标参数从对应的数据文件中进行取值,如果测试配置文件中规定为random,随机从同名的数据文件中选择一条数据生成测试用例,如果规定为order,从数据文件中从上至下的顺序选择数据文件中的数据生成测试数据。如果是固定值,则直接从测试配置文件获得参数值。
具体的,根据接口文件中规定的每一参数的参数类型,当待测接口的所有参数的参数类型超过一种时,需要根据接口文件中每个参数对应的参数类型,生成测试用例。
当上述测试用例的生成过程中出现异常时,本申请提供了如下的解决方法:
当测试配置文件中不存在某一参数,但接口文件中或数据文件中存在该对应参数名的参数值时,测试端会跳过此参数及其值,但如出错,会按全局出错设定的操作来处理;
当测试配置文件中存在某一参数,但测试配置文件中未对其进行赋值,且对应的数据文件为空或不存在时,测试端会赋一个空字符串给此参数,如还出错,会按全局出错设定的操作来处理;
当测试配置文件中不存在某一参数,且不存在该参数对应的值时,测试端不做处理,但如出错,会按全局出错设定的操作来处理。
图3示出了测试数据文件的文件内容,根据测试配置文件中规定的5次循环次数,从各个目标参数对应的数据文件中取值了5次,生成了5个测试数据,集合成了测试数据文件。
步骤七、被测端根据接口调用请求,生成测试结果。
步骤八、测试端接收被测端返回的测试结果,对所述测试结果进行断言判断,生成测试报告。
测试端预先导入了Python的unittest模块,对每个测试接口返回的测试结果进行断言判断,确定此接口是否通过测试。
具体的,上述断言判断可通过如下方法实现:
assert expression表达式判断:在表达式条件为false的时候触发异常。
assertEqual(a,b)相等判断:用于判断一个数值型的参数,其返回结果是否等于预期的数值。例如:可以判断errorcode是否等于0,等于0则接口正常,没有出错。
assertNotEqual(a,b)不相等判断:用于判断一个数值型的参数,其返回结果是否不等于预期的数据。
assertIn(a,b)包含判断:用于判断一个字符型的参数,其值是否包含预期字符。
assertNotIn(a,b)不包含判断:用于判断一个字符型的参数,其值是否不包含预期字符。
assertTrue(x)为True判断:用于判断一个布尔型的参数,其值是否为真。
assertFalse(x)为False判断:用于判断一个布尔型的参数,其值是否为假。
在获得断言判断结果后,使用Python的HTML模块生成Html测试报告。
图4示出了上述的接口测试报告,可根据测试用例或用例集来分别统计执行通过、失败、错误的个数,并根据统计结果获得通过率供测试人员参考,提高了测试人员的测试效率。
实施例二
对应上述实施例,如图5所示,本申请提供了一种接口测试的方法,所述方法包括:
510、读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;
优选的,所述目标参数中包含固定值参数及读取通过参数值文件获得的参数。
其中,获得所述目标参数的参数值至少包括:
520、根据所述测试配置文件获得所述目标参数对应的参数值文件并从所述参数值文件获得所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;
优选的,还所述方法还包括读取接口文件,获得目标参数的参数属性。
优选的,所述参数属性包含所述目标参数的参数类型。
优选的,所述参数属性包含所述目标参数是否为测试必填参数。
530、根据所述目标参数与所述目标参数的参数值,生成接口测试用例;
优选的,所述方法还包括:根据所述目标参数、所述目标参数的参数值及所述接口文件中规定的所述目标参数的参数属性,生成接口测试用例。
优选的,当所述目标参数的参数属性为非测试必填参数时,生成接口测试用例时可跳过所述目标参数。
540、根据所述接口测试用例生成接口调用请求并向被测端发送所述请求,获得被测端返回的测试结果。
优选的,在获得被测端返回的测试结果后,所述方法还包括:
550、根据预存的断言规则,对所述测试结果进行断言判断,获得断言判断结果以便生成测试报告。
测试人员可直接根据生成的测试报告判断测试的接口是否通过测试,降低了测试人员的工作量。
实施例三、对应上述实施例二,本申请提供了一种接口测试的方法,所述方法包括:
步骤一、测试端读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;
其中,获得所述目标参数的参数值至少包括:
步骤二、所述测试端根据所述测试配置文件获得所述目标参数对应的参数值文件并从所述参数值文件获得所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;
步骤三、所述测试端根据所述目标参数与所述目标参数的参数值,生成接口测试用例;
步骤四、所述测试端根据所述接口测试用例生成接口调用请求并向被测端发送所述请求,
步骤五、所述被测端根据所述请求调用接口生成测试结果并发送至测试端;
步骤六、所述测试端接收被测端根据所述请求调用接口生成并返回的测试结果。
优选的,当测试端接收被测端根据所述请求调用接口生成并返回的测试结果后,所述方法还包括:
被测端根据预存的断言规则,对所述测试结果进行断言判断,获得断言判断结果以便生成测试报告。
优选的,所述方法还包括:
测试端读取待测接口对应的测试配置文件,获得所述待测接口对应的接口文件;
所述测试端根据所述目标参数与所述目标参数的参数值,生成接口测试用例还包括:
测试端读取所述接口文件,获得所述目标参数的参数属性;
测试端根据所述目标参数、所述目标参数的参数属性及所述目标参数的参数值,生成接口测试用例。
优选的,所述参数属性包括所述目标参数的参数类型。
优选的,所述参数属性包括所述目标参数是否为测试必填参数。
实施例四
对应上述实施例二,如图6所示,本申请提供了一种接口测试装置,所述装置包括:
采集模块610,用于读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值及根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件获得所述目标参数的参数值;
生成模块620,用于所述目标参数与所述目标参数的参数值,生成接口测试用例;
通信模块630,用于向被测端发送根据所述接口测试用例生成的接口调用请求,获得被测端根据所述请求调用接口生成并返回的测试结果。
优选的,所述装置还包括:
分析模块640,用于根据预存的断言规则,对所述测试结果进行断言判断,获得断言判断结果以便生成测试报告。
优选的,所述采集模块还可用于读取待测接口对应的测试配置文件,获得所述待测接口对应的接口文件。
优选的,所述生成模块还可用于:
读取所述接口文件,获得所述目标参数的参数属性;
根据所述目标参数、所述目标参数的参数属性及所述目标参数的参数值,生成接口测试用例。
优选的,所述参数属性包括所述目标参数的参数类型。
优选的,所述参数属性包括所述目标参数是否必填。
实施例五、
对应上述实施例二,如图1所示,本申请提供了一种接口测试系统,所述系统包括:
测试端,用于读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;其中,获得所述目标参数的参数值至少包括:根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件获得所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;根据所述目标参数与所述目标参数的参数值,生成接口测试用例;向被测端发送根据所述接口测试用例生成的接口调用请求,获得被测端根据所述请求调用接口生成并返回的测试结果被测端,
被测端,用于根据所述请求调用接口生成测试结果并发送至测试端。
优选的,接收端在接收到被测端根据所述请求调用接口生成并返回的测试结果后,所述测试端还可用于:
根据预存的断言规则,对所述测试结果进行断言判断,获得断言判断结果以便生成测试报告。
优选的,所述测试端还可用于:
读取待测接口对应的测试配置文件,获得接口文件;
所述根据所述目标参数与所述目标参数的参数值,生成接口测试用例还包括:
读取所述接口文件,获得所述目标参数的参数属性;
根据所述目标参数、所述目标参数的参数属性及所述目标参数的参数值,生成接口测试用例。
实施例六、对应上述实施例,本申请还提供了一种计算机系统,所述系统包括:
一个或多个处理器;
以及与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:
读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;
其中,获得所述目标参数的参数值至少包括:
根据所述测试配置文件获得所述目标参数对应的参数值文件并从所述参数值文件获得所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;
根据所述目标参数与所述目标参数的参数值,生成接口测试用例;
向被测端发送根据所述接口测试用例生成的接口调用请求,获得被测端根据所述请求调用接口生成并返回的测试结果。
其中,图7示例性的展示出了计算机系统的架构,具体可以包括处理器1510,视频显示适配器1511,磁盘驱动器1512,输入/输出接口1513,网络接口1514,以及存储器1520。上述处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,与存储器1520之间可以通过通信总线1530进行通信连接。
其中,处理器1510可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请所提供的技术方案。
存储器1520可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1520可以存储用于控制计算机系统1500运行的操作系统1521,用于控制计算机系统1500的低级别操作的基本输入输出系统(BIOS)。另外,还可以存储网页浏览器1523,数据存储管理系统1524,以及图标字体处理系统1525等等。上述图标字体处理系统1525就可以是本申请实施例中具体实现前述各步骤操作的应用程序。总之,在通过软件或者固件来实现本申请所提供的技术方案时,相关的程序代码保存在存储器1520中,并由处理器1510来调用执行。
输入/输出接口1513用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
网络接口1514用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1530包括一通路,在设备的各个组件(例如处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,与存储器1520)之间传输信息。
另外,该计算机系统1500还可以从虚拟资源对象领取条件信息数据库1541中获得具体领取条件的信息,以用于进行条件判断,等等。
需要说明的是,尽管上述设备仅示出了处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,存储器1520,总线1530等,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本申请方案所必需的组件,而不必包含图中所示的全部组件。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,云服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种接口测试的方法,其特征在于,所述方法包括:
读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;
其中,获得所述目标参数的参数值至少包括:
根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件读取所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;
根据所述目标参数与所述目标参数的参数值,生成接口测试用例;
向被测端发送根据所述接口测试用例生成的接口调用请求,获得被测端根据所述请求调用所述待测接口生成并返回的测试结果。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
读取所述测试配置文件,获得所述待测接口对应的接口文件,所述接口文件包含所述目标参数的参数属性;
所述根据所述目标参数与所述目标参数的参数值,生成接口测试用例还包括:
读取所述接口文件,获得所述目标参数的参数属性;
根据所述目标参数、所述目标参数的参数属性及所述目标参数的参数值,生成接口测试用例。
3.根据权利要求2所述的方法,其特征在于,所述参数属性包括所述目标参数是否为测试必填参数。
4.根据权利要求2或3所述的方法,其特征在于,所述参数属性包括所述目标参数的参数类型。
5.根据权利要求1-3任一所述的方法,其特征在于,所述获得被测端根据所述请求调用所述待测接口生成并返回的测试结果后,所述方法还包括:
根据预存的断言规则,对所述测试结果进行断言判断,获得断言判断结果以便根据所述断言判断结果生成接口测试报告。
6.一种接口测试的方法,其特征在于,所述方法包括:
测试端读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;
其中,获得所述目标参数的参数值至少包括:
所述测试端根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件读取所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;
所述测试端根据所述目标参数与所述目标参数的参数值,生成接口测试用例;
所述测试端根据所述接口测试用例生成接口调用请求并向被测端发送所述请求,
所述被测端根据所述请求调用所述待测接口生成测试结果并发送至测试端;
所述测试端接收所述测试结果。
7.一种接口测试装置,其特征在于,所述装置包括:
采集模块,用于读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;其中,获得所述目标参数的参数值至少包括:
根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件读取所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;
生成模块,用于根据所述目标参数与所述目标参数的参数值,生成接口测试用例;
通信模块,用于向被测端发送根据所述接口测试用例生成的接口调用请求,获得被测端根据所述请求调用所述待测接口生成并返回的测试结果。
8.根据权利要求7所述的装置,其特征在于,所述采集模块还可用于读取所述测试配置文件,获得所述待测接口对应的接口文件,所述接口文件包含所述目标参数的参数属性;
所述生成模块还可用于读取所述接口文件,获得所述目标参数的参数属性;
根据所述目标参数、所述目标参数的参数属性及所述目标参数的参数值,生成接口测试用例。
9.一种接口测试系统,其特征在于,所述系统包括:
测试端,用于读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;
其中,获得所述目标参数的参数值至少包括:根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件读取所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;根据所述目标参数与所述目标参数的参数值,生成接口测试用例;向被测端发送根据所述接口测试用例生成的接口调用请求,获得被测端根据所述请求调用所述待测接口生成并返回的测试结果;
被测端,用于根据所述请求调用所述待测接口生成并返回的测试结果。
10.一种计算机系统,其特征在于,所述系统包括:
一个或多个处理器;
以及与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:
读取待测接口对应的测试配置文件,获得目标参数及所述目标参数的参数值;
其中,获得所述目标参数的参数值至少包括:
根据所述测试配置文件获得所述目标参数对应的参数值文件,并从所述参数值文件读取所述目标参数的参数值,所述参数值文件用于保存所述目标参数的参数值;
根据所述目标参数与所述目标参数的参数值,生成接口测试用例;
向被测端发送根据所述接口测试用例生成的接口调用请求,获得被测端根据所述请求调用所述待测接口生成并返回的测试结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911173636.5A CN110990269A (zh) | 2019-11-26 | 2019-11-26 | 一种接口测试的方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911173636.5A CN110990269A (zh) | 2019-11-26 | 2019-11-26 | 一种接口测试的方法、装置及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110990269A true CN110990269A (zh) | 2020-04-10 |
Family
ID=70087109
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911173636.5A Pending CN110990269A (zh) | 2019-11-26 | 2019-11-26 | 一种接口测试的方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110990269A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651358A (zh) * | 2020-06-05 | 2020-09-11 | 北京金山云网络技术有限公司 | 生成测试用例的方法、软件测试方法、装置和服务器 |
CN112131127A (zh) * | 2020-09-28 | 2020-12-25 | 北京同邦卓益科技有限公司 | 接口测试方法、装置、系统及电子设备 |
CN112328486A (zh) * | 2020-11-06 | 2021-02-05 | 深圳壹账通智能科技有限公司 | 接口自动化测试方法、装置、计算机设备及存储介质 |
CN112486811A (zh) * | 2020-11-26 | 2021-03-12 | 杭州安恒信息技术股份有限公司 | 一种接口测试方法、装置、设备及介质 |
CN112597018A (zh) * | 2020-12-22 | 2021-04-02 | 未来电视有限公司 | 接口测试用例生成方法、装置、设备及存储介质 |
CN112631694A (zh) * | 2020-12-11 | 2021-04-09 | 远光软件股份有限公司 | 一种api接口封装调用方法及系统 |
CN114048140A (zh) * | 2021-11-23 | 2022-02-15 | 杭州遥望网络科技有限公司 | 一种自动化测试框架中测试用例的参数化方法及装置 |
CN115328104A (zh) * | 2022-10-13 | 2022-11-11 | 湖南中车时代通信信号有限公司 | 一种列车运行监控系统自动化测试装置及测试方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250310A (zh) * | 2016-07-25 | 2016-12-21 | 微梦创科网络科技(中国)有限公司 | 一种测试用例生成方法及装置 |
-
2019
- 2019-11-26 CN CN201911173636.5A patent/CN110990269A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250310A (zh) * | 2016-07-25 | 2016-12-21 | 微梦创科网络科技(中国)有限公司 | 一种测试用例生成方法及装置 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651358A (zh) * | 2020-06-05 | 2020-09-11 | 北京金山云网络技术有限公司 | 生成测试用例的方法、软件测试方法、装置和服务器 |
CN111651358B (zh) * | 2020-06-05 | 2024-04-12 | 北京金山云网络技术有限公司 | 生成测试用例的方法、软件测试方法、装置和服务器 |
CN112131127A (zh) * | 2020-09-28 | 2020-12-25 | 北京同邦卓益科技有限公司 | 接口测试方法、装置、系统及电子设备 |
CN112131127B (zh) * | 2020-09-28 | 2024-04-16 | 北京同邦卓益科技有限公司 | 接口测试方法、装置、系统及电子设备 |
CN112328486A (zh) * | 2020-11-06 | 2021-02-05 | 深圳壹账通智能科技有限公司 | 接口自动化测试方法、装置、计算机设备及存储介质 |
CN112486811A (zh) * | 2020-11-26 | 2021-03-12 | 杭州安恒信息技术股份有限公司 | 一种接口测试方法、装置、设备及介质 |
CN112631694A (zh) * | 2020-12-11 | 2021-04-09 | 远光软件股份有限公司 | 一种api接口封装调用方法及系统 |
CN112631694B (zh) * | 2020-12-11 | 2023-08-11 | 远光软件股份有限公司 | 一种api接口封装调用方法及系统 |
CN112597018A (zh) * | 2020-12-22 | 2021-04-02 | 未来电视有限公司 | 接口测试用例生成方法、装置、设备及存储介质 |
CN114048140A (zh) * | 2021-11-23 | 2022-02-15 | 杭州遥望网络科技有限公司 | 一种自动化测试框架中测试用例的参数化方法及装置 |
CN115328104A (zh) * | 2022-10-13 | 2022-11-11 | 湖南中车时代通信信号有限公司 | 一种列车运行监控系统自动化测试装置及测试方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110990269A (zh) | 一种接口测试的方法、装置及系统 | |
CN106294120B (zh) | 测试代码的方法、设备和计算机程序产品 | |
CN108628748B (zh) | 自动化测试管理方法和自动化测试管理系统 | |
CN105446874B (zh) | 一种资源配置文件的检测方法和装置 | |
CN111078539B (zh) | 一种测试方法、装置、系统、计算机可读存储介质 | |
CN107659455B (zh) | 一种iOS端Mock数据的方法、存储介质、设备及系统 | |
CN111125057B (zh) | 一种业务请求的处理方法、装置及计算机系统 | |
CN111475390A (zh) | 日志采集系统部署方法、装置、设备及存储介质 | |
CN110750446A (zh) | 一种系统测试的方法及相关装置 | |
CN112732499A (zh) | 一种基于微服务架构的测试方法、装置及计算机系统 | |
CN111694550A (zh) | 一种页面显示控制方法、装置及系统 | |
CN113342692B (zh) | 测试用例自动生成方法、装置、电子设备及存储介质 | |
CN111159028B (zh) | 网页测试方法及装置 | |
CN112052070A (zh) | 应用容器化评估方法、装置、电子设备及存储介质 | |
CN112583660B (zh) | 一种推荐平台的主域、备域测试对比方法、装置及系统 | |
CN115757097A (zh) | 一种测试用例生成方法、装置、电子设备及存储介质 | |
CN115292178A (zh) | 测试数据搜索方法、装置、存储介质以及终端 | |
CN115426286A (zh) | 产品自动测试方法、装置、设备及计算机可读存储介质 | |
CN110866492B (zh) | 一种基线分支的识别方法、装置及计算机系统 | |
CN112905445A (zh) | 一种基于日志的测试方法、装置及计算机系统 | |
CN111124841A (zh) | 一种异常页面的报警方法、装置及计算机系统 | |
CN110321280B (zh) | 一种数据处理方法以及相关设备 | |
CN112000581B (zh) | 一种用于Cocos2D框架软件的测试方法和工具 | |
CN113742242A (zh) | 一种接口测试方法及装置 | |
CN112035425A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200410 |