CN113434423A - 接口测试方法及装置 - Google Patents

接口测试方法及装置 Download PDF

Info

Publication number
CN113434423A
CN113434423A CN202110741298.1A CN202110741298A CN113434423A CN 113434423 A CN113434423 A CN 113434423A CN 202110741298 A CN202110741298 A CN 202110741298A CN 113434423 A CN113434423 A CN 113434423A
Authority
CN
China
Prior art keywords
test
interface
value
assertion
database 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
Application number
CN202110741298.1A
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.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202110741298.1A priority Critical patent/CN113434423A/zh
Publication of CN113434423A publication Critical patent/CN113434423A/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/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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming

Abstract

本申请实施例提供一种接口测试方法及装置,也可用于金融领域,方法包括:接收测试人员发送的接口类型指令和接口信息,并根据所述接口类型指令配置和所述接口信息执行对应网络配置操作;接收所述测试人员发送的至少一组测试案例数据并根据预设测试案例生成规则生成对应的测试案例;获取目标接口的返回报文和相应的数据库数据,并根据所述返回报文和所述数据库数据的测试类型以及对应的断言生成规则生成测试断言,根据所述测试案例执行所述测试断言并进行分布式比对,得到所述目标接口的测试结果;本申请能够有效提升接口测试效率,降低接口测试的准入门槛。

Description

接口测试方法及装置
技术领域
本申请涉及软件测试领域,也可用于金融领域,具体涉及一种接口测试方法及 装置。
背景技术
接口测试是测试系统组件间接口的一种测试,主要用于测试系统与外部其他系统之间的接口,以及系统内部各个子模块之间的接口。测试的重点是要检查接口 参数传递的正确性,接口功能实现的正确性,输出结果的正确性,以及对各种异 常情况的容错处理的完整性和合理性。针对软件接口的分类一般有如下几种情况:
(1)系统与系统之间的调用,如微信向用户提供统一的对外接口,程序员调 用接口完成基于微信的小程序等。
(2)同一系统内部上层服务对下层服务的调用,如一个软件程序一般分为表 示层,业务层和数据层,表示层调用业务层的接口来完成自己的工作,而业务层 又会调用数据层的接口来实现相应的业务等。
其以保证系统的正确和稳定为核心,重要性主要体现为以下几个方面:
(1)能够提早发现bug,符合质量控制前移的理念。
(2)接口测试低成本高效益,因为接口测试可以自动化并且是持续集成的。
(3)接口测试从用户的角度对系统接口进行全面检测。实际项目中,接口测 试会覆盖一定程度的业务逻辑
目前,针对接口测试,现有技术中的通常做法有两种:一是采用纯粹的代码的 方式进行编写,编写方式类似于代码的单元测试,另一种是采用平台化方案。
发明人发现,现有技术中纯粹代码的方式对于测试人员要求较高,需要测试人 员有良好的编写代码的水平,并且无法规范化代码,各种代码参差不齐,不利于 后续维护。至于平台化方案,现有技术通常没有考虑案例设计相关方面,通常只 能保存一笔测试数据。
发明内容
针对现有技术中的问题,本申请提供一种接口测试方法及装置,能够有效提升 接口测试效率,降低接口测试的准入门槛。
为了解决上述问题中的至少一个,本申请提供以下技术方案:
第一方面,本申请提供一种接口测试方法,包括:
接收测试人员发送的接口类型指令和接口信息,并根据所述接口类型指令配 置和所述接口信息执行对应网络配置操作;
接收所述测试人员发送的至少一组测试案例数据并根据预设测试案例生成规 则生成对应的测试案例;
获取目标接口的返回报文和相应的数据库数据,并根据所述返回报文和所述数据库数据的测试类型以及对应的断言生成规则生成测试断言,根据所述测试案例 执行所述测试断言并进行分布式比对,得到所述目标接口的测试结果。
进一步地,所述根据所述接口类型指令配置和所述接口信息执行对应网络配 置操作,包括:
根据所述接口类型指令配置对应的网络通讯信息;
根据所述接口信息配置对应的请求参数和响应参数。
进一步地,所述根据所述返回报文和所述数据库数据的测试类型以及对应的断言生成规则生成测试断言,还包括:
若所述返回报文中字段的值为恒等不变或某个字段的值和请求报文中的某个 字段的值相等或某个字段的值恒等于数据库数据中某个字段或某个字段在同类型 的请求下恒等不变,则判定所述返回报文和所述数据库数据的测试类型为常量类 型;
若所述返回报文中字段的值不为恒等不变或某个字段的值和请求报文中的某 个字段的值不相等或某个字段的值不恒等于数据库数据中某个字段或某个字段在 同类型的请求下不恒等不变。则判定所述返回报文和所述数据库数据的测试类型 为变量类型。
进一步地,所述根据所述返回报文和所述数据库数据的测试类型以及对应的 断言生成规则生成测试断言,包括:
在所述返回报文和所述数据库数据的测试类型在常量类型时,根据所述返回 报文和所述数据库数据的实际数值生成唯一对应的常量测试断言;
在所述返回报文和所述数据库数据的测试类型在变量类型时,根据所述返回报文和所述数据库数据的实际数值和对应的数值计算方法生成变量测试断言。
第二方面,本申请提供一种接口测试装置,包括:
网络参数配置模块,用于接收测试人员发送的接口类型指令和接口信息,并 根据所述接口类型指令配置和所述接口信息执行对应网络配置操作;
测试案例编辑模块,用于接收所述测试人员发送的至少一组测试案例数据并 根据预设测试案例生成规则生成对应的测试案例;
断言测试模块,用于获取目标接口的返回报文和相应的数据库数据,并根据所 述返回报文和所述数据库数据的测试类型以及对应的断言生成规则生成测试断 言,根据所述测试案例执行所述测试断言并进行分布式比对,得到所述目标接口 的测试结果。
进一步地,所述网络参数配置模块包括:
通讯信息配置单元,用于根据所述接口类型指令配置对应的网络通讯信息;
参数配置单元,用于根据所述接口信息配置对应的请求参数和响应参数。
进一步地,所述断言测试模块包括:
常量类型判断单元,用于若所述返回报文中字段的值为恒等不变或某个字段 的值和请求报文中的某个字段的值相等或某个字段的值恒等于数据库数据中某个 字段或某个字段在同类型的请求下恒等不变,则判定所述返回报文和所述数据库 数据的测试类型为常量类型;
变量类型判断单元,用于若所述返回报文中字段的值不为恒等不变或某个字段的值和请求报文中的某个字段的值不相等或某个字段的值不恒等于数据库数据中 某个字段或某个字段在同类型的请求下不恒等不变,则判定所述返回报文和所述 数据库数据的测试类型为变量类型。
进一步地,所述断言测试模块包括:
常量测试断言生成单元,用于在所述返回报文和所述数据库数据的测试类型 在常量类型时,根据所述返回报文和所述数据库数据的实际数值生成唯一对应的 常量测试断言;
变量测试断言生成单元,用于在所述返回报文和所述数据库数据的测试类型在变量类型时,根据所述返回报文和所述数据库数据的实际数值和对应的数值计算 方法生成变量测试断言。
第三方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上 并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的接口 测试方法的步骤。
第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该 计算机程序被处理器执行时实现所述的接口测试方法的步骤。
由上述技术方案可知,本申请提供一种接口测试方法及装置,通过接收测试人 员发送的接口类型指令和接口信息执行对应网络配置操作,并接收所述测试人员 发送的至少一组测试案例数据并根据预设测试案例生成规则生成对应的测试案 例,然后再依据目标接口的返回报文和相应的数据库数据的测试类型以及对应的 断言生成规则生成测试断言,根据所述测试案例执行所述测试断言并进行分布式 比对,得到所述目标接口的测试结果,由此能够有效提升接口测试效率,降低接 口测试的准入门槛。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例 或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的 附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳 动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中的接口测试方法的流程示意图之一;
图2为本申请实施例中的接口测试方法的流程示意图之二;
图3为本申请实施例中的接口测试方法的流程示意图之三;
图4为本申请实施例中的接口测试方法的流程示意图之四;
图5为本申请实施例中的接口测试装置的结构图之一;
图6为本申请实施例中的接口测试装置的结构图之二;
图7为本申请实施例中的接口测试装置的结构图之三;
图8为本申请实施例中的接口测试装置的结构图之四;
图9为本申请实施例中的分布式比对的示意图;
图10为本申请实施例中的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施 例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描 述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施 例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施 例,都属于本申请保护的范围。
考虑到现有技术中纯粹代码的方式对于测试人员要求较高,需要测试人员有 良好的编写代码的水平,并且无法规范化代码,各种代码参差不齐,不利于后续 维护。至于平台化方案,现有技术通常没有考虑案例设计相关方面,通常只能保 存一笔测试数据的问题,本申请提供一种接口测试方法及装置,通过接收测试人 员发送的接口类型指令和接口信息执行对应网络配置操作,并接收所述测试人员 发送的至少一组测试案例数据并根据预设测试案例生成规则生成对应的测试案 例,然后再依据目标接口的返回报文和相应的数据库数据的测试类型以及对应的 断言生成规则生成测试断言,根据所述测试案例执行所述测试断言并进行分布式 比对,得到所述目标接口的测试结果,由此能够有效提升接口测试效率,降低接 口测试的准入门槛。
为了能够有效提升接口测试效率,降低接口测试的准入门槛,本申请提供一 种接口测试方法的实施例,参见图1,所述接口测试方法具体包含有如下内容:
步骤S101:接收测试人员发送的接口类型指令和接口信息,并根据所述接口 类型指令配置和所述接口信息执行对应网络配置操作。
可选的,本申请可以接收测试人员发送的根据接口文档或者其他系统,确定 对应的接口信息,其中,所述接口信息包括但不限于请求参数和响应参数。
可选的,本申请可以接收测试人员发送的接口类型指令,根据不同的接口类 型,定义相关的关键数据,例如HTTP接口需要HTTP请求方法 (GET/POST/PUT/DELETE),URL等,RPC(Dubbo)接口则需要对应的ZK,存 根信息等。
步骤S102:接收所述测试人员发送的至少一组测试案例数据并根据预设测试 案例生成规则生成对应的测试案例。
可选的,本申请可以接收测试人员发送的至少一组测试案例数据并根据预设 测试案例生成规则生成对应的测试案例,例如在一界面上采用类似于EXCEL的方 式存储测试案例数据,以此支持多组测试案例数据的生成。
步骤S103:获取目标接口的返回报文和相应的数据库数据,并根据所述返回 报文和所述数据库数据的测试类型以及对应的断言生成规则生成测试断言,根据 所述测试案例执行所述测试断言并进行分布式比对,得到所述目标接口的测试结 果。
可选的,针对结果验证方面,目标接口涉及到数据库数据以及返回报文。
可以理解的是,测试断言的预期结果可以分为两类:常量和变量,常量即稳 定不变的,无论测试数据怎么修改,返回都是固定的,例如成功案例的接口状态 码等。
可选的,还有一种是可变化的,即变量,根据测试数据的不同,返回不同的 结果,但是这种数据是可以根据测试数据进行某种运算进行获取的,可以是某种 加解密,也可以是直接相等。
参见图9,可选的,因为涉及到比对,为了提高效率,采用了分布式的方式对 结果进行比对,从而得到目标接口的测试结果。
从上述描述可知,本申请实施例提供的接口测试方法,能够通过接收测试人 员发送的接口类型指令和接口信息执行对应网络配置操作,并接收所述测试人员 发送的至少一组测试案例数据并根据预设测试案例生成规则生成对应的测试案 例,然后再依据目标接口的返回报文和相应的数据库数据的测试类型以及对应的 断言生成规则生成测试断言,根据所述测试案例执行所述测试断言并进行分布式 比对,得到所述目标接口的测试结果,由此能够有效提升接口测试效率,降低接 口测试的准入门槛。
为了能够使测试人员灵活进行网络配置,在本申请的接口测试方法的一实施 例中,参见图2,上述步骤S101还可以具体包含如下内容:
步骤S201:根据所述接口类型指令配置对应的网络通讯信息。
步骤S202:根据所述接口信息配置对应的请求参数和响应参数。
可选的,本申请可以接收测试人员发送的根据接口文档或者其他系统,确定 对应的接口信息,其中,所述接口信息包括但不限于请求参数和响应参数。
可选的,本申请可以接收测试人员发送的接口类型指令,根据不同的接口类 型,定义相关的关键数据,例如HTTP接口需要HTTP请求方法 (GET/POST/PUT/DELETE),URL等,RPC(Dubbo)接口则需要对应的ZK,存 根信息等。
为了能够在生成测试断言时准确区别常量和变量,在本申请的接口测试方法 的一实施例中,参见图3,上述步骤S103还可以具体包含如下内容:
步骤S301:若所述返回报文中字段的值为恒等不变或某个字段的值和请求报 文中的某个字段的值相等或某个字段的值恒等于数据库数据中某个字段或某个字 段在同类型的请求下恒等不变,则判定所述返回报文和所述数据库数据的测试类 型为常量类型。
步骤S302:若所述返回报文中字段的值不为恒等不变或某个字段的值和请求 报文中的某个字段的值不相等或某个字段的值不恒等于数据库数据中某个字段或 某个字段在同类型的请求下不恒等不变。则判定所述返回报文和所述数据库数据 的测试类型为变量类型。
具体的,例如有一个HTTP接口,有3组测试数据,请求报文为①{“a”:2,” b”:”xxx1”},②{“a”:3,”b”:”xxx2”},③{“a”:5,”b”:”xxx3”},返回报 文分别为①{“ra”:2,”rb”:”xxx”},②{“ra”:3,”rb”:”xxx”},③{“ra”:5,” rb”:”xxx”},由此可知,返回报文中的ra与rb皆为常量,ra与请求报文中的a 相等,rb为恒等常量”xxx”。
为了能够根据不同的测试类型准确生成对应的测试断言,在本申请的接口测 试方法的一实施例中,参见图4,上述步骤S103还可以具体包含如下内容:
步骤S401:在所述返回报文和所述数据库数据的测试类型在常量类型时,根 据所述返回报文和所述数据库数据的实际数值生成唯一对应的常量测试断言。
步骤S402:在所述返回报文和所述数据库数据的测试类型在变量类型时,根 据所述返回报文和所述数据库数据的实际数值和对应的数值计算方法生成变量测 试断言。
可以理解的是,测试断言的预期结果可以分为两类:常量和变量,常量即稳 定不变的,无论测试数据怎么修改,返回都是固定的,例如成功案例的接口状态 码等,由此可以根据所述返回报文和所述数据库数据的实际数值生成唯一对应的 常量测试断言。
可选的,还有一种是可变化的,即变量,根据测试数据的不同,返回不同的 结果,但是这种数据是可以根据测试数据进行某种运算进行获取的,可以是某种 加解密,也可以是直接相等,由此可以根据所述返回报文和所述数据库数据的实 际数值和对应的数值计算方法生成变量测试断言。
为了能够有效提升接口测试效率,降低接口测试的准入门槛,本申请提供一 种用于实现所述接口测试方法的全部或部分内容的接口测试装置的实施例,参见 图5,所述接口测试装置具体包含有如下内容:
网络参数配置模块10,用于接收测试人员发送的接口类型指令和接口信息, 并根据所述接口类型指令配置和所述接口信息执行对应网络配置操作。
测试案例编辑模块20,用于接收所述测试人员发送的至少一组测试案例数据 并根据预设测试案例生成规则生成对应的测试案例。
断言测试模块30,用于获取目标接口的返回报文和相应的数据库数据,并根 据所述返回报文和所述数据库数据的测试类型以及对应的断言生成规则生成测试 断言,根据所述测试案例执行所述测试断言并进行分布式比对,得到所述目标接 口的测试结果。
从上述描述可知,本申请实施例提供的接口测试装置,能够通过接收测试人 员发送的接口类型指令和接口信息执行对应网络配置操作,并接收所述测试人员 发送的至少一组测试案例数据并根据预设测试案例生成规则生成对应的测试案 例,然后再依据目标接口的返回报文和相应的数据库数据的测试类型以及对应的 断言生成规则生成测试断言,根据所述测试案例执行所述测试断言并进行分布式 比对,得到所述目标接口的测试结果,由此能够有效提升接口测试效率,降低接 口测试的准入门槛。
为了能够使测试人员灵活进行网络配置,在本申请的接口测试装置的一实施 例中,参见图6,所述网络参数配置模块10包括:
通讯信息配置单元11,用于根据所述接口类型指令配置对应的网络通讯信息。
参数配置单元12,用于根据所述接口信息配置对应的请求参数和响应参数。
为了能够在生成测试断言时准确区别常量和变量,在本申请的接口测试装置 的一实施例中,参见图7,所述断言测试模块30包括:
常量类型判断单元31,用于若所述返回报文中字段的值为恒等不变或某个字 段的值和请求报文中的某个字段的值相等或某个字段的值恒等于数据库数据中某 个字段或某个字段在同类型的请求下恒等不变,则判定所述返回报文和所述数据 库数据的测试类型为常量类型。
变量类型判断单元32,用于若所述返回报文中字段的值不为恒等不变或某个 字段的值和请求报文中的某个字段的值不相等或某个字段的值不恒等于数据库数 据中某个字段或某个字段在同类型的请求下不恒等不变,则判定所述返回报文和 所述数据库数据的测试类型为变量类型。
为了能够根据不同的测试类型准确生成对应的测试断言,在本申请的接口测 试装置的一实施例中,参见图8,所述断言测试模块30包括:
常量测试断言生成单元33,用于在所述返回报文和所述数据库数据的测试类 型在常量类型时,根据所述返回报文和所述数据库数据的实际数值生成唯一对应 的常量测试断言。
变量测试断言生成单元34,用于在所述返回报文和所述数据库数据的测试类 型在变量类型时,根据所述返回报文和所述数据库数据的实际数值和对应的数值 计算方法生成变量测试断言。
为了更进一步说明本方案,本申请还提供一种应用上述接口测试装置实现接 口测试方法的具体应用实例,具体包含有如下内容:
S101:测试人员根据接口类型决定平台上需要定义的类型,根据不同的类型, 平台需要定义相关的关键数据,例如HTTP接口需要HTTP请求方法 (GET/POST/PUT/DELETE),URL等,RPC(Dubbo)接口则需要对应的ZK,存 根信息等。
S102:根据接口文档或者其他系统,定义对应的接口信息。
S103:设计以及编写测试案例:界面上采用类似于EXCEL的方式存储测试数 据,支持多组数据。
S104:编写断言:针对结果验证方面,我们涉及到数据库以及返回报文。断 言的预期结果可以分为两类:常量和变量,常量即稳定不变的,无论测试数据怎 么修改,返回都是固定的,例如成功案例的接口状态码等,还有一种是可变化的, 根据测试数据的不同,返回不同的结果,但是这种数据是可以根据测试数据进行 某种运算进行获取的,可能是某种加解密,也可能是直接相等,断言模块就是根 据上述几点,帮助快速实现断言。
S105:执行断言:本模块主要是为了最后的结果验证,因为涉及到比对,为 了提高效率,采用了分布式的方式对结果进行比对。
有上述内容可知,本申请至少还具有以下技术效果:
1、界面无可视化,0编码,降低了接口测试的难度,提升了接口测试的效率。
2、执行采用上云服务统一执行,告别jenkins调度的烦恼,减少工作量,提高 执行效率。
3、整体接口测试标准化,方便后期维护。
从硬件层面来说,为了能够有效提升接口测试效率,降低接口测试的准入门 槛,本申请提供一种用于实现所述接口测试方法中的全部或部分内容的电子设备 的实施例,所述电子设备具体包含有如下内容:
处理器(processor)、存储器(memory)、通信接口(Communications Interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信; 所述通信接口用于实现接口测试装置与核心业务系统、用户终端以及相关数据库 等相关设备之间的信息传输;该逻辑控制器可以是台式计算机、平板电脑及移动 终端等,本实施例不限于此。在本实施例中,该逻辑控制器可以参照实施例中的 接口测试方法的实施例,以及接口测试装置的实施例进行实施,其内容被合并于 此,重复之处不再赘述。
可以理解的是,所述用户终端可以包括智能手机、平板电子设备、网络机顶 盒、便携式计算机、台式电脑、个人数字助理(PDA)、车载设备、智能穿戴设备等。 其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。
在实际应用中,接口测试方法的部分可以在如上述内容所述的电子设备侧执 行,也可以所有的操作都在所述客户端设备中完成。具体可以根据所述客户端设 备的处理能力,以及用户使用场景的限制等进行选择。本申请对此不作限定。若 所有的操作都在所述客户端设备中完成,所述客户端设备还可以包括处理器。
上述的客户端设备可以具有通信模块(即通信单元),可以与远程的服务器进 行通信连接,实现与所述服务器的数据传输。所述服务器可以包括任务调度中心 一侧的服务器,其他的实施场景中也可以包括中间平台的服务器,例如与任务调 度中心服务器有通信链接的第三方服务器平台的服务器。所述的服务器可以包括 单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的 服务器结构。
图10为本申请实施例的电子设备9600的系统构成的示意框图。如图10所示, 该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中 央处理器9100。值得注意的是,该图10是示例性的;还可以使用其他类型的结构, 来补充或代替该结构,以实现电信功能或其他功能。
一实施例中,接口测试方法功能可以被集成到中央处理器9100中。其中,中 央处理器9100可以被配置为进行如下控制:
步骤S101:接收测试人员发送的接口类型指令和接口信息,并根据所述接口 类型指令配置和所述接口信息执行对应网络配置操作。
步骤S102:接收所述测试人员发送的至少一组测试案例数据并根据预设测试 案例生成规则生成对应的测试案例。
步骤S103:获取目标接口的返回报文和相应的数据库数据,并根据所述返回 报文和所述数据库数据的测试类型以及对应的断言生成规则生成测试断言,根据 所述测试案例执行所述测试断言并进行分布式比对,得到所述目标接口的测试结 果。
从上述描述可知,本申请实施例提供的电子设备,通过接收测试人员发送的 接口类型指令和接口信息执行对应网络配置操作,并接收所述测试人员发送的至 少一组测试案例数据并根据预设测试案例生成规则生成对应的测试案例,然后再 依据目标接口的返回报文和相应的数据库数据的测试类型以及对应的断言生成规 则生成测试断言,根据所述测试案例执行所述测试断言并进行分布式比对,得到 所述目标接口的测试结果,由此能够有效提升接口测试效率,降低接口测试的准 入门槛。
在另一个实施方式中,接口测试装置可以与中央处理器9100分开配置,例如 可以将接口测试装置配置为与中央处理器9100连接的芯片,通过中央处理器的控 制来实现接口测试方法功能。
如图10所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、 音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并 不是必须要包括图10中所示的所有部件;此外,电子设备9600还可以包括图10 中没有示出的部件,可以参考现有技术。
如图10所示,中央处理器9100有时也称为控制器或操作控件,可以包括微 处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子 设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性 存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败 有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该 存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或 触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行 图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存 储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息, 可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存 储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有 时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储 部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备 9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据, 例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储 器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行 电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通 信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输 出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110, 如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机) 9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131 提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。 音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处 理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机 上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本申请的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端 的接口测试方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介 质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行 主体为服务器或客户端的接口测试方法的全部步骤,例如,所述处理器执行所述 计算机程序时实现下述步骤:
步骤S101:接收测试人员发送的接口类型指令和接口信息,并根据所述接口 类型指令配置和所述接口信息执行对应网络配置操作。
步骤S102:接收所述测试人员发送的至少一组测试案例数据并根据预设测试 案例生成规则生成对应的测试案例。
步骤S103:获取目标接口的返回报文和相应的数据库数据,并根据所述返回 报文和所述数据库数据的测试类型以及对应的断言生成规则生成测试断言,根据 所述测试案例执行所述测试断言并进行分布式比对,得到所述目标接口的测试结 果。
从上述描述可知,本申请实施例提供的计算机可读存储介质,通过接收测试 人员发送的接口类型指令和接口信息执行对应网络配置操作,并接收所述测试人 员发送的至少一组测试案例数据并根据预设测试案例生成规则生成对应的测试案 例,然后再依据目标接口的返回报文和相应的数据库数据的测试类型以及对应的 断言生成规则生成测试断言,根据所述测试案例执行所述测试断言并进行分布式 比对,得到所述目标接口的测试结果,由此能够有效提升接口测试效率,降低接 口测试的准入门槛。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算 机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软 件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计 算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、 光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的 流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图 中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提 供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程 数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理 设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图 一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以 特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令 产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或 方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得 在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从 而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多 个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实 施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的 一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之 处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种接口测试方法,其特征在于,所述方法包括:
接收测试人员发送的接口类型指令和接口信息,并根据所述接口类型指令配置和所述接口信息执行对应网络配置操作;
接收所述测试人员发送的至少一组测试案例数据并根据预设测试案例生成规则生成对应的测试案例;
获取目标接口的返回报文和相应的数据库数据,并根据所述返回报文和所述数据库数据的测试类型以及对应的断言生成规则生成测试断言,根据所述测试案例执行所述测试断言并进行分布式比对,得到所述目标接口的测试结果。
2.根据权利要求1所述的接口测试方法,其特征在于,所述根据所述接口类型指令配置和所述接口信息执行对应网络配置操作,包括:
根据所述接口类型指令配置对应的网络通讯信息;
根据所述接口信息配置对应的请求参数和响应参数。
3.根据权利要求1所述的接口测试方法,其特征在于,所述根据所述返回报文和所述数据库数据的测试类型以及对应的断言生成规则生成测试断言,还包括:
若所述返回报文中字段的值为恒等不变或某个字段的值和请求报文中的某个字段的值相等或某个字段的值恒等于数据库数据中某个字段或某个字段在同类型的请求下恒等不变,则判定所述返回报文和所述数据库数据的测试类型为常量类型;
若所述返回报文中字段的值不为恒等不变或某个字段的值和请求报文中的某个字段的值不相等或某个字段的值不恒等于数据库数据中某个字段或某个字段在同类型的请求下不恒等不变,则判定所述返回报文和所述数据库数据的测试类型为变量类型。
4.根据权利要求3所述的接口测试方法,其特征在于,所述根据所述返回报文和所述数据库数据的测试类型以及对应的断言生成规则生成测试断言,包括:
在所述返回报文和所述数据库数据的测试类型在常量类型时,根据所述返回报文和所述数据库数据的实际数值生成唯一对应的常量测试断言;
在所述返回报文和所述数据库数据的测试类型在变量类型时,根据所述返回报文和所述数据库数据的实际数值和对应的数值计算方法生成变量测试断言。
5.一种接口测试装置,其特征在于,包括:
网络参数配置模块,用于接收测试人员发送的接口类型指令和接口信息,并根据所述接口类型指令配置和所述接口信息执行对应网络配置操作;
测试案例编辑模块,用于接收所述测试人员发送的至少一组测试案例数据并根据预设测试案例生成规则生成对应的测试案例;
断言测试模块,用于获取目标接口的返回报文和相应的数据库数据,并根据所述返回报文和所述数据库数据的测试类型以及对应的断言生成规则生成测试断言,根据所述测试案例执行所述测试断言并进行分布式比对,得到所述目标接口的测试结果。
6.根据权利要求5所述的接口测试装置,其特征在于,所述网络参数配置模块包括:
通讯信息配置单元,用于根据所述接口类型指令配置对应的网络通讯信息;
参数配置单元,用于根据所述接口信息配置对应的请求参数和响应参数。
7.根据权利要求5所述的接口测试装置,其特征在于,所述断言测试模块包括:
常量变量类型判断单元,用于若所述返回报文中字段的值为恒等不变或某个字段的值和请求报文中的某个字段的值相等或某个字段的值恒等于数据库数据中某个字段或某个字段在同类型的请求下恒等不变,则判定所述返回报文和所述数据库数据的测试类型为常量类型;
变量类型判断单元,用于若所述返回报文中字段的值不为恒等不变或某个字段的值和请求报文中的某个字段的值不相等或某个字段的值不恒等于数据库数据中某个字段或某个字段在同类型的请求下不恒等不变,则判定所述返回报文和所述数据库数据的测试类型为变量类型。
8.根据权利要求5所述的接口测试装置,其特征在于,所述断言测试模块包括:
常量测试断言生成单元,用于在所述返回报文和所述数据库数据的测试类型在常量类型时,根据所述返回报文和所述数据库数据的实际数值生成唯一对应的常量测试断言;
变量测试断言生成单元,用于在所述返回报文和所述数据库数据的测试类型在变量类型时,根据所述返回报文和所述数据库数据的实际数值和对应的数值计算方法生成变量测试断言。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至4任一项所述的接口测试方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至4任一项所述的接口测试方法的步骤。
CN202110741298.1A 2021-06-30 2021-06-30 接口测试方法及装置 Pending CN113434423A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110741298.1A CN113434423A (zh) 2021-06-30 2021-06-30 接口测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110741298.1A CN113434423A (zh) 2021-06-30 2021-06-30 接口测试方法及装置

