CN114416571A - 一种接口测试方法、装置、设备和存储介质 - Google Patents

一种接口测试方法、装置、设备和存储介质 Download PDF

Info

Publication number
CN114416571A
CN114416571A CN202210071597.3A CN202210071597A CN114416571A CN 114416571 A CN114416571 A CN 114416571A CN 202210071597 A CN202210071597 A CN 202210071597A CN 114416571 A CN114416571 A CN 114416571A
Authority
CN
China
Prior art keywords
test
interface
tested
file
storing
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
Application number
CN202210071597.3A
Other languages
English (en)
Inventor
官祥臻
马文勇
吴传华
刘杰
桂林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gongfu Qingdao Technology Co ltd
Haier Digital Technology Qingdao Co Ltd
Haier Caos IoT Ecological Technology Co Ltd
Qingdao Haier Industrial Intelligence Research Institute Co Ltd
Original Assignee
Gongfu Qingdao Technology Co ltd
Haier Digital Technology Qingdao Co Ltd
Haier Caos IoT Ecological Technology Co Ltd
Qingdao Haier Industrial Intelligence Research Institute Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Gongfu Qingdao Technology Co ltd, Haier Digital Technology Qingdao Co Ltd, Haier Caos IoT Ecological Technology Co Ltd, Qingdao Haier Industrial Intelligence Research Institute Co Ltd filed Critical Gongfu Qingdao Technology Co ltd
Priority to CN202210071597.3A priority Critical patent/CN114416571A/zh
Publication of CN114416571A publication Critical patent/CN114416571A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • G06F11/2635Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers using a storage for the test inputs, e.g. test ROM, script files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种接口测试方法、装置、设备和存储介质,该方法包括:创建测试项目后,生成测试项目对应的测试文件目录结构,测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件;确定待测接口,并在接口文件中存储待测接口的描述信息;在接收到待测接口的测试用例集之后,执行待测接口所对应的测试脚本以基于测试用例集测试待测接口,生成测试报告的同时将测试报告存储至报告文件中。上述技术方案,在测试项目中执行待测接口对应的测试脚本,可以实现基于测试项目中测试文件所包含的测试用例集测试待测接口,同时生成存储至报告文件的测试报告,实现对待测接口的自动化测试,提升了接口测试的效率,进一步节省了人工成本。

Description

