CN109597753A - 接口测试的方法、装置、计算机设备以及存储介质 - Google Patents
接口测试的方法、装置、计算机设备以及存储介质 Download PDFInfo
- Publication number
- CN109597753A CN109597753A CN201811229369.4A CN201811229369A CN109597753A CN 109597753 A CN109597753 A CN 109597753A CN 201811229369 A CN201811229369 A CN 201811229369A CN 109597753 A CN109597753 A CN 109597753A
- Authority
- CN
- China
- Prior art keywords
- test
- scene
- interface
- cases
- data
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 984
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000004590 computer program Methods 0.000 claims description 13
- 230000001360 synchronised effect Effects 0.000 claims description 7
- 238000001514 detection method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 230000000052 comparative effect Effects 0.000 description 6
- 238000012795 verification Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 241000251468 Actinopterygii Species 0.000 description 4
- 238000012163 sequencing technique Methods 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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/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
技术领域
本申请涉及到测试领域,特别是涉及到接口测试的方法、装置、计算机设备以及存储介质。
背景技术
目前的接口测试工具多使用开源测试工具,例如Postman,Fiddle,现有的开源测试工具均为单机版客户端程序,存在以下不足:需要人工操作,需要手动完成调用接口测试的过程;且接口测试过程的处理方式为单线程调用,无法批量调用接口进行同步测试,对于接口数量较多的测试过程,测试经过的耗时长,测试效率较低,且需要人工参与测试,智能程度不能满足快速且自动化测试的需求。
发明内容
本申请的主要目的为提供一种接口测试的方法,旨在解决现有接口测试无法批量调用接口进行同步测试的技术问题。
本申请提出一种接口测试的方法,包括:
获取待测试的测试案例的测试场景数据,其中,所述测试案例包括一个或多个测试场景,所述测试场景数据包括测试场景数量、测试案例对应的各测试场景以及各测试场景依次执行的测试顺序;
根据所述测试场景数量调用对应的多个测试接口,并依据各所述测试场景分别一一对应配置各所述测试接口的配置参数;
按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口。
优选地,所述获取待测试的测试案例的测试场景数据的步骤之前,包括:
获取待测试的测试任务的测试案例数据,其中,所述测试任务包括一个或多个测试案例,所述测试案例数据包括测试案例数量;
根据所述测试案例数量启动多个线程通道,其中一个线程通道对应测试一个测试案例,同一线程通道内同步运行多个所述测试接口,以同步完成所述测试案例对应的各所述测试场景;
将各测试案例一一对应分配到各所述线程通道。
优选地,所述获取待测试的测试任务的测试案例数据的步骤之前,包括:
启动异步程序循环扫描任务池,其中所述异步程序指扫描程序与接口测试对应的测试程序处于异步工作状态;
判断所述任务池内是否存在待测试的测试任务;
若是,则获取所述待测试的测试任务。
优选地,所述按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口的步骤之后,包括:
判断待测试的测试案例对应的各所述测试场景是否均已测试完毕;
若各所述测试场景均已测试完毕,则控制所述待测试案例对应的线程通道返回案例池,以重新获取新的未测试的测试案例进行测试;
判断所述案例池中对应的各所述测试案例是否均已测试完毕;
若各所述测试案例均已测试完毕,则释放各所述线程通道。
优选地,所述释放各所述线程通道的步骤之后,包括:
获取所述测试案例的各所述测试场景一一对应的测试数据;
根据各所述测试数据形成测试报告;
发送所述测试报告到指定终端进行显示。
优选地,所述测试数据中包括测试返回结果,所述根据各所述测试数据形成测试报告的步骤,包括:
通过将各所述测试数据一一对应的测试返回结果,与预期结果一一对应后,分别对各所述测试返回结果和与其对应的预期结果进行同时排序并递归对比,以判断各所述测试返回结果和与其相对应的预期结果是否一致;
若一致,则形成测试通过状态下测试案例对应的第一测试报告;
若不一致,则形成测试未通过状态下测试案例对应的第二测试报告,其中,所述第二测试报告中包括重跑选项。
优选地,所述按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口的步骤之前,包括:
判断将各所述测试接口的当前数据状态是否与各所述测试接口在数据库中的预配置状态一致;
若否,则调用SQL语句将各所述测试接口的当前数据状态回滚到各自对应的所述预配置状态。
本申请还提供了一种接口测试的装置,包括:
第一获取模块,用于获取待测试的测试案例的测试场景数据,其中,所述测试案例包括一个或多个测试场景,所述测试场景数据包括测试场景数量、测试案例对应的各测试场景以及各测试场景依次执行的测试顺序;
第一匹配模块,用于根据所述测试场景数量调用对应的多个测试接口,并依据各所述测试场景分别一一对应配置各所述测试接口的配置参数;
第一调用模块,用于按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口。
本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
本申请提出一种多线程通道批量进行的接口测试的方法,可以并发调用多个测试接口,提高接口测试效率。本申请通过异步程序,不断扫描任务池中待测试的测试任务,每个测试任务包含一个或多个测试案例,每个测试案例包含一个或多个测试场景。当异步程序扫描到任务池中存在测试任务后,按照可配置的线程通道数量同时发起多个线程通道,每个线程通道从任务池中捞出一个测试案例执行测试,同一线程通道内按顺序完成该测试案例中所有的测试场景的测试,包括数据回滚、调用接口、结果对比、数据库检测,完成接口正确性验证,记录测试结果,当前测试案例的所有测试场景执行完成后,该线程通道返回案例池继续捞取下一个测试案例执行,其他线程通道以此类推,直到完成该测试任务中的所有的测试案例,然后释放线程通道并关闭,实现全自动的接口测试流程,最后自动汇总测试数据形成测试报告并自动发送测试报告,提高测试效率,解放了测试人力资源。
附图说明
图1本申请一实施例的接口测试的方法的流程示意图;
图2本申请一实施例的接口测试的装置的结构示意图;
图3本申请另一实施例的接口测试的装置的结构示意图;
图4本申请再一实施例的接口测试的装置的结构示意图;
图5本申请又一实施例的接口测试的装置的结构示意图;
图6本申请又一实施例的接口测试的装置的结构示意图;
图7本申请一实施例的形成模块的结构示意图;
图8本申请又一实施例的接口测试的装置的结构示意图;
图9本申请一实施例的计算机设备的内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请一实施例的接口测试的方法,包括:
S1:获取待测试的测试案例的测试场景数据,其中,所述测试案例包括一个或多个测试场景,所述测试场景数据包括测试场景数量、测试案例对应的各测试场景以及各测试场景依次执行的测试顺序。
本实施例的测试案例包括一个或多个依次排列的测试场景,每个测试场景会调用一个接口进行测试,当测试案例的所有测试场景按照测试场景对应的测试顺序执行完毕后,则完成一个测试案例的测试。本实施例的测试案例的测试场景数据可通过测试人员在线编写后,存储于数据库的指定位置,进行测试案例的测试时,则通过调用数据库以获取上述测试场景数据。本实施例的测试工具具有连接数据库自动获取数据、匹配接口参数的功能,不同于现有的单机版客户端程序对应的开源测试工具,本实施例的测试工具可同时调用多个线程通道同时测试多个测试案例,同一时间内多个接口可同时调用。本实施例的测试场景依次执行的测试顺序,指测试场景对应的数字编号顺序,上述数字编码是按照测试案例的业务流程而设定。测试人员在编写测试案例的时候,会按照业务流程的先后顺序来确定测试场景的数字编码,如编号1、2、3、4。
S2:根据所述测试场景数量同时调用多个测试接口,并依据各所述测试场景分别一一对应配置各所述测试接口的配置参数。
举例地,出单的测试案例,测试场景一是调用投保接口,测试场景二是调用承保接口,两个测试场景分别对应不同配置参数的测试接口,以确保能正确执行各测试场景的测试。本实施例同时调用的多个测试接口的数量可与测试场景数量相同;本申请其他实施例中,也可以是将测试场景数量根据现配置的单次测试的最大测试接口量,分批次进行。比如,一个测试案例包括20个测试场景,同时调用的测试接口的数量为10,则分两个批次,每批次同时调用10个测试接口完成对测试案例的测试。
S3:按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口。
本实施例的各所述测试场景依次执行的测试顺序,为顺利完成对应待测试案例的时间顺序流程。举例地,保险出单的测试案例,测试场景一是调用投保接口,测试场景二是调用承保接口,必须按照先执行测试场景一,再执行测试场景二的顺序,待测试案例才能正确执行。例如车险理赔的测试案例,测试场景一必须是先报案,测试场景二是查勘、定损等,必须先执行测试场景一,然后执行测试场景二,而不能先定损,再报案。
进一步地,本实施例的步骤S1之前,包括:
S11:获取待测试的测试任务的测试案例数据,其中,所述测试任务包括一个或多个测试案例,所述测试案例数据包括测试案例数量。
本实施例的测试任务为某个系统的所有测试案例的集合,如系统A、系统B、系统C等可以理解为任务池中的各待测试的测试任务。一个测试任务(比如系统A)包括一个或多个测试案例。本实施例支持多线程通道同时运行,比如系统A中包含100个测试案例,可通过同时匹配10个线程通道,每个线程通道抓取一个测试案例进行测试,在每个线程通道中同时运行多个测试接口,同步完成对测试案例对应的测试场景的测试,以提高测试效率。
S12:根据所述测试案例数量启动多个线程通道,其中一个线程通道对应测试一个测试案例,同一线程通道内同步运行多个所述测试接口,以同步完成所述测试案例对应的各所述测试场景。
本实施例匹配线程通道的数量由待测试的测试任务中包括的测试案例量,以及测试平台的数据处理能力共同决定。举例地,系统B包括5个案例,则匹配5个线程通道;系统A中包含100个测试案例,但测试平台的数据处理能力只允许同时并发10个线程通道,则同时匹配10个线程通道,完成执行测试案例的线程通道会返回测试案例池,重新抓取未测试的测试案例进行执行,直至100个测试案例全部执行完毕。
S13:将各测试案例一一对应分配到各所述线程通道。
本实施例通过将各测试案例一一对应匹配到各所述线程通道,并在同一线程通道中通过依次调用不同的测试接口,以完成对各测试案例的测试。本实施例的一一对应匹配,只根据一个线程通道对应一个测试案例进行匹配。举例地,系统A对应的测试任务中包含100个测试案例,但测试平台的数据处理能力只允许同时并发10个线程通道,则同时匹配10个线程通道,10个线程通道对应10个测试案例,完成执行测试案例的线程通道会返回待测试的测试案例池,重新抓取未测试的测试案例进行测试,直至100个测试案例全部测试完毕。本实施例同时支持多条线程通道同时并发运行,所以,本申请在同一时间有多个接口被调用,提高了测试效率,为大批量接口的规模化测试提供了具体有效的解决方案。
进一步地,本实施例的步骤S11之前,包括:
S111:启动异步程序循环扫描任务池,其中所述异步程序指扫描程序与接口测试对应的测试程序处于异步工作状态。
本实施例的异步程序在每隔固定时间对任务池进行扫描,比如每10s扫描一次,以确定任务池中是否还存在待测试的测试任务,而同时各线程通道的测试过程依然在进行,即扫描与测试互不干扰。本实施例的任务池是指由各待测试的测试任务组成的任务表。
S112:判断所述任务池内是否存在待测试的测试任务。
本实施例中当一个测试任务被执行或执行完毕,会自动从任务池中删除,当有新任务增加时,会自动添加至任务池,即任务池中均为待测试的测试任务,通过查看任务池中是否有测试任务数据,来判定是否有待测试的测试任务。
S113:若是,则获取所述待测试的测试任务。
本实施例中如果完成一个测试任务后,发现任务池中还存在待测试的测试任务,则自动获取测试任务,直至所有测试任务均完成。本实施例通过异步程序可获取需要测试的测试任务,并依次自动完成任务测试,可以自定义晚上时间自动执行,无需人工进行测试,解放了测试人力。
进一步地,本实施例的步骤S3之后,包括:
S4:判断待测试的测试案例对应的各所述测试场景是否均已测试完毕。
本实施例的同一测试案例的各测试场景依次标识为不同的编号,然后按测试场景的编号顺序依次执行该测试案例的所有测试场景,当循环遍历完所有的测试场景的编号,则表明各所述测试场景已执行完毕。
S5:若各所述测试场景均已测试完毕,则控制所述待测试案例对应的线程通道返回案例池,以重新获取新的未测试的测试案例进行测试。
本实施例的案例池为储存待测试的测试案例的表格,当测试案例的总数量远大于同时并发的线程通道的总数量时,需要一部分进入各线程通道进行测试,一部分存放在案例池等待测试,当有线程通道完成上一测试案例的测试后,会重新返回案例池抓取新的待测试的测试案例进行测试。举例地,系统A中包含100个测试案例,但测试平台的数据处理能力只允许同时并发10个线程通道,则同时匹配10个线程通道a至j分别对应执行测试案例1至10,当线程通道a完成执行测试案例1时,会重新返回案例池,重新抓取未测试的测试案例11进行执行,其他线程通道相同,直至100个测试案例全部执行完毕。本实施例的案例池为各测试案例组成的数据表。
S6:判断所述案例池中对应的各所述测试案例是否均已测试完毕。
本实施例通过执行完毕一个测试案例时,会启动计数器进行累积计数,当计数器的示数与案例池中对应的测试案例统计数量相同时,则表明指定测试任务的所有测试案例均已测试完毕。举例地,当系统A进入任务池后,统计到系统A的测试案例的统计数量为100,并存于案例池中,在测试过程中,当计数器显示为100时,则表明系统A的所有测试案例已执行完毕。
S7:若各所述测试案例均已测试完毕,则释放各所述线程通道。
举例地,当系统A的100个测试案例均已执行完毕后,会释放各线程通道,以便更新匹配任务池中待测试的系统B对应的测试任务对应的各测试案例。当任务池中所有的测试任务均已执行完毕,即通过异步程序扫描任务池中无待测试的测试任务,则关闭各所述线程通道。
进一步地,本实施例的步骤S7之后,包括:
S8:获取所述测试案例的各所述测试场景一一对应的测试数据。
本实施例通过数据回滚、调用接口、结果对比、数据库检测,完成测试场景对应的接口测试的正确性验证,记录测试结果,以获取所述测试案例对应的各所述测试场景的测试数据。
S9:根据各所述测试数据形成测试报告。
本实施例会将各测试数据自动汇总,形成对应测试案例的测试报告,上述测试报告包括系统名称、测试案例及其数量、测试场景以及数量、调用接口信息、测试环境、测试时间、测试人员、操作选项等内容。
S10:发送所述测试报告到指定终端进行显示。
本实施例的指定终端包括测试平台的显示终端、各测试负责人的移动终端,比如手机、电脑等,可通过邮件发送的方式将测试报告发送至各测试负责人的移动终端,以便各测试人员及时掌握测试进度及测试情况。
进一步地,本实施例的测试数据中包括测试返回结果,步骤S9,包括:
S91:通过将各所述测试数据一一对应的测试返回结果,与预期结果一一对应后,分别对各所述测试返回结果和与其对应的预期结果进行同时排序并递归对比,以判断各所述测试返回结果和与其相对应的预期结果是否一致。
为了判断测试结果是否正确,则检测数据库中相应数据变化的是否跟预期一致。举例地,当张三买了‘厉害了我的国’的电影票(即调用买票接口),那么数据库中就相应增加一条数据,则通过相应的SQL语句去检测是否增加成功:select count(*)from订单表where owner=’张三’and movie=‘厉害了我的国’and status=’有效’;当张三有事退订了这个电影票(即调用退票接口),则通过调用相应的SQL语句去检查数据状态的变化是否正确:select count(*)from订单表where owner=’张三’and movie=‘厉害了我的国’andstatus=’退票’。本实施例通过将测试返回结果与预期结果分别排序后,形成两颗具有相同节点结构的数据树,通过一一对应对比各相同节点位置的数据是否相同,来判断各所述测试返回结果和与其对应的预期结果是否一致。比如,两颗数据树的相同节点位置对应的数据未带有json的数据套嵌结构,则通过直接比较代码的方式来判断相同节点位置的数据是否相同。再比如,两棵数据树的相同节点位置对应的数据带有json的数据套嵌结构,则需要先对套嵌结构按照数据层进行排序,并按照排序对各数据层的数据进行递归对比,以便判断是否各数据层对应的各数据相同,当相同时,则判定该节点位置对应的数据也相同。
S92:若一致,则形成测试通过状态下测试案例对应的第一测试报告。
本实施例中,当上述两颗具有相同节点结构的数据树,通过一一对应对比各相同节点位置的数据都相同时,则对应的测试场景测试通过,当测试案例对应的各测试场景的测试结果均为通过时,则测试案例的测试通过。
S93:若不一致,则形成测试未通过状态下测试案例对应的第二测试报告,其中,所述第二测试报告中包括重跑选项。
本实施例中,当上述两颗具有相同节点结构的数据树,通过一一对应对比各相同节点位置的数据未达到100%相同时,则对应的测试场景测试未通过,当测试案例对应的各测试场景的测试结果未达到100%通过时,则测试案例的测试不通过。本实施例的第二测试报告与第一测试报告的主要区别点在于操作选项不同,第二测试报告的操作选项包括重跑选项,以便再次进行该测试案例的测试执行。
进一步地,本实施例的步骤S3之前,包括:
S31:判断将各所述测试接口的当前数据状态是否与各所述测试接口在数据库中的预配置状态一致。
本实施例的接口开发后可重复使用,通过在数据库中配置该接口的预配置状态,当测试场景执行测试前,会将上一次测试过程中被修改的业务状态数据、添加的调用数据等进行数据回滚,以便接口数据恢复到数据库的预配置状态,而再次被调用。本实施例通过数据库检测来判断将各所述接口的当前的数据状态是否为各所述接口在数据库中的预配置状态一致,数据库检测指的是调用接口后,业务数据库会进行相应的处理,例如数据的新增或者删除,或者数据状态的变化,最终会落地到数据库中进行存储。
S32:若否,则调用SQL语句将各所述测试接口的当前数据状态回滚到各自对应的所述预配置状态。
本申请的案例执行过程中,为保证每个场景接口可重复使用,在调用前会根据接口需要进行数据准备,如通过SQL语句将上一次业务操作(接口调用)过程中改变的数据状态回滚成未调用接口前的状态,重新回到数据库中预配制状态。举例地,退款测试场景,调用接口后,对应接口的数据状态从‘待退款’变为‘已退款’,被更改了业务状态,若不将该接口的数据状态回滚到预配制状态‘待退款’,则在此调用后则无法正常进行测试。再比如,调用数据接口,预配制状态为‘无数据’,执行业务后会在数据库中增加相应的数据,并将数据状态从‘无数据’变为‘增加了数据’,若不将数据状态回滚到预配制状态,则导致在次调用该接口去调用数据时,则导致增加数据失败。
本实施例提出一种多线程通道批量进行的接口测试的方法,可以并发调用多个测试接口,提高接口测试效率。本实施例通过异步程序,不断扫描任务池中待测试的测试任务,每个测试任务包含一个或多个测试案例,每个测试案例包含一个或多个测试场景。当异步程序扫描到任务池中存在测试任务后,按照可配置的线程通道数量同时发起多个线程通道,每个线程通道从任务池中捞出一个测试案例执行测试,同一线程通道内按顺序完成该测试案例中所有的测试场景的测试,包括数据回滚、调用接口、结果对比、数据库检测,完成接口正确性验证,记录测试结果,当前测试案例的所有测试场景执行完成后,该线程通道返回案例池继续捞取下一个测试案例执行,其他线程通道以此类推,直到完成该测试任务中的所有的测试案例,然后释放线程通道并关闭,实现全自动的接口测试流程,最后自动汇总测试数据形成测试报告并自动发送测试报告,提高测试效率,解放了测试人力资源。
参照图2,本申请一实施例的接口测试的装置,包括:
第一获取模块1,用于获取待测试的测试案例的测试场景数据,其中,所述测试案例包括一个或多个测试场景,所述测试场景数据包括测试场景数量、测试案例对应的各测试场景以及各测试场景依次执行的测试顺序。
本实施例的测试案例包括一个或多个依次排列的测试场景,每个测试场景会调用一个接口进行测试,当测试案例的所有测试场景按照测试场景对应的测试顺序执行完毕后,则完成一个测试案例的测试。本实施例的测试案例的测试场景数据可通过测试人员在线编写后,存储于数据库的指定位置,进行测试案例的测试时,则通过调用数据库以获取上述测试场景数据。本实施例的测试工具具有连接数据库自动获取数据、匹配接口参数的功能,不同于现有的单机版客户端程序对应的开源测试工具,本实施例的测试工具可同时调用多个线程通道同时测试多个测试案例,同一时间内多个接口可同时调用。本实施例的测试场景依次执行的测试顺序,指测试场景对应的数字编号顺序,上述数字编码是按照测试案例的业务流程而设定。测试人员在编写测试案例的时候,会按照业务流程的先后顺序来确定测试场景的数字编码,如编号1、2、3、4。
第一匹配模块2,用于根据所述测试场景数量调用对应的多个测试接口,并依据各所述测试场景分别一一对应配置各所述测试接口的配置参数。
举例地,出单的测试案例,测试场景一是调用投保接口,测试场景二是调用承保接口,两个测试场景分别对应不同配置参数的测试接口,以确保能正确执行各测试场景的测试。本实施例同时调用的多个测试接口的数量可与测试场景数量相同;本申请其他实施例中,也可以是将测试场景数量根据现配置的单次测试的最大测试接口量,分批次进行。比如,一个测试案例包括20个测试场景,同时调用的测试接口的数量为10,则分两个批次,每批次同时调用10个测试接口完成对测试案例的测试。
第一调用模块3,用于按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口。
本实施例的各所述测试场景依次执行的测试顺序,为顺利完成对应待测试案例的时间顺序流程。举例地,保险出单的测试案例,测试场景一是调用投保接口,测试场景二是调用承保接口,必须按照先执行测试场景一再执行测试场景二的顺序,待测试案例才能正确执行。例如车险理赔的测试案例,测试场景一必须是先报案,测试场景二是查勘、定损等,必须先执行测试场景一,然后执行测试场景二,而不能先定损,再报案。
参照图3,本申请另一实施例的接口测试的装置,包括:
第二获取模块11,用于获取待测试的测试任务的测试案例数据,其中,所述测试任务包括一个或多个测试案例,所述测试案例数据包括测试案例数量。
本实施例的测试任务为某个系统的所有测试案例的集合,如系统A、系统B、系统C等可以理解为任务池中的各待测试的测试任务。一个测试任务(比如系统A)包括一个或多个测试案例。本实施例支持多线程通道同时运行,比如系统A中包含100个测试案例,可通过同时匹配10个线程通道,每个线程通道抓取一个测试案例进行测试,在每个线程通道中同时运行多个测试接口,同步完成对测试案例对应的测试场景的测试,以提高测试效率。
启动模块12,用于根据所述测试案例数量启动多个线程通道,其中一个线程通道对应测试一个测试案例,同一线程通道内同步运行多个所述测试接口,以同步完成所述测试案例对应的各所述测试场景。
本实施例匹配线程通道的数量由待测试的测试任务中包括的测试案例量,以及测试平台的数据处理能力共同决定。举例地,系统B包括5个案例,则匹配5个线程通道;系统A中包含100个测试案例,但测试平台的数据处理能力只允许同时并发10个线程通道,则同时匹配10个线程通道,完成执行测试案例的线程通道会返回测试案例池,重新抓取未测试的测试案例进行执行,直至100个测试案例全部执行完毕。
第二匹配模块13,用于将各测试案例一一对应分配到各所述线程通道。
本实施例通过将各测试案例一一对应匹配到各所述线程通道,并在同一线程通道中通过依次调用不同的测试接口,以完成对各测试案例的测试。本实施例的一一对应匹配,只根据一个线程通道对应一个测试案例进行匹配。举例地,系统A对应的测试任务中包含100个测试案例,但测试平台的数据处理能力只允许同时并发10个线程通道,则同时匹配10个线程通道,10个线程通道对应10个测试案例,完成执行测试案例的线程通道会返回待测试的测试案例池,重新抓取未测试的测试案例进行测试,直至100个测试案例全部测试完毕。本实施例同时支持多条线程通道同时并发运行,所以,本申请在同一时间有多个接口被调用,提高了测试效率,为大批量接口的规模化测试提供了具体有效的解决方案。
参照图4,本申请再一实施例的接口测试的装置,包括:
扫描模块111,用于启动异步程序循环扫描任务池,其中所述异步程序指扫描程序与接口测试对应的测试程序处于异步工作状态。
本实施例的异步程序在每隔固定时间对任务池进行扫描,比如每10s扫描一次,以确定任务池中是否还存在待测试的测试任务,而同时各线程通道的测试过程依然在进行,即扫描与测试互不干扰。本实施例的任务池是指由各待测试的测试任务组成的任务表。
第一判断模块112,用于判断所述任务池内是否存在待测试的测试任务。
本实施例中当一个测试任务被执行或执行完毕,会自动从任务池中删除,当有新任务增加时,会自动添加至任务池,即任务池中均为待测试的测试任务,通过查看任务池中是否有测试任务数据,来判定是否有待测试的测试任务。
第三获取模块113:若存在待测试的测试任务,则获取所述待测试的测试任务。
本实施例中如果完成一个测试任务后,发现任务池中还存在待测试的测试任务,则自动获取测试任务,直至所有测试任务均完成。本实施例通过异步程序可获取需要测试的测试任务,并依次自动完成任务测试,可以自定义晚上时间自动执行,无需人工进行测试,解放了测试人力。
参照图5,本申请又一实施例的接口测试的装置,包括:
第二判断模块4,用于判断待测试的测试案例对应的各所述测试场景是否均已测试完毕。
本实施例的同一测试案例的各测试场景依次标识为不同的编号,然后按测试场景的编号顺序依次执行该测试案例的所有测试场景,当循环遍历完所有的测试场景的编号,则表明各所述测试场景已执行完毕。
控制模块5,用于若各所述测试场景均已测试完毕,则控制所述待测试案例对应的线程通道返回案例池,以重新获取新的未测试的测试案例进行测试。
本实施例的案例池为储存待测试的测试案例的表格,当测试案例的总数量远大于同时并发的线程通道的总数量时,需要一部分进入各线程通道进行测试,一部分存放在案例池等待测试,当有线程通道完成上一测试案例的测试后,会重新返回案例池抓取新的待测试的测试案例进行测试。举例地,系统A中包含100个测试案例,但测试平台的数据处理能力只允许同时并发10个线程通道,则同时匹配10个线程通道a至j分别对应执行测试案例1至10,当线程通道a完成执行测试案例1时,会重新返回案例池,重新抓取未测试的测试案例11进行执行,其他线程通道相同,直至100个测试案例全部执行完毕。本实施例的案例池为各测试案例组成的数据表。
第三判断模块6,用于判断所述案例池中对应的各所述测试案例是否均已测试完毕。
本实施例通过执行完毕一个测试案例时,会启动计数器进行累积计数,当计数器的示数与案例池中对应的测试案例统计数量相同时,则表明所有测试案例均已测试完毕。举例地,当系统A进入任务池后,统计到系统A的测试案例的统计数量为100,并存于案例池中,在测试过程中,当计数器显示为100时,则表明系统A的所有测试案例已执行完毕。
释放模块7,用于若各所述测试案例均已测试完毕,则释放各所述线程通道。
举例地,当系统A的100个测试案例均已执行完毕后,会释放各线程通道,以便更新匹配任务池中待测试的系统B对应的测试任务对应的各测试案例。当任务池中所有的测试任务均已执行完毕,即通过异步程序扫描任务池中无待测试的测试任务,则关闭各所述线程通道。
参照图6,本申请又一实施例的接口测试的装置,包括:
第三获取模块8,用于获取所述测试案例的各所述测试场景一一对应的测试数据。
本实施例通过数据回滚、调用接口、结果对比、数据库检测,完成测试场景对应的接口测试的正确性验证,记录测试结果,以获取所述测试案例对应的各所述测试场景的测试数据。
形成模块9,用于根据各所述测试数据形成测试报告。
本实施例会将各测试数据自动汇总,形成对应测试案例的测试报告,上述测试报告包括系统名称、测试案例及其数量、测试场景以及数量、调用接口信息、测试环境、测试时间、测试人员、操作选项等内容。
发送模块10,用于发送所述测试报告到指定终端进行显示。
本实施例的指定终端包括测试平台的显示终端、各测试负责人的移动终端,比如手机、电脑等,可通过邮件发送的方式将测试报告发送至各测试负责人的移动终端,以便各测试人员及时掌握测试进度及测试情况。
参照图7,本实施例的测试数据中包括测试返回结果,形成模块9,包括:
对比单元91,用于通过将各所述测试数据一一对应的测试返回结果,与预期结果一一对应后,分别对各所述测试返回结果和与其对应的预期结果进行同时排序并递归对比,以判断各所述测试返回结果和与其相对应的预期结果是否一致。
为了判断测试结果是否正确,则检测数据库中相应数据变化的是否跟预期一致。举例地,当张三买了‘厉害了我的国’的电影票(即调用买票接口),那么数据库中就相应增加一条数据,则通过相应的SQL语句去检测是否增加成功:select count(*)from订单表where owner=‘张三’and movie=‘厉害了我的国’and status=‘有效’;当张三有事退订了这个电影票(即调用退票接口),则通过调用相应的SQL语句去检查数据状态的变化是否正确:select count(*)from订单表where owner=‘张三’and movie=‘厉害了我的国’andstatus=‘退票’。本实施例通过将测试返回结果与预期结果分别排序后,形成两颗具有相同节点结构的数据树,通过一一对应对比各相同节点位置的数据是否相同,来判断各所述测试返回结果和与其对应的预期结果是否一致。比如,两颗数据树的相同节点位置对应的数据未带有Json的数据套嵌结构,则通过直接比较代码的方式来判断相同节点位置的数据是否相同。再比如,两棵数据树的相同节点位置对应的数据带有Json的数据套嵌结构,则需要先对套嵌结构按照数据层进行排序,并按照排序对各数据层的数据进行递归对比,以便判断是否各数据层对应的各数据相同,当相同时,则判定该节点位置对应的数据也相同。
第一形成单元92,用于若各所述测试返回结果和与其相对应的预期结果一致,则形成测试通过状态下测试案例对应的第一测试报告。
本实施例中,当上述两颗具有相同节点结构的数据树,通过一一对应对比各相同节点位置的数据都相同时,则对应的测试场景测试通过,当测试案例对应的各测试场景的测试结果均为通过时,则测试案例的测试通过。
第二形成单元93,用于若各所述测试返回结果和与其相对应的预期结果不一致,则形成测试未通过状态下测试案例对应的第二测试报告,其中,所述第二测试报告中包括重跑选项。
本实施例中,当上述两颗具有相同节点结构的数据树,通过一一对应对比各相同节点位置的数据未达到100%相同时,则对应的测试场景测试未通过,当测试案例对应的各测试场景的测试结果未达到100%通过时,则测试案例的测试不通过。本实施例的第二测试报告与第一测试报告的主要区别点在于操作选项不同,第二测试报告的操作选项包括重跑选项,以便再次进行该测试案例的测试执行。
参照图8,本申请又一实施例的接口测试的装置,包括:
第四判断模块31,用于判断将各所述测试接口的当前数据状态是否与各所述测试接口在数据库中的预配置状态一致。
本实施例的接口开发后可重复使用,通过在数据库中配置该接口的预配置状态,当测试场景执行测试前,会将上一次测试过程中被修改的业务状态数据、添加的调用数据等进行数据回滚,以便接口数据恢复到数据库的预配置状态,而再次被调用。本实施例通过数据库检测来判断将各所述接口的当前的数据状态是否为各所述接口在数据库中的预配置状态一致,数据库检测指的是调用接口后,业务数据库会进行相应的处理,例如数据的新增或者删除,或者数据状态的变化,最终会落地到数据库中进行存储。
第二调用模块32,用于若当前数据状态与各所述测试接口在数据库中的预配置状态不一致,则调用SQL语句将各所述测试接口的当前数据状态回滚到各自对应的所述预配置状态。
本申请的案例执行过程中,为保证每个场景接口可重复使用,在调用前会根据接口需要进行数据准备,如通过SQL语句将上一次业务操作(接口调用)过程中改变的数据状态回滚成未调用接口前的状态,重新回到数据库中预配制状态。举例地,退款测试场景,调用接口后,对应接口的数据状态从‘待退款’变为‘已退款’,被更改了业务状态,若不将该接口的数据状态回滚到预配制状态‘待退款’,则在此调用后则无法正常进行测试。再比如,调用数据接口,预配制状态为‘无数据’,执行业务后会在数据库中增加相应的数据,并将数据状态从‘无数据’变为‘增加了数据’,若不将数据状态回滚到预配制状态,则导致在次调用该接口去调用数据时,则导致增加数据失败。
参照图9,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储接口测试过程需要的所有数据。该计算机设备的网络接口用于与外部的端通过网络连接通信。该计算机程序被处理器执行时以实现接口测试的方法。
上述处理器执行上述接口测试的方法,包括:获取待测试的测试案例的测试场景数据,其中,所述测试案例包括一个或多个测试场景,所述测试场景数据包括测试场景数量、测试案例对应的各测试场景以及各测试场景依次执行的测试顺序;根据所述测试场景数量调用对应的多个测试接口,并依据各所述测试场景分别一一对应配置各所述测试接口的配置参数;按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口。
上述计算机设备,通过提出一种多线程通道批量进行的接口测试的方法,可以并发调用多个测试接口,提高接口测试效率。通过异步程序,不断扫描任务池中待测试的测试任务,每个测试任务包含一个或多个测试案例,每个测试案例包含一个或多个测试场景。当异步程序扫描到任务池中存在测试任务后,按照可配置的线程通道数量同时发起多个线程通道,每个线程通道从任务池中捞出一个测试案例执行测试,同一线程通道内按顺序完成该测试案例中所有的测试场景的测试,包括数据回滚、调用接口、结果对比、数据库检测,完成接口正确性验证,记录测试结果,当前测试案例的所有测试场景执行完成后,该线程通道返回案例池继续捞取下一个测试案例执行,其他线程通道以此类推,直到完成该测试任务中的所有的测试案例,然后释放线程通道并关闭,实现全自动的接口测试流程,最后自动汇总测试数据形成测试报告并自动发送测试报告,提高测试效率,解放了测试人力资源。
在一个实施例中,上述处理器获取待测试的测试案例的测试场景数据的步骤之前,包括:获取待测试的测试任务的测试案例数据,其中,所述测试任务包括一个或多个测试案例,所述测试案例数据包括测试案例数量;根据所述测试案例数量启动多个线程通道,其中一个线程通道对应测试一个测试案例,同一线程通道内同步运行多个所述测试接口,以同步完成所述测试案例对应的各所述测试场景;将各测试案例一一对应分配到各所述线程通道。
在一个实施例中,上述处理器获取待测试的测试任务的测试案例数据的步骤之前,包括:启动异步程序循环扫描任务池,其中所述异步程序指扫描程序与接口测试对应的测试程序处于异步工作状态;判断所述任务池内是否存在待测试的测试任务;若是,则获取所述待测试的测试任务。
在一个实施例中,上述处理器按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口的步骤之后,包括:判断待测试的测试案例对应的各所述测试场景是否均已测试完毕;若各所述测试场景均已测试完毕,则控制所述待测试案例对应的线程通道返回案例池,以重新获取新的未测试的测试案例进行测试;判断所述案例池中对应的各所述测试案例是否均已测试完毕;若各所述测试案例均已测试完毕,则释放各所述线程通道。
在一个实施例中,上述处理器释放各所述线程通道的步骤之后,包括:获取所述测试案例的各所述测试场景一一对应的测试数据;根据各所述测试数据形成测试报告;发送所述测试报告到指定终端进行显示。
在一个实施例中,所述测试数据中包括测试返回结果,上述处理器根据各所述测试数据形成测试报告的步骤,包括:通过将各所述测试数据一一对应的测试返回结果,与预期结果一一对应后,分别对各所述测试返回结果和与其对应的预期结果进行同时排序并递归对比,以判断各所述测试返回结果和与其相对应的预期结果是否一致;若一致,则形成测试通过状态下测试案例对应的第一测试报告;若不一致,则形成测试未通过状态下测试案例对应的第二测试报告,其中,所述第二测试报告中包括重跑选项。
在一个实施例中,上述处理器按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口的步骤之前,包括:判断将各所述测试接口的当前数据状态是否与各所述测试接口在数据库中的预配置状态一致;若否,则调用SQL语句将各所述测试接口的当前数据状态回滚到各自对应的所述预配置状态。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现接口测试的方法,包括:获取待测试的测试案例的测试场景数据,其中,所述测试案例包括一个或多个测试场景,所述测试场景数据包括测试场景数量、测试案例对应的各测试场景以及各测试场景依次执行的测试顺序;根据所述测试场景数量调用对应的多个测试接口,并依据各所述测试场景分别一一对应配置各所述测试接口的配置参数;按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口。
上述计算机可读存储介质,通过提出一种多线程通道批量进行的接口测试的方法,可以并发调用多个测试接口,提高接口测试效率。通过异步程序,不断扫描任务池中待测试的测试任务,每个测试任务包含一个或多个测试案例,每个测试案例包含一个或多个测试场景。当异步程序扫描到任务池中存在测试任务后,按照可配置的线程通道数量同时发起多个线程通道,每个线程通道从任务池中捞出一个测试案例执行测试,同一线程通道内按顺序完成该测试案例中所有的测试场景的测试,包括数据回滚、调用接口、结果对比、数据库检测,完成接口正确性验证,记录测试结果,当前测试案例的所有测试场景执行完成后,该线程通道返回案例池继续捞取下一个测试案例执行,其他线程通道以此类推,直到完成该测试任务中的所有的测试案例,然后释放线程通道并关闭,实现全自动的接口测试流程,最后自动汇总测试数据形成测试报告并自动发送测试报告,提高测试效率,解放了测试人力资源。
在一个实施例中,上述处理器获取待测试的测试案例的测试场景数据的步骤之前,包括:获取待测试的测试任务的测试案例数据,其中,所述测试任务包括一个或多个测试案例,所述测试案例数据包括测试案例数量;根据所述测试案例数量启动多个线程通道,其中一个线程通道对应测试一个测试案例,同一线程通道内同步运行多个所述测试接口,以同步完成所述测试案例对应的各所述测试场景;将各测试案例一一对应匹配到各所述线程通道。
在一个实施例中,上述处理器获取待测试的测试任务的测试案例数据的步骤之前,包括:启动异步程序循环扫描任务池,其中所述异步程序指扫描程序与接口测试对应的测试程序处于异步工作状态;判断所述任务池内是否存在待测试的测试任务;若是,则获取所述待测试的测试任务。
在一个实施例中,上述处理器按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口的步骤之后,包括:判断待测试的测试案例对应的各所述测试场景是否均已测试完毕;若各所述测试场景均已测试完毕,则控制所述待测试案例对应的线程通道返回案例池,以重新获取新的未测试的测试案例进行测试;判断所述案例池中对应的各所述测试案例是否均已测试完毕;若各所述测试案例均已测试完毕,则释放各所述线程通道。
在一个实施例中,上述处理器释放各所述线程通道的步骤之后,包括:获取所述测试案例的各所述测试场景一一对应的测试数据;根据各所述测试数据形成测试报告;发送所述测试报告到指定终端进行显示。
在一个实施例中,所述测试数据中包括测试返回结果,上述处理器根据各所述测试数据形成测试报告的步骤,包括:通过将各所述测试数据一一对应的测试返回结果,与预期结果一一对应后,分别对各所述测试返回结果和与其对应的预期结果进行同时排序并递归对比,以判断各所述测试返回结果和与其相对应的预期结果是否一致;若一致,则形成测试通过状态下测试案例对应的第一测试报告;若不一致,则形成测试未通过状态下测试案例对应的第二测试报告,其中,所述第二测试报告中包括重跑选项。
在一个实施例中,上述处理器按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口的步骤之前,包括:判断将各所述测试接口的当前数据状态是否与各所述测试接口在数据库中的预配置状态一致;若否,则调用SQL语句将各所述测试接口的当前数据状态回滚到各自对应的所述预配置状态。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种接口测试的方法,其特征在于,包括:
获取待测试的测试案例的测试场景数据,其中,所述测试案例包括一个或多个测试场景,所述测试场景数据包括测试场景数量、测试案例对应的各测试场景以及各测试场景依次执行的测试顺序;
根据所述测试场景数量调用对应的多个测试接口,并依据各所述测试场景分别一一对应配置各所述测试接口的配置参数;
按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口。
2.根据权利要求1所述的接口测试的方法,其特征在于,所述获取待测试的测试案例的测试场景数据的步骤之前,包括:
获取待测试的测试任务的测试案例数据,其中,所述测试任务包括一个或多个测试案例,所述测试案例数据包括测试案例数量;
根据所述测试案例数量启动多个线程通道,其中一个线程通道对应测试一个测试案例,同一线程通道内同步运行多个所述测试接口,以同步完成所述测试案例对应的各所述测试场景;
将各测试案例一一对应分配到各所述线程通道。
3.根据权利要求2所述的接口测试的方法,其特征在于,所述获取待测试的测试任务的测试案例数据的步骤之前,包括:
启动异步程序循环扫描任务池,其中所述异步程序指扫描程序与接口测试对应的测试程序处于异步工作状态;
判断所述任务池内是否存在待测试的测试任务;
若是,则获取所述待测试的测试任务。
4.根据权利要求2所述的接口测试的方法,其特征在于,所述按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口的步骤之后,包括:
判断待测试的测试案例对应的各所述测试场景是否均已测试完毕;
若各所述测试场景均已测试完毕,则控制所述待测试案例对应的线程通道返回案例池,以重新获取新的未测试的测试案例进行测试;
判断所述案例池中各所述测试案例是否均已测试完毕;
若各所述测试案例均已测试完毕,则释放各所述线程通道。
5.根据权利要求4所述的接口测试的方法,其特征在于,所述释放各所述线程通道的步骤之后,包括:
获取所述测试案例的各所述测试场景一一对应的测试数据;
根据各所述测试数据形成测试报告;
发送所述测试报告到指定终端进行显示。
6.根据权利要求5所述的接口测试的方法,其特征在于,所述测试数据中包括测试返回结果,所述根据各所述测试数据形成测试报告的步骤,包括:
通过将各所述测试数据一一对应的测试返回结果,与预期结果一一对应后,分别对各所述测试返回结果和与其对应的预期结果进行同时排序并递归对比,以判断各所述测试返回结果和与其相对应的预期结果是否一致;
若一致,则形成测试通过状态下测试案例对应的第一测试报告;
若不一致,则形成测试未通过状态下测试案例对应的第二测试报告,其中,所述第二测试报告中包括重跑选项。
7.根据权利要求1所述的接口测试的方法,其特征在于,所述按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口的步骤之前,包括:
判断将各所述测试接口的当前数据状态是否与各所述测试接口在数据库中的预配置状态一致;
若否,则调用SQL语句将各所述测试接口的当前数据状态回滚到各自对应的所述预配置状态。
8.一种接口测试的装置,其特征在于,包括:
第一获取模块,用于获取待测试的测试案例的测试场景数据,其中,所述测试案例包括一个或多个测试场景,所述测试场景数据包括测试场景数量、测试案例对应的各测试场景以及各测试场景依次执行的测试顺序;
第一匹配模块,用于根据所述测试场景数量调用对应的多个测试接口,并依据各所述测试场景分别一一对应配置各所述测试接口的配置参数;
第一调用模块,用于按照各所述测试场景依次执行的测试顺序,依次调用各所述测试接口。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811229369.4A CN109597753A (zh) | 2018-10-22 | 2018-10-22 | 接口测试的方法、装置、计算机设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811229369.4A CN109597753A (zh) | 2018-10-22 | 2018-10-22 | 接口测试的方法、装置、计算机设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109597753A true CN109597753A (zh) | 2019-04-09 |
Family
ID=65958105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811229369.4A Pending CN109597753A (zh) | 2018-10-22 | 2018-10-22 | 接口测试的方法、装置、计算机设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109597753A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992521A (zh) * | 2019-04-19 | 2019-07-09 | 北京金山云网络技术有限公司 | 一种测试结果通知方法、装置、电子设备及存储介质 |
CN110297767A (zh) * | 2019-06-03 | 2019-10-01 | 平安科技(深圳)有限公司 | 测试用例自动执行方法、装置、设备及存储介质 |
CN110413317A (zh) * | 2019-08-02 | 2019-11-05 | 四川新网银行股份有限公司 | 基于配置化的流程接口调用方法 |
CN111338943A (zh) * | 2020-02-21 | 2020-06-26 | 北京字节跳动网络技术有限公司 | 一种测试方法、装置、电子设备及可读存储介质 |
CN111881020A (zh) * | 2020-07-07 | 2020-11-03 | 上海中通吉网络技术有限公司 | 支付中心接口测试方法、装置和系统 |
CN112559352A (zh) * | 2020-12-16 | 2021-03-26 | 平安银行股份有限公司 | 接口测试的方法、装置、设备及存储介质 |
CN113093721A (zh) * | 2021-02-04 | 2021-07-09 | 中国船级社 | 一种自动并发船舶避碰测试方法及系统 |
CN115085772A (zh) * | 2022-08-24 | 2022-09-20 | 北京紫光青藤微系统有限公司 | 测试方法、处理器、nfc装置、电子设备和存储介质 |
CN116594912A (zh) * | 2023-07-14 | 2023-08-15 | 中航金网(北京)电子商务有限公司 | 服务器的数据测试方法、装置、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103218176A (zh) * | 2013-04-02 | 2013-07-24 | 中国科学院信息工程研究所 | 数据处理方法及装置 |
CN105389261A (zh) * | 2015-12-23 | 2016-03-09 | 北京奇虎科技有限公司 | 异步测试的方法及装置 |
CN106326102A (zh) * | 2015-07-06 | 2017-01-11 | 阿里巴巴集团控股有限公司 | 测试方法和装置 |
CN106528424A (zh) * | 2015-12-16 | 2017-03-22 | 中国民生银行股份有限公司 | 基于后台系统服务或接口的测试方法和测试平台 |
WO2018014580A1 (zh) * | 2016-07-20 | 2018-01-25 | 平安科技(深圳)有限公司 | 数据接口测试方法、装置、服务器和存储介质 |
CN107992427A (zh) * | 2017-12-26 | 2018-05-04 | 顺丰科技有限公司 | 创建业务测试场景的方法、装置、设备及其存储介质 |
-
2018
- 2018-10-22 CN CN201811229369.4A patent/CN109597753A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103218176A (zh) * | 2013-04-02 | 2013-07-24 | 中国科学院信息工程研究所 | 数据处理方法及装置 |
CN106326102A (zh) * | 2015-07-06 | 2017-01-11 | 阿里巴巴集团控股有限公司 | 测试方法和装置 |
CN106528424A (zh) * | 2015-12-16 | 2017-03-22 | 中国民生银行股份有限公司 | 基于后台系统服务或接口的测试方法和测试平台 |
CN105389261A (zh) * | 2015-12-23 | 2016-03-09 | 北京奇虎科技有限公司 | 异步测试的方法及装置 |
WO2018014580A1 (zh) * | 2016-07-20 | 2018-01-25 | 平安科技(深圳)有限公司 | 数据接口测试方法、装置、服务器和存储介质 |
CN107992427A (zh) * | 2017-12-26 | 2018-05-04 | 顺丰科技有限公司 | 创建业务测试场景的方法、装置、设备及其存储介质 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992521A (zh) * | 2019-04-19 | 2019-07-09 | 北京金山云网络技术有限公司 | 一种测试结果通知方法、装置、电子设备及存储介质 |
CN110297767A (zh) * | 2019-06-03 | 2019-10-01 | 平安科技(深圳)有限公司 | 测试用例自动执行方法、装置、设备及存储介质 |
CN110297767B (zh) * | 2019-06-03 | 2024-02-23 | 平安科技(深圳)有限公司 | 测试用例自动执行方法、装置、设备及存储介质 |
CN110413317B (zh) * | 2019-08-02 | 2023-06-06 | 四川新网银行股份有限公司 | 基于配置化的流程接口调用方法 |
CN110413317A (zh) * | 2019-08-02 | 2019-11-05 | 四川新网银行股份有限公司 | 基于配置化的流程接口调用方法 |
CN111338943A (zh) * | 2020-02-21 | 2020-06-26 | 北京字节跳动网络技术有限公司 | 一种测试方法、装置、电子设备及可读存储介质 |
CN111881020A (zh) * | 2020-07-07 | 2020-11-03 | 上海中通吉网络技术有限公司 | 支付中心接口测试方法、装置和系统 |
CN111881020B (zh) * | 2020-07-07 | 2024-04-09 | 上海中通吉网络技术有限公司 | 支付中心接口测试方法、装置和系统 |
CN112559352A (zh) * | 2020-12-16 | 2021-03-26 | 平安银行股份有限公司 | 接口测试的方法、装置、设备及存储介质 |
CN113093721A (zh) * | 2021-02-04 | 2021-07-09 | 中国船级社 | 一种自动并发船舶避碰测试方法及系统 |
CN113093721B (zh) * | 2021-02-04 | 2022-03-01 | 中国船级社 | 一种自动并发船舶避碰测试方法及系统 |
CN115085772B (zh) * | 2022-08-24 | 2022-12-09 | 北京紫光青藤微系统有限公司 | 测试方法、处理器、nfc装置、电子设备和存储介质 |
CN115085772A (zh) * | 2022-08-24 | 2022-09-20 | 北京紫光青藤微系统有限公司 | 测试方法、处理器、nfc装置、电子设备和存储介质 |
CN116594912A (zh) * | 2023-07-14 | 2023-08-15 | 中航金网(北京)电子商务有限公司 | 服务器的数据测试方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109597753A (zh) | 接口测试的方法、装置、计算机设备以及存储介质 | |
CN109614310A (zh) | 测试接口的管理方法、装置、计算机设备以及存储介质 | |
CN107908540B (zh) | 测试用例创建方法、装置、计算机设备及介质 | |
CN108268372B (zh) | Mock测试处理方法、装置、存储介质和计算机设备 | |
WO2016188170A1 (zh) | 测试方法和装置、设备、计算机存储介质 | |
CN105718371B (zh) | 一种回归测试方法、装置及系统 | |
CN107730077A (zh) | 节点任务数据显示方法、装置、存储介质和计算机设备 | |
CN109766263A (zh) | 自动化测试分析处理方法、装置、计算机设备及存储介质 | |
CN105516296B (zh) | 群组标识图像的配置方法及装置 | |
CN106886492A (zh) | 基于数据回放的测试方法和测试装置 | |
CN110765026A (zh) | 自动化测试方法、装置、存储介质及设备 | |
CN109597754A (zh) | 业务流程性接口测试方法、装置、计算机设备及存储介质 | |
CN108304327A (zh) | 静态代码扫描结果处理方法和装置 | |
CN109726134B (zh) | 接口测试方法和系统 | |
CN105426307B (zh) | 一种局域网产品测试资源共享方法及系统 | |
CN106447156A (zh) | 考勤管理方法及系统 | |
CN110457204A (zh) | 代码测试方法、装置、计算机设备和存储介质 | |
CN109344053A (zh) | 接口覆盖测试方法、系统、计算机设备和存储介质 | |
CN106980571A (zh) | 一种测试用例集的构建方法和设备 | |
CN110493812A (zh) | 配网测试的处理方法、装置、系统、处理器及主控设备 | |
CN113407315A (zh) | 判图任务分配方法、装置和设备 | |
CN113298369A (zh) | 一种用于工程质量检测的信息处理方法、系统及检测终端 | |
CN110928777B (zh) | 测试用例的处理方法、装置、设备及存储介质 | |
CN104182348B (zh) | 软件测试方法及装置 | |
CN109359707B (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 |