Publications (1)

Publication Number Publication Date
CN113434423A true CN113434423A (zh) 2021-09-24

Family

ID=77758311

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110741298.1A Pending CN113434423A (zh) 2021-06-30 2021-06-30 接口测试方法及装置

Country Status (1)

Country Link
CN (1) CN113434423A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115629999A (zh) * 2022-12-22 2023-01-20 云账户技术(天津)有限公司 一种断言检测方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115629999A (zh) * 2022-12-22 2023-01-20 云账户技术(天津)有限公司 一种断言检测方法及装置

Similar Documents

Publication Publication Date Title
CN111031058A (zh) 基于WebSocket的分布式服务器集群交互方法及装置
CN111782470A (zh) 分布式容器日志数据处理方法及装置
CN112286904A (zh) 集群迁移方法、装置及存储介质
CN113157345A (zh) 前端工程自动启动方法及装置
CN111736772A (zh) 分布式文件系统的存储空间数据处理方法及装置
CN113434423A (zh) 接口测试方法及装置
CN113342330A (zh) 前端工程生成方法及装置
CN111767558A (zh) 数据访问监控方法、装置及系统
CN111078506A (zh) 业务数据跑批任务监控方法及装置
CN113515447B (zh) 系统自动化测试方法及装置
CN111930624B (zh) 测试链路报文数据处理方法及装置
CN115099930A (zh) 金融业务数据处理方法及装置
CN114840576A (zh) 数据标准匹配方法及装置
CN114285657A (zh) 防火墙安全策略变更验证方法及装置
CN112783633A (zh) 基于资源互斥调度模型的数据更新系统及方法
CN112766827A (zh) 资产盘点数据自动化处理方法及装置
CN113050985A (zh) 前端工程依赖自动注册方法及装置
CN111953847A (zh) 客户端消息风险提醒方法、装置及系统
CN112559158A (zh) 微服务定时任务调度方法及装置
CN113342501B (zh) 系统故障处理方法及装置
CN114610468A (zh) 跨应用程序的页面跳转方法及装置
CN113158259A (zh) 区块链完整性验证方法及装置
CN115373848A (zh) 服务器批量运维方法及装置
CN113609017A (zh) 接口测试案例生成方法及装置
CN114880229A (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