一种接口测试方法、装置、设备和存储介质
技术领域
本发明实施例涉及自动化测试技术,尤其涉及一种接口测试方法、装置、设备和存储介质。
背景技术
当平台迭代版本较多后,随着功能和模块的不断叠加,使用到的接口也越来越多。当然,需要对接口进行整理形成接口文档对接口进行维护。在平台版本迭代时,尤其是重大版本时,经常需要对平台接口做全面的接口测试检查。
如果仅仅依靠人力按照接口文档进行测试,工作量会非常大;且效率也达不到保证。随着平台的逐渐迭代扩大,接口也相应增加,接口回归任务将越来越繁重。
因此,亟需一种接收测试方法,以实现对接口的自动化测试。
发明内容
本发明提供一种接口测试方法、装置、设备和存储介质,以实现对接口的自动化测试。
第一方面,本发明实施例提供了一种接口测试方法,包括:
创建测试项目后,生成测试项目对应的测试文件目录结构,所述测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件;
确定待测接口,并在所述接口文件中存储所述待测接口的描述信息;
在接收到所述待测接口的测试用例集之后,执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。
本发明实施例提供一种接口测试方法,该方法包括:创建测试项目后,生成测试项目对应的测试文件目录结构,所述测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件;确定待测接口,并在所述接口文件中存储所述待测接口的描述信息;在接收到所述待测接口的测试用例集之后,执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。上述技术方案,在测试项目中执行待测接口对应的测试脚本,可以实现基于测试项目中测试文件所包含的测试用例集测试待测接口,同时生成存储至报告文件的测试报告,实现对待测接口的自动化测试,提升了接口测试的效率,进一步节省了人工成本。
进一步地,确定待测接口,包括:
基于抓包工具进行接口录制以获取所述待测接口;
或者,在所述接口文件中新增待测脚本,并在所述待测脚本中添加描述信息,根据所述描述信息确定所述待测接口。
进一步地,所述测试文件还包括用于存储所述测试用例集的测试用例集文件,相应地,在接收到所述待测接口的测试用例集之后,还包括:
基于所述测试用例集文件存储所述测试用例集。
进一步地,所述测试用例集包括待测系统所包含的各所述待测接口的测试用例集,以及各所述测试用例的执行顺序;
所述测试文件还包括测试用例文件,所述测试用例文件用于存储所述测试用例。
进一步地,所述测试文件还包括用于存储测试数据的数据文件,相应地,在执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口之前,还包括:
从所述数据文件中调取所述测试数据,并基于所述测试数据驱动所述待测接口。
进一步地,所述测试文件还包括用于存储辅助函数的函数文件,相应地,从所述数据文件中调取所述测试数据,包括:
从所述函数文件中调取所述辅助函数;
基于所述辅助函数从所述数据文件中调取所述测试数据。
进一步地,该方法还包括:
执行压测指令的同时将所述测试脚本转换为用于压测的压测脚本;
执行所述压测脚本的同时打开压测页面对所述待测接口进行压测参数配置,并生成压测报告。
第二方面,本发明实施例还提供了一种接口测试装置,包括:
生成模块,用于创建测试项目后,生成测试项目对应的测试文件目录结构,所述测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件;
获取模块,用于确定待测接口,并在所述接口文件中存储所述待测接口的描述信息;
执行模块,用于在接收到所述待测接口的测试用例集之后,执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。
进一步地,获取模块,具体用于:
基于抓包工具进行接口录制以获取所述待测接口;并在所述接口文件中存储所述待测接口的描述信息;
或者,在所述接口文件中新增待测脚本,并在所述待测脚本中添加描述信息,根据所述描述信息确定所述待测接口;并在所述接口文件中存储所述待测接口的描述信息。
进一步地,所述测试文件还包括用于存储所述测试用例集的测试用例集文件,相应地,该装置还包括:
存储模块,用于基于所述测试用例集文件存储所述测试用例集。
进一步地,所述测试用例集包括待测系统所包含的各所述待测接口的测试用例集,以及各所述测试用例的执行顺序;
所述测试文件还包括测试用例文件,所述测试用例文件用于存储所述测试用例。
进一步地,所述测试文件还包括用于存储测试数据的数据文件,相应地,该装置还包括:
驱动模块,用于从所述数据文件中调取所述测试数据,并基于所述测试数据驱动所述待测接口。
进一步地,所述测试文件还包括用于存储辅助函数的函数文件,相应地,驱动模块,具体用于:
从所述函数文件中调取所述辅助函数;基于所述辅助函数从所述数据文件中调取所述测试数据;并基于所述测试数据驱动所述待测接口。
进一步地,该装置还包括:
转换模块,用于执行压测指令的同时将所述测试脚本转换为用于压测的压测脚本;
压测模块,用于执行所述压测脚本的同时打开压测页面对所述待测接口进行压测参数配置,并生成压测报告。
第三方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面中任一所述的接口测试方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面中任一所述的接口测试方法。
第五方面,本申请提供一种计算机程序产品,该计算机程序产品包括计算机指令,当计算机指令在计算机上运行时,使得计算机执行如第一方面提供的接口测试方法。
需要说明的是,上述计算机指令可以全部或者部分存储在计算机可读存储介质上。其中,计算机可读存储介质可以与接口测试装置的处理器封装在一起的,也可以与接口测试装置的处理器单独封装,本申请对此不做限定。
本申请中第二方面、第三方面、第四方面以及第五方面的描述,可以参考第一方面的详细描述;并且,第二方面、第三方面、第四方面、以及第五方面的描述的有益效果,可以参考第一方面的有益效果分析,此处不再赘述。
在本申请中,上述接口测试装置的名字对设备或功能模块本身不构成限定,在实际实现中,这些设备或功能模块可以以其他名称出现。只要各个设备或功能模块的功能和本申请类似,属于本申请权利要求及其等同技术的范围之内。
本申请的这些方面或其他方面在以下的描述中会更加简明易懂。
附图说明
图1为本发明实施例一提供的一种接口测试方法的流程图;
图2为本发明实施例一提供的一种接口测试文件中测试文件目录结构示意图;
图3为本发明实施例二提供的一种接口测试方法的流程图;
图4为本发明实施例三提供的一种接口测试装置的结构示意图;
图5为本发明实施例四提供的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本申请的说明书以及附图中的术语“第一”和“第二”等是用于区别不同的对象,或者用于区别对同一对象的不同处理,而不是用于描述对象的特定顺序。
此外,本申请的描述中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选的还包括其他没有列出的步骤或单元,或可选的还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。此外,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
需要说明的是,本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请的描述中,除非另有说明,“多个”的含义是指两个或两个以上。
实施例一
图1为本发明实施例一提供的一种接口测试方法的流程图,本实施例可适用于需要提升接口测试效率的情况,该方法可以由接口测试装置来执行,如图1所示,具体包括如下步骤:
步骤110、创建测试项目后,生成测试项目对应的测试文件目录结构。
图2为本发明实施例一提供的一种接口测试文件中测试文件目录结构示意图,如图2所示,测试文件包括用于存储待测接口的接口文件api,具体以yml文件形式存储接口文件。接口文件中可以存储待测接口的信息,例如,可以存储待测接口的描述信息,即接口定义描述;测试文件还包括用于存储测试报告的报告文件report,报告文件中可以存储待测接口的测试结果,即测试报告。
具体地,在python中创建测试项目,具体可以在python中以cmd命令hrun--startproject项目名称,创建完成后,可以得到如图2所示的测试文件目录结构。
本发明实施例中,首先可以在创建测试项目后,生成测试项目对应的测试文件目录结构,以为测试过程中的待测接口和测试用例集提供存储空间。
步骤120、确定待测接口,并在所述接口文件中存储所述待测接口的描述信息。
其中,待测接口可以为待测系统的接口。
具体地,可以通过抓包工具,例如Fiddler和Charles等进行接口录制并转换成yml格式的脚本,即demo-api.yml,并将yml格式脚本存储至接口文件中;还可以在api目录下新增yml格式的脚本,添加具体接口描述等详细信息至yml格式的脚本中,并将yml格式脚本存储至接口文件中。实现对待测接口的确定,以及待测接口的描述信息的存储。
本发明实施例中,通过脚本录制或者新增脚本,可以确定待测接口,当然,还可以将待测接口的描述信息存储至接口文件中。
步骤130、在接收到所述待测接口的测试用例集之后,执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。
其中,测试用例集可以为测试人员根据实际需求以yml格式编写的。测试用例集可以包括待测系统所包含的各待测接口的测试用例集,以及各测试用例的执行顺序。
具体地,测试人员可以将待测接口的测试用例集添加至测试文件所包含的测试用例集文件中,进而可以在Http runner测试框架中执行待测接口所对应的测试脚本,具体可以从测试用例集文件中调取测试用例集,并基于测试用例集测试的待测系统的各待测接口。在接口测试的同时,可以生成待测接口对应的测试报告,并且,该测试报告可以自动存储至测试文件所包含的报告文件中。
本发明实施例中,通过执行测试脚本,实现对待测系统所包含的各待测接口的自动化测试,且该自动化测试方法可以应用于多种待测系统,当然,测试框架也较为轻量化。
本发明实施例一提供一种接口测试方法,包括:创建测试项目后,生成测试项目对应的测试文件目录结构,所述测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件;确定待测接口,并在所述接口文件中存储所述待测接口的描述信息;在接收到所述待测接口的测试用例集之后,执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。上述技术方案,在测试项目中执行待测接口对应的测试脚本,可以实现基于测试项目中测试文件所包含的测试用例集测试待测接口,同时生成存储至报告文件的测试报告,实现对待测接口的自动化测试,提升了接口测试的效率,进一步节省了人工成本。
实施例二
图3为本发明实施例二提供的一种接口测试方法的流程图,本实施例是在上述实施例的基础上进行具体化。如图3所示,在本实施例中,该方法还可以包括:
步骤310、创建测试项目后,生成测试项目对应的测试文件目录结构。
其中,测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件。
本步骤所需的具体创建测试项目以及生成测试项目对应的测试文件目录结构在前述实施例一中已经进行了详细的描述,在此不再赘述。
步骤320、确定待测接口,并在所述接口文件中存储所述待测接口的描述信息。
一种实施方式中,确定待测接口,包括:
基于抓包工具进行接口录制以获取所述待测接口;
另一种实施方式中,确定待测接口,包括:
在所述接口文件中新增待测脚本,并在所述待测脚本中添加描述信息,根据所述描述信息确定所述待测接口。
具体地,可以通过抓包工具,例如Fiddler和Charles等进行接口录制并转换成yml格式的脚本,即demo-api.yml,并将yml格式脚本存储至接口文件中;还可以在api目录下新增yml格式的脚本,添加具体接口描述等详细信息至yml格式的脚本中,并将yml格式脚本存储至接口文件中。实现对待测接口的确定,以及待测接口的描述信息的存储。
本发明实施例中,通过脚本录制或者新增脚本,可以确定待测接口,当然,还可以将待测接口的描述信息存储至接口文件中。
步骤330、在接收到所述待测接口的测试用例集之后,基于所述测试用例集文件存储所述测试用例集。
测试文件还包括用于存储测试用例集的测试用例集文件testsuites,具体以yml文件形式存储测试用例集。
需要说明的是,所述测试用例集包括待测系统所包含的各所述待测接口的测试用例集,以及各所述测试用例的执行顺序teststep;所述测试文件还包括测试用例文件testcases,所述测试用例文件用于存储所述测试用例,具体以yml文件形式存储测试用例。
其中,每个测试用例为独立用例,不依赖其他测试用例。测试用例集的testcases是1个数组,数组的每个值为1个测试用例。
具体地,在接收到测试用例集后,可以将测试用例集所包含的测试用例存储至测试用例文件中,并将测试用例集所包含的测试顺序存储至测试用例集文件中。当然,也可以将测试用例集所包含的测试用例和测试顺序均存储至测试用例集文件中。
本发明实施例中,测试文件所包含的测试用例集文件和测试用例文件可以实现对测试待测接口所用的测试用例和测试用例集的存储,并且,在对待测接口进行自动化测试时,可以从测试用例集文件和测试用例文件中调取测试用例和测试用例集,为接口的自动化测试提供了数据储备。
步骤340、从所述数据文件中调取所述测试数据,并基于所述测试数据驱动所述待测接口。
测试文件还包括用于存储测试数据的数据文件data,具体以searchKey.csv文件形式存储测试数据,测试数据可以包括测试用例对应的name和testcase两个参数。
一种实施方式中,测试文件还包括用于存储辅助函数的函数文件,具体以debugtalk.py文件形式存储辅助函数,相应地,从所述数据文件中调取所述测试数据,包括:
从所述函数文件中调取所述辅助函数;基于所述辅助函数从所述数据文件中调取所述测试数据。
具体地,在对需要测试数据才可以正常运行的待测接口进行测试时,需要对测试用例中的参数做参数化处理,首先可以从测试文件所包含的函数文件中调取辅助函数,再基于辅助函数从测试文件所包含的数据文件中调取测试数据,并基于测试数据对测试用例进行参数化数据驱动。
需要说明的是,辅助函数可以为逻辑运算辅助函数,具体可以为parameterize函数。
本发明实施例中,在对需要测试数据才可以正常运行的待测接口进行测试时,首先可以获取测试数据,并基于获取到的测试数据对测试用例进行参数化数据驱动,以使得测试用例适用于对待测接口进行自动化测试。
步骤350、执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。
具体地,可以在Http runner测试框架中执行待测接口所对应的测试脚本,具体可以从测试用例集文件中调取测试用例集,并基于测试用例集测试的待测系统的各待测接口。在接口测试的同时,可以生成待测接口对应的测试报告,并且,该测试报告可以自动存储至测试文件所包含的报告文件中。
在实际应用中,可以基于requests发送http请求,进而开始执行测试脚本。
本发明实施例中,通过执行测试脚本,实现对待测系统所包含的各待测接口的自动化测试,且该自动化测试方法可以应用于多种待测系统,当然,测试框架也较为轻量化。
步骤360、执行压测指令的同时将所述测试脚本转换为用于压测的压测脚本。
步骤370、执行所述压测脚本的同时打开压测页面对所述待测接口进行压测参数配置,并生成压测报告。
在实际应用中,可以执行locuts指令,并在执行locuts指令时将yml文件形式的测试脚本转换成用于压测的压测脚本,执行压测脚本的同时可以打开locust页面对待测接口进行压测参数配置并生成压测对应的压测报告,实现对待测接口的压测。
本发明实施例中,可以对大批量待测接口进行脚本化,并可灵活配置调用不同的的待测接口生成不同的接口场景,同时也可以对待测接口进行压测。
本发明实施例二提供一种接口测试方法,包括:创建测试项目后,生成测试项目对应的测试文件目录结构,所述测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件;确定待测接口,并在所述接口文件中存储所述待测接口的描述信息;在接收到所述待测接口的测试用例集之后,基于所述测试用例集文件存储所述测试用例集;从所述数据文件中调取所述测试数据,并基于所述测试数据驱动所述待测接口;执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。执行压测指令的同时将所述测试脚本转换为用于压测的压测脚本;执行所述压测脚本的同时打开压测页面对所述待测接口进行压测参数配置,并生成压测报告。上述技术方案,在测试项目中执行待测接口对应的测试脚本,可以实现基于测试项目中测试文件所包含的测试用例集测试待测接口,同时生成存储至报告文件的测试报告,实现对待测接口的自动化测试,提升了接口测试的效率,进一步节省了人工成本。当然,可以对大批量待测接口进行脚本化,并可灵活配置调用不同的的待测接口生成不同的接口场景,同时也可以对待测接口进行压测,接口测试方法的复用性较强。
实施例三
图4为本发明实施例三提供的一种接口测试装置的结构示意图,该装置可以适用于需要提升接口测试效率的情况。该装置可以通过软件和/或硬件实现,并一般集成在计算机设备中。
如图4所示,该装置包括:
生成模块410,用于创建测试项目后,生成测试项目对应的测试文件目录结构,所述测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件;
获取模块420,用于确定待测接口,并在所述接口文件中存储所述待测接口的描述信息;
执行模块430,用于在接收到所述待测接口的测试用例集之后,执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。
本实施例提供的接口测试装置,创建测试项目后,生成测试项目对应的测试文件目录结构,所述测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件;确定待测接口,并在所述接口文件中存储所述待测接口的描述信息;在接收到所述待测接口的测试用例集之后,执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。上述技术方案,在测试项目中执行待测接口对应的测试脚本,可以实现基于测试项目中测试文件所包含的测试用例集测试待测接口,同时生成存储至报告文件的测试报告,实现对待测接口的自动化测试,提升了接口测试的效率,进一步节省了人工成本。
在上述实施例的基础上,获取模块420,具体用于:
基于抓包工具进行接口录制以获取所述待测接口;并在所述接口文件中存储所述待测接口的描述信息;
或者,在所述接口文件中新增待测脚本,并在所述待测脚本中添加描述信息,根据所述描述信息确定所述待测接口;并在所述接口文件中存储所述待测接口的描述信息。
在上述实施例的基础上,所述测试文件还包括用于存储所述测试用例集的测试用例集文件,相应地,该装置还包括:
存储模块,用于基于所述测试用例集文件存储所述测试用例集。
一种实施方式中,所述测试用例集包括待测系统所包含的各所述待测接口的测试用例集,以及各所述测试用例的执行顺序;
所述测试文件还包括测试用例文件,所述测试用例文件用于存储所述测试用例。
在上述实施例的基础上,所述测试文件还包括用于存储测试数据的数据文件,相应地,该装置还包括:
驱动模块,用于从所述数据文件中调取所述测试数据,并基于所述测试数据驱动所述待测接口。
在上述实施例的基础上,所述测试文件还包括用于存储辅助函数的函数文件,相应地,驱动模块,具体用于:
从所述函数文件中调取所述辅助函数;基于所述辅助函数从所述数据文件中调取所述测试数据;并基于所述测试数据驱动所述待测接口。
在上述实施例的基础上,该装置还包括:
转换模块,用于执行压测指令的同时将所述测试脚本转换为用于压测的压测脚本;
压测模块,用于执行所述压测脚本的同时打开压测页面对所述待测接口进行压测参数配置,并生成压测报告。
本发明实施例所提供的接口测试装置可执行本发明任意实施例所提供的接口测试方法,具备执行方法相应的功能模块和有益效果。
实施例四
图5为本发明实施例四提供的一种计算机设备的结构示意图。图5示出了适于用来实现本发明实施方式的示例性计算机设备5的框图。图5显示的计算机设备5仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,计算机设备5以通用计算设备的形式表现。计算机设备5的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机设备5典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备5访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机设备5可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备5也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机设备5交互的设备通信,和/或与使得该计算机设备5能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机设备5还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图5所示,网络适配器20通过总线18与计算机设备5的其它模块通信。应当明白,尽管图5中未示出,可以结合计算机设备5使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及页面显示,例如实现本发实施例所提供的接口测试方法,该方法包括:
创建测试项目后,生成测试项目对应的测试文件目录结构,所述测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件;
确定待测接口,并在所述接口文件中存储所述待测接口的描述信息;
在接收到所述待测接口的测试用例集之后,执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。
当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例所提供的接口测试方法的技术方案。
实施例五
本发明实施例五提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现例如本发实施例所提供的接口测试方法,该方法包括:
创建测试项目后,生成测试项目对应的测试文件目录结构,所述测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件;
确定待测接口,并在所述接口文件中存储所述待测接口的描述信息;
在接收到所述待测接口的测试用例集之后,执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于:电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本领域普通技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个计算装置上,或者分布在多个计算装置所组成的网络上,可选地,他们可以用计算机装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件的结合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种接口测试方法,其特征在于,包括:
创建测试项目后,生成测试项目对应的测试文件目录结构,所述测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件;
确定待测接口,并在所述接口文件中存储所述待测接口的描述信息;
在接收到所述待测接口的测试用例集之后,执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。
2.根据权利要求1所述的接口测试方法,其特征在于,确定待测接口,包括:
基于抓包工具进行接口录制以获取所述待测接口;
或者,在所述接口文件中新增待测脚本,并在所述待测脚本中添加描述信息,根据所述描述信息确定所述待测接口。
3.根据权利要求1所述的接口测试方法,其特征在于,所述测试文件还包括用于存储所述测试用例集的测试用例集文件,相应地,在接收到所述待测接口的测试用例集之后,还包括:
基于所述测试用例集文件存储所述测试用例集。
4.根据权利要求1所述的接口测试方法,其特征在于,所述测试用例集包括待测系统所包含的各所述待测接口的测试用例集,以及各所述测试用例的执行顺序;所述测试文件还包括测试用例文件,所述测试用例文件用于存储所述测试用例。
5.根据权利要求1所述的接口测试方法,其特征在于,所述测试文件还包括用于存储测试数据的数据文件,相应地,在执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口之前,还包括:
从所述数据文件中调取所述测试数据,并基于所述测试数据驱动所述待测接口。
6.根据权利要求5所述的接口测试方法,其特征在于,所述测试文件还包括用于存储辅助函数的函数文件,相应地,从所述数据文件中调取所述测试数据,包括:
从所述函数文件中调取所述辅助函数;
基于所述辅助函数从所述数据文件中调取所述测试数据。
7.根据权利要求1所述的接口测试方法,其特征在于,还包括:
执行压测指令的同时将所述测试脚本转换为用于压测的压测脚本;
执行所述压测脚本的同时打开压测页面对所述待测接口进行压测参数配置,并生成压测报告。
8.一种接口测试装置,其特征在于,包括:
生成模块,用于创建测试项目后,生成测试项目对应的测试文件目录结构,所述测试文件包括用于存储待测接口的接口文件和用于存储测试报告的报告文件;
获取模块,用于确定待测接口,并在所述接口文件中存储所述待测接口的描述信息;
执行模块,用于在接收到所述待测接口的测试用例集之后,执行所述待测接口所对应的测试脚本以基于所述测试用例集测试所述待测接口,生成测试报告的同时将所述测试报告存储至所述报告文件中。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7中任一所述的接口测试方法。
10.一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-7中任一所述的接口测试方法。
CN202210071597.3A 2022-01-21 2022-01-21 一种接口测试方法、装置、设备和存储介质 Pending CN114416571A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210071597.3A CN114416571A (zh) 2022-01-21 2022-01-21 一种接口测试方法、装置、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210071597.3A CN114416571A (zh) 2022-01-21 2022-01-21 一种接口测试方法、装置、设备和存储介质

Publications (1)

Publication Number Publication Date
CN114416571A true CN114416571A (zh) 2022-04-29

Family

ID=81275886

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210071597.3A Pending CN114416571A (zh) 2022-01-21 2022-01-21 一种接口测试方法、装置、设备和存储介质

Country Status (1)

Country Link
CN (1) CN114416571A (zh)

Similar Documents

Publication Publication Date Title
CN109302522B (zh) 测试方法、装置以及计算机系统和介质
CN110764945B (zh) 一种崩溃日志处理方法、装置、设备和存储介质
CN110806970A (zh) 一种基于模拟服务端响应的客户端测试方法、装置和电子设备
CN112579446A (zh) 一种接口测试方法、装置、电子设备和存储介质
CN117215910A (zh) 接口测试框架生成方法、测试方法、电子设备及存储介质
CN111274130A (zh) 一种自动化测试方法、装置、设备及存储介质
CN113836014A (zh) 一种接口测试方法、装置、电子设备和存储介质
KR102024275B1 (ko) 스크립트를 활용한 시험 프로그램 개발 시스템 및 그 방법
CN112416746A (zh) 一种测试用例生成方法、装置、设备及介质
CN112416747A (zh) 一种测试用例执行方法、装置、设备及介质
CN114416571A (zh) 一种接口测试方法、装置、设备和存储介质
CN113641575B (zh) 一种测试方法、装置、设备及存储介质
CN114490337A (zh) 调测方法、调测平台、设备及存储介质
CN115291928A (zh) 多种技术栈的任务自动集成方法、装置及电子设备
CN114339470A (zh) 基于卫星指令的数据测试方法、装置、电子设备及介质
CN114238128A (zh) 测试用例生成方法、装置、电子设备及计算机可读介质
CN111262727B (zh) 服务的扩容方法、装置、设备及存储介质
CN114745313A (zh) 终端远程测试方法、装置、电子设备和可读介质
CN113392002A (zh) 一种测试系统构建方法、装置、设备及存储介质
CN113377648A (zh) 软件系统诊断方法、装置、电子设备及计算机可读介质
CN113434382A (zh) 数据库性能监控方法、装置、电子设备及计算机可读介质
CN115484200B (zh) 一种埋点测试方法、装置、服务器、存储介质和系统
CN112948266B (zh) 一种数据库语法测试系统、方法、装置、设备及存储介质
CN112732320B (zh) 软件开发过程的持续集成方法、装置、电子设备及介质
CN110825438B (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