CN111651365A - 接口自动化测试方法及装置 - Google Patents
接口自动化测试方法及装置 Download PDFInfo
- Publication number
- CN111651365A CN111651365A CN202010619196.8A CN202010619196A CN111651365A CN 111651365 A CN111651365 A CN 111651365A CN 202010619196 A CN202010619196 A CN 202010619196A CN 111651365 A CN111651365 A CN 111651365A
- Authority
- CN
- China
- Prior art keywords
- test
- data
- expected value
- return
- interface
- 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.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 297
- 238000013515 script Methods 0.000 claims abstract description 87
- 238000004806 packaging method and process Methods 0.000 claims abstract description 69
- 238000000547 structure data Methods 0.000 claims abstract description 30
- 238000000034 method Methods 0.000 claims abstract description 26
- 238000004590 computer program Methods 0.000 claims description 18
- 238000007781 pre-processing Methods 0.000 claims description 9
- 238000003860 storage Methods 0.000 claims description 9
- 238000012216 screening Methods 0.000 claims description 4
- 238000000926 separation method Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 14
- 238000010998 test method Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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
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
技术领域
本发明涉及通信技术领域,尤其涉及一种接口自动化测试方法及装置。
背景技术
接口自动化测试可以为大型且复杂的系统带来高效的缺陷监测和质量监督能力,现阶段对接口自动化测试的要求是,既要降低脚本编写难度,又要降低脚本维护成本,同时还要提高数据与脚本的独立性,减少回归测试的时间和成本,满足敏捷项目快速迭代的需求。现有方法是通过定制的GUI自动化测试工具ATFS进行测试,先编写交易级脚本,再通过交易级脚本组合成场景级脚本,通过执行场景级脚本验证系统功能的正确性。使用ATFS进行自动化测试,需要提前进行数据准备,测试脚本执行依赖环境数据,测试数据和测试脚本没有完全独立;界面变动频率一般高于接口变动频率,如果界面有改动,需要手工维护每一只测试脚本,维护成本较高;另外,ATFS执行脚本时间较长,不能满足敏捷项目快速交付的需求。因此,目前缺乏一种高效的、能够实现测试数据和测试脚本分离的接口自动化测试方法。
发明内容
本发明实施例提出一种接口自动化测试方法,用以对接口进行自动化测试,效率高,能够实现测试数据和脚本分离,该方法包括:
获得被测接口的测试脚本中的封装步骤,所述封装步骤是对测试脚本中的多个步骤进行封装形成的,所述封装步骤包括调用参数,所述调用参数包括测试数据标识;
基于所述测试数据标识,获得测试脚本对应的测试数据,所述测试数据包括基础报文结构数据、预期值、预期值在返回报文数据中的位置;
调整测试数据中的基础报文结构数据,获得调整后的测试数据;
基于调整后的测试数据,执行测试脚本,获得返回报文数据;
基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值;
比对预期值和实际返回值,获得测试结果。
本发明实施例提出一种接口自动化测试装置,用以对接口进行自动化测试,效率高,能够实现测试数据和脚本分离,该装置包括:
封装步骤获得模块,用于获得被测接口的测试脚本中的封装步骤,所述封装步骤是对测试脚本中的多个步骤进行封装形成的,所述封装步骤包括调用参数,所述调用参数包括测试数据标识;
测试数据获得模块,用于基于所述测试数据标识,获得测试脚本对应的测试数据,所述测试数据包括基础报文结构数据、预期值、预期值在返回报文数据中的位置;
测试数据调整模块,用于调整测试数据中的基础报文结构数据,获得调整后的测试数据;
测试执行模块,用于基于调整后的测试数据,执行测试脚本,获得返回报文数据;
实际返回值获得模块,用于基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值;
测试结果获得模块,用于比对预期值和实际返回值,获得测试结果。
本发明实施例还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述接口自动化测试方法。
本发明实施例还提出了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述接口自动化测试方法的计算机程序。
在本发明实施例中,获得被测接口的测试脚本中的封装步骤,所述封装步骤是对测试脚本中的多个步骤进行封装形成的,所述封装步骤包括调用参数,所述调用参数包括测试数据标识;基于所述测试数据标识,获得测试脚本对应的测试数据,所述测试数据包括基础报文结构数据、预期值、预期值在返回报文数据中的位置;调整测试数据中的基础报文结构数据,获得调整后的测试数据;基于调整后的测试数据,执行测试脚本,获得返回报文数据;基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值;比对预期值和实际返回值,获得测试结果。在上述过程中,测试脚本包括多个封装步骤,在测试执行时效率高;可以根据封装步骤的调用参数中的测试数据标识,获得测试数据,使得测试数据和测试脚本可分离管理,之后通过调整测试数据可执行一次测试;测试数据中包括了预期值在返回报文数据中的位置,从而可迅速的查找实际返回值,进一步提高了测试执行效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例中接口自动化测试方法的流程图;
图2为本发明实施例接口自动化测试方法的详细流程图;
图3为本发明实施例中接口自动化测试装置的示意图;
图4为本发明实施例中接口自动化测试装置的另一示意图;
图5为本发明实施例中计算机设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
在本说明书的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本申请的实施,其中的步骤顺序不作限定,可根据需要作适当调整。
图1为本发明实施例中接口自动化测试方法的流程图,如图1所示,该方法包括:
步骤101,获得被测接口的测试脚本中的封装步骤,所述封装步骤是对测试脚本中的多个步骤进行封装形成的,所述封装步骤包括调用参数,所述调用参数包括测试数据标识;
步骤102,基于所述测试数据标识,获得测试脚本对应的测试数据,所述测试数据包括基础报文结构数据、预期值、预期值在返回报文数据中的位置;
步骤103,调整测试数据中的基础报文结构数据,获得调整后的测试数据;
步骤104,基于调整后的测试数据,执行测试脚本,获得返回报文数据;
步骤105,基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值;
步骤106,比对预期值和实际返回值,获得测试结果。
在本发明实施例提出的方法中,测试脚本包括多个封装步骤,在测试执行时效率高;可以根据封装步骤的调用参数中的测试数据标识,获得测试数据,使得测试数据和测试脚本可分离管理,之后通过调整测试数据可执行一次测试;测试数据中包括了预期值在返回报文数据中的位置,从而可迅速的查找实际返回值,进一步提高了测试执行效率。
具体实施时,测试脚本可以存储在SVN中,SVN是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,实现共享资源,实现最终集中式的管理。这样方便测试脚本的修改管理,便于版本管理,共享资源,降低维护成本。测试数据可以存储在SZAIT中,SZAIT是一种单接口测试工具,可自动组合基础报文,生成基础报文结构数据。由于上述测试数据和测试脚本分开存放管理,且互相不影响,实现了测试数据与测试脚本分离,降低了维护成本,提高了效率。
在一实施例中,所述方法还包括:
根据被测接口描述数据,提取被测接口的输入数据和预期值;
根据预先配置的测试数据标识、被测接口的输入数据和预期值,生成被测接口的基础报文结构数据,确定预期值在返回报文数据中的位置。
在上述实施例中,被测接口描述数据可以是接口文档,在每个接口的接口文档发生变化后,还可以利用SZAIT基于更改的接口文档,批量生成新的基础报文数据结构。测试数据标识可以由测试人员通过输入的方式配置,输入数据、预期值也可以由测试人员提取输入。这里获取的测试数据为通用标准的测试数据,后续每次执行时可进行调整,完成一次测试执行。
具体实施时,可以通过RobotFramework来调整测试数据,RobotFramework是一款Python编写的功能自动化测试框架,具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。Python是一种跨平台的计算机程序设计语言。
在一实施例中,所述方法还包括:
从被测接口的测试脚本中筛选出多个关键步骤;
对所述多个关键步骤进行封装,形成封装步骤;
确定封装步骤的调用参数。
在上述实施例中,形成封装步骤的过程也可以采用RobotFramework来实现,关键步骤为测试人员自定义的较为通用的步骤,调用参数包括测试数据标识,从而形成了测试脚本和测试数据的对应关系,调用参数除了测试数据标识外,还可以包括分组号等其他参数,可根据具体情况来定。除了对关键步骤封装,RobotFramework还可以按照单包、多包交易类型对测试脚本中的步骤进行建模,从而降低脚本开发人员的工作量,也提高了后续脚本执行的效率。
在步骤102中,RobotFramework可以依据测试数据标识,查询SZAIT的数据库来获得测试脚本对应的测试数据,实现通过传参的方式获得测试数据。
在步骤103中,可以使用RobotFramework调整测试数据中的基础报文结构数据,获得调整后的测试数据,调整后的测试数据是指已经完成基础报文结构数据相关字段替换步骤,可以直接用于报文发送的测试数据。需要调整的测试数据,分为两种类型,一种是固定的,就算更换测试环境,也不需要变化的数据,这类数据主要是参数数据;另外一种,需要根据不同的测试环境确定具体的数据,例如业务数据。前者,可以直接写在脚本,后者,需要根据测试环境数据确定,可以通过重建的方式产生。重建方式产生的是需要调整的数据,也就是需要用来替换报文中相关字段的数据。
举个例子,假设开立贷款账户A交易,A交易的输入包含客户号,产品类型,A交易基础报文结构数据中产品类型是pp,A交易如果想测试的是开立产品类型为xx的贷款账户,那么调整产品类型这部分测试数据,可以直接在脚本中将产品类型修改为xx,这部分数据就算更换测试环境,一般也不用改;至于客户号数据,由于不同测试环境,客户号数据不同,需要通过其他交易(开立客户号B交易)创建,因此,为了实现测试脚本和测试环境数据解耦,本发明实施例通过重建的方式获得这类数据,比如,将B交易和A交易串联执行,先执行B交易脚本,然后获取B交易脚本执行后返回的客户号信息,然后将客户号信息通过变量赋值的方式传递给A交易脚本,这样,就算更换测试环境,因为每次客户号都是在当下测试环境新建的数据,所以可以不受测试环境更换的影响,实现环境解耦。因此,本发明实施例可以不依赖测试环境旧数据,无需对自动化测试环境数据进行恢复,因此可以在多个测试环境下执行脚本,环境解耦,灵活方便。
在一实施例中,在基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值之前,还包括:
对返回报文数据进行拆分,获得列表结构的返回报文数据;
基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值,包括:
基于预期值在返回报文数据中的位置,从列表结构的返回报文数据中确定实际返回值。
在上述实施例中,在获得返回报文数据后,需要对返回报文数据进行拆分,是因为返回报文数据的格式不能直接得到实际返回值,拆分成列表结构后,可快速方便的拿到实际返回值,提高效率。
在一实施例中,在比对预期值和实际返回值,获得测试结果之前,还包括:
对预期值进行预处理,获得符合预设格式要求的预期值;
比对预期值和实际返回值,获得测试结果,包括:
比对符合预设格式要求的预期值和实际返回值,获得测试结果。
在上述实施例中,测试结果一般为测试通过或测试不通过,以及测试测试不通过的原因。
基于上述实施例,本发明提出如下一个实施例来说明接口自动化测试方法的详细流程,图2为本发明实施例接口自动化测试方法的详细流程图,如图2所示,包括:
步骤201,获得被测接口的测试脚本中的封装步骤,所述封装步骤是对测试脚本中的多个步骤进行封装形成的,所述封装步骤包括调用参数,所述调用参数包括测试数据标识;
步骤202,基于所述测试数据标识,获得测试脚本对应的测试数据,所述测试数据包括基础报文结构数据、预期值、预期值在返回报文数据中的位置;
步骤203,调整测试数据中的基础报文结构数据,获得调整后的测试数据;
步骤204,基于调整后的测试数据,执行测试脚本,获得返回报文数据;
步骤205,对返回报文数据进行拆分,获得列表结构的返回报文数据;
步骤206,基于预期值在返回报文数据中的位置,从列表结构的返回报文数据中确定实际返回值;
步骤207,对预期值进行预处理,获得符合预设格式要求的预期值;
步骤208,比对符合预设格式要求的预期值和实际返回值,获得测试结果。
当然,可以理解的是,上述详细流程还可以有其他变化例,相关变化例均应落入本发明的保护范围。
综上所述,在本发明实施例提出的方法中,获得被测接口的测试脚本中的封装步骤,所述封装步骤是对测试脚本中的多个步骤进行封装形成的,所述封装步骤包括调用参数,所述调用参数包括测试数据标识;基于所述测试数据标识,获得测试脚本对应的测试数据,所述测试数据包括基础报文结构数据、预期值、预期值在返回报文数据中的位置;调整测试数据中的基础报文结构数据,获得调整后的测试数据;基于调整后的测试数据,执行测试脚本,获得返回报文数据;基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值;比对预期值和实际返回值,获得测试结果。在上述过程中,测试脚本包括多个封装步骤,在测试执行时效率高;可以根据封装步骤的调用参数中的测试数据标识,获得测试数据,使得测试数据和测试脚本可分离管理,之后通过调整测试数据可执行一次测试;测试数据中包括了预期值在返回报文数据中的位置,从而可迅速的查找实际返回值,进一步提高了测试执行效率。
本发明实施例还提出一种接口自动化测试装置,其原理与接口自动化测试方法类似,这里不再赘述,图3为本发明实施例中接口自动化测试装置的示意图,包括:
封装步骤获得模块301,用于获得被测接口的测试脚本中的封装步骤,所述封装步骤是对测试脚本中的多个步骤进行封装形成的,所述封装步骤包括调用参数,所述调用参数包括测试数据标识;
测试数据获得模块302,用于基于所述测试数据标识,获得测试脚本对应的测试数据,所述测试数据包括基础报文结构数据、预期值、预期值在返回报文数据中的位置;
测试数据调整模块303,用于调整测试数据中的基础报文结构数据,获得调整后的测试数据;
测试执行模块304,用于基于调整后的测试数据,执行测试脚本,获得返回报文数据;
实际返回值获得模块305,用于基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值;
测试结果获得模块306,用于比对预期值和实际返回值,获得测试结果。
在一实施例中,所述装置还包括测试数据生成模块401,如图4所示,图4为本发明实施例中接口自动化测试装置的另一示意图,测试数据生成模块401用于:
根据被测接口描述数据,提取被测接口的输入数据和预期值;
根据预先配置的测试数据标识、被测接口的输入数据和预期值,生成被测接口的基础报文结构数据,确定预期值在返回报文数据中的位置。
在一实施例中,所述装置还包括步骤封装模块402,用于:
从被测接口的测试脚本中筛选出多个关键步骤;
对所述多个关键步骤进行封装,形成封装步骤;
确定封装步骤的调用参数。
在一实施例中,所述装置还包括第一预处理模块403,用于:
对返回报文数据进行拆分,获得列表结构的返回报文数据;
实际返回值获得模块具体用于:
基于预期值在返回报文数据中的位置,从列表结构的返回报文数据中确定实际返回值。
在一实施例中,所述装置还包括第二预处理模块404,用于:
对预期值进行预处理,获得符合预设格式要求的预期值;
测试结果获得模块具体用于:
比对符合预设格式要求的预期值和实际返回值,获得测试结果。
综上所述,在本发明实施例提出的装置中,获得被测接口的测试脚本中的封装步骤,所述封装步骤是对测试脚本中的多个步骤进行封装形成的,所述封装步骤包括调用参数,所述调用参数包括测试数据标识;基于所述测试数据标识,获得测试脚本对应的测试数据,所述测试数据包括基础报文结构数据、预期值、预期值在返回报文数据中的位置;调整测试数据中的基础报文结构数据,获得调整后的测试数据;基于调整后的测试数据,执行测试脚本,获得返回报文数据;基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值;比对预期值和实际返回值,获得测试结果。在上述过程中,测试脚本包括多个封装步骤,在测试执行时效率高;可以根据封装步骤的调用参数中的测试数据标识,获得测试数据,使得测试数据和测试脚本可分离管理,之后通过调整测试数据可执行一次测试;测试数据中包括了预期值在返回报文数据中的位置,从而可迅速的查找实际返回值,进一步提高了测试执行效率。
本申请的实施例还提供一种计算机设备,图5为本发明实施例中计算机设备的示意图,该计算机设备能够实现上述实施例中的接口自动化测试方法中全部步骤,所述电子设备具体包括如下内容:
处理器(processor)501、存储器(memory)502、通信接口(CommunicationsInterface)503和总线504;
其中,所述处理器501、存储器502、通信接口503通过所述总线504完成相互间的通信;所述通信接口503用于实现服务器端设备、检测设备以及用户端设备等相关设备之间的信息传输;
所述处理器501用于调用所述存储器502中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的接口自动化测试方法中的全部步骤。
本申请的实施例还提供一种计算机可读存储介质,能够实现上述实施例中的接口自动化测试方法中全部步骤,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的接口自动化测试方法的全部步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种接口自动化测试方法,其特征在于,包括:
获得被测接口的测试脚本中的封装步骤,所述封装步骤是对测试脚本中的多个步骤进行封装形成的,所述封装步骤包括调用参数,所述调用参数包括测试数据标识;
基于所述测试数据标识,获得测试脚本对应的测试数据,所述测试数据包括基础报文结构数据、预期值、预期值在返回报文数据中的位置;
调整测试数据中的基础报文结构数据,获得调整后的测试数据;
基于调整后的测试数据,执行测试脚本,获得返回报文数据;
基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值;
比对预期值和实际返回值,获得测试结果。
2.如权利要求1所述的接口自动化测试方法,其特征在于,还包括:
根据被测接口描述数据,提取被测接口的输入数据和预期值;
根据预先配置的测试数据标识、被测接口的输入数据和预期值,生成被测接口的基础报文结构数据,确定预期值在返回报文数据中的位置。
3.如权利要求1所述的接口自动化测试方法,其特征在于,还包括:
从被测接口的测试脚本中筛选出多个关键步骤;
对所述多个关键步骤进行封装,形成封装步骤;
确定封装步骤的调用参数。
4.如权利要求1所述的接口自动化测试方法,其特征在于,在基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值之前,还包括:
对返回报文数据进行拆分,获得列表结构的返回报文数据;
基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值,包括:
基于预期值在返回报文数据中的位置,从列表结构的返回报文数据中确定实际返回值。
5.如权利要求1所述的接口自动化测试方法,其特征在于,在比对预期值和实际返回值,获得测试结果之前,还包括:
对预期值进行预处理,获得符合预设格式要求的预期值;
比对预期值和实际返回值,获得测试结果,包括:
比对符合预设格式要求的预期值和实际返回值,获得测试结果。
6.一种接口自动化测试装置,其特征在于,包括:
封装步骤获得模块,用于获得被测接口的测试脚本中的封装步骤,所述封装步骤是对测试脚本中的多个步骤进行封装形成的,所述封装步骤包括调用参数,所述调用参数包括测试数据标识;
测试数据获得模块,用于基于所述测试数据标识,获得测试脚本对应的测试数据,所述测试数据包括基础报文结构数据、预期值、预期值在返回报文数据中的位置;
测试数据调整模块,用于调整测试数据中的基础报文结构数据,获得调整后的测试数据;
测试执行模块,用于基于调整后的测试数据,执行测试脚本,获得返回报文数据;
实际返回值获得模块,用于基于预期值在返回报文数据中的位置,获得返回报文数据中的实际返回值;
测试结果获得模块,用于比对预期值和实际返回值,获得测试结果。
7.如权利要求6所述的接口自动化测试装置,其特征在于,还包括测试数据生成模块,用于:
根据被测接口描述数据,提取被测接口的输入数据和预期值;
根据预先配置的测试数据标识、被测接口的输入数据和预期值,生成被测接口的基础报文结构数据,确定预期值在返回报文数据中的位置。
8.如权利要求6所述的接口自动化测试装置,其特征在于,还包括步骤封装模块,用于:
从被测接口的测试脚本中筛选出多个关键步骤;
对所述多个关键步骤进行封装,形成封装步骤;
确定封装步骤的调用参数。
9.如权利要求6所述的接口自动化测试装置,其特征在于,还包括第一预处理模块,用于:
对返回报文数据进行拆分,获得列表结构的返回报文数据;
实际返回值获得模块具体用于:
基于预期值在返回报文数据中的位置,从列表结构的返回报文数据中确定实际返回值。
10.如权利要求6所述的接口自动化测试装置,其特征在于,还包括第二预处理模块,用于:
对预期值进行预处理,获得符合预设格式要求的预期值;
测试结果获得模块具体用于:
比对符合预设格式要求的预期值和实际返回值,获得测试结果。
11.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5任一项所述方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至5任一项所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010619196.8A CN111651365B (zh) | 2020-07-01 | 2020-07-01 | 接口自动化测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010619196.8A CN111651365B (zh) | 2020-07-01 | 2020-07-01 | 接口自动化测试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111651365A true CN111651365A (zh) | 2020-09-11 |
CN111651365B CN111651365B (zh) | 2024-04-19 |
Family
ID=72346201
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010619196.8A Active CN111651365B (zh) | 2020-07-01 | 2020-07-01 | 接口自动化测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111651365B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112486811A (zh) * | 2020-11-26 | 2021-03-12 | 杭州安恒信息技术股份有限公司 | 一种接口测试方法、装置、设备及介质 |
CN112579446A (zh) * | 2020-12-10 | 2021-03-30 | 北京软通智慧城市科技有限公司 | 一种接口测试方法、装置、电子设备和存储介质 |
CN113064829A (zh) * | 2021-04-13 | 2021-07-02 | 上海浦东发展银行股份有限公司 | 基于贷记卡核心的测试数据生命树结构及数据生成方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102486749A (zh) * | 2010-12-03 | 2012-06-06 | 中兴通讯股份有限公司 | 数据驱动测试方法及系统 |
CN107766190A (zh) * | 2017-10-31 | 2018-03-06 | 平安科技(深圳)有限公司 | 接口测试方法、装置、计算机设备和存储介质 |
CN109710533A (zh) * | 2018-12-29 | 2019-05-03 | 亚信科技(中国)有限公司 | 一种接口测试方法、装置及服务器 |
CN109710522A (zh) * | 2018-12-17 | 2019-05-03 | 平安普惠企业管理有限公司 | 代码测试方法、装置、计算机设备和存储介质 |
US20190213116A1 (en) * | 2018-01-10 | 2019-07-11 | Accenture Global Solutions Limited | Generation of automated testing scripts by converting manual test cases |
CN111159049A (zh) * | 2019-12-31 | 2020-05-15 | 中国银行股份有限公司 | 接口自动化测试方法及系统 |
-
2020
- 2020-07-01 CN CN202010619196.8A patent/CN111651365B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102486749A (zh) * | 2010-12-03 | 2012-06-06 | 中兴通讯股份有限公司 | 数据驱动测试方法及系统 |
CN107766190A (zh) * | 2017-10-31 | 2018-03-06 | 平安科技(深圳)有限公司 | 接口测试方法、装置、计算机设备和存储介质 |
US20190213116A1 (en) * | 2018-01-10 | 2019-07-11 | Accenture Global Solutions Limited | Generation of automated testing scripts by converting manual test cases |
CN109710522A (zh) * | 2018-12-17 | 2019-05-03 | 平安普惠企业管理有限公司 | 代码测试方法、装置、计算机设备和存储介质 |
CN109710533A (zh) * | 2018-12-29 | 2019-05-03 | 亚信科技(中国)有限公司 | 一种接口测试方法、装置及服务器 |
CN111159049A (zh) * | 2019-12-31 | 2020-05-15 | 中国银行股份有限公司 | 接口自动化测试方法及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112486811A (zh) * | 2020-11-26 | 2021-03-12 | 杭州安恒信息技术股份有限公司 | 一种接口测试方法、装置、设备及介质 |
CN112579446A (zh) * | 2020-12-10 | 2021-03-30 | 北京软通智慧城市科技有限公司 | 一种接口测试方法、装置、电子设备和存储介质 |
CN113064829A (zh) * | 2021-04-13 | 2021-07-02 | 上海浦东发展银行股份有限公司 | 基于贷记卡核心的测试数据生命树结构及数据生成方法 |
CN113064829B (zh) * | 2021-04-13 | 2023-03-10 | 上海浦东发展银行股份有限公司 | 基于贷记卡核心的测试数据生命树结构及数据生成方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111651365B (zh) | 2024-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108614770B (zh) | 自动化测试断言方法、装置、存储介质及设备 | |
CN107273286B (zh) | 针对任务应用的场景自动化测试平台及方法 | |
CN111651365B (zh) | 接口自动化测试方法及装置 | |
US11651272B2 (en) | Machine-learning-facilitated conversion of database systems | |
CN106874189B (zh) | 一种电网实时数据库系统的自动化测试系统的实现方法 | |
CN106970880A (zh) | 一种分布式自动化软件测试方法及系统 | |
CN108874678B (zh) | 一种智能程序的自动测试方法及装置 | |
CN111026634A (zh) | 一种接口自动化测试系统、方法、装置及存储介质 | |
CN112131315A (zh) | 多任务并行开发下的数据库同步方法及装置 | |
CN112631919A (zh) | 一种对比测试方法、装置、计算机设备及存储介质 | |
CN112699055A (zh) | 一种维护成本较低的软件自动化测试方法及系统 | |
CN113055408B (zh) | 一种网络安全测试集成装置 | |
CN111966597B (zh) | 测试数据生成方法及装置 | |
CN113434426A (zh) | 多浏览器测试方法及装置 | |
CN112559525A (zh) | 数据检查系统、方法、装置和服务器 | |
CN110232013B (zh) | 测试方法、装置以及控制器和介质 | |
CN115794064B (zh) | 任务处理流程的配置方法、装置、电子设备及存储介质 | |
CN113495723B (zh) | 一种调用功能组件的方法、装置及存储介质 | |
CN113297081B (zh) | 一种持续集成流水线的执行方法和装置 | |
CN112699042B (zh) | 一种单元测试案例的生成方法及装置 | |
CN113052501A (zh) | 一种基于资产的自动化安全运维方法及终端 | |
CN113434382A (zh) | 数据库性能监控方法、装置、电子设备及计算机可读介质 | |
CN115914055A (zh) | 分布式网络测试方法、装置、介质及设备 | |
CN112905353A (zh) | 服务调用信息生成方法、装置和存储介质 | |
CN111160403A (zh) | 一种api接口复用发现的方法及装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |