news 2026/5/8 11:54:49

接口测试用例怎么写?一文1600字教你写一个优秀的接口测试的测试用例

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
接口测试用例怎么写?一文1600字教你写一个优秀的接口测试的测试用例

一、用例设计1

1、接口测试概念

接口测试:测试系统间接口的一种测试,测试的对象主要是接口,主要是测试外部系统与所测系统之间以及内部系统之间的交互点

2、接口测试方法

a、可以通过开发脚本代码进行测试
b、可以通过开源免费的接口调用调试工具测试,如:Postman等。
c、可以通过App手动测试,结合抓包工具分析,如:Fillder/Charles等

3、接口测试范围

接口范围包括:
一、被测项目中同层之间的接口(如DAO层、Service层),一个接口调用了其他的接口。
二、外部系统与系统之间的交互点(如一个App调用了第三方支付宝的API)
三、各个子系统之间的交互点(如App客户端调用了服务端的Http接口)

被测接口范围:
通常接口会很多,接口测试范围的筛选,参考测试人力资源、项目特点、接口重要性与优先级来进行。其中第一种属内部接口,构造测试稍复杂需开发配合实施,通常优先覆盖第二、三种接口
接口测试的重点测试范围:
优先测试覆盖核心业务,复杂业务的接口


4、如何设计接口测试用例

接口测试出发点是被测接口逻辑存在错误,参考这个为出发点,更容易发现问题
设计接口测试用例,我们可简单的考虑两个基本要素,即:入参、出参,正确/错误的入参,逻辑判断后,接口是否做出正确的处理,返回正确的出参

接口测试用例有3类(逻辑测试,异常测试,路径测试):
1)逻辑测试:主要是根据开发提供的接口文档来设计测试用例,接口文档包含的要素(前提条件,输入参数,参数类型,业务逻辑,返回输出描述等),此类主要测试在正常输入的情况下,是否能得出正确的输出结果。主要使用的用例设计方法是等价类划分,边界值等

2)异常测试:接口逻辑的测试中主要测试接口正常逻辑,即对外提供的接口服务是基本可用的,但仅逻辑测试不能保证数据的安全及程序接口在异常情况下的逻辑处理的正确性
(a) 空值,null;
(b) 参数属性(如:未赋值的参数)
(c) 异常业务参数(如:构造不满足业务异常业务参数)
(d) 参数个数、参数类型错误(如:接口文档中定义必填参数2个int,输入参数仅1个,类型非int)
3)路径测试:当被测接口的实现方法中,判断逻辑复杂分支多,且判断中又调用了其他的接口,此时必须要进行路径覆盖测试

5、接口测试关注点

6、接口自动化测试工具
1)Java(HttpClient) + Junit/TestNG;
2)Jmeter
3)SoapUI
4)Python requests/urllib 库;
......

二、用例设计2
1、优先级--针对所有接口

1.暴露在外面的接口,因为通常该接口会给第三方调用
2.供系统内部调用的核心功能接口
3.供系统内部调用非核心功能接口

2、优先级--针对单个接口

1.正向用例优先测试,逆向用例次之(通常情况,非绝对)
2.是否满足前提条件 > 是否携带默认参值参数 > 参数是否必填 > 参数之间是否存在关联 > 参数数据类型限制 > 参数数据类型自身的数据范围值限制

3、设计分析

通常,设计接口测试用例需要考虑以下几个方面:

1.是否满足前提条件
有些接口需要满足前置条件,才可成功获取数据。常见的,需要登陆Token;
逆向用例:针对是否满足前置条件(假设为n个条件),设计0~n条用例

2.是否携带默认值参数
正向用例:带默认值的参数都不填写、不传参,必填参数都填写正确且存在的“常规”值,其它不填写,设计1条用例

3.业务规则、功能需求
这里根据实际情况,结合接口参数说明,可能需要设计n条正向用例和逆向用例

4.参数是否必填
逆向用例:针对每个必填参数,都设计1条参数值为空的逆向用例

5.参数之间是否存在关联
有些参数彼此之间存在相互制约的关系;
逆向用例:根据实际情况,可能需要设计0~n条用例

6.参数数据类型限制
逆向用例:针对每个参数都设计1条参数值类型不符的逆向用例

7.参数数据类型自身的数据范围值限制
正向用例:针对所有参数,设计1条每个参数的参数值在数据范围内为最大值的正向用例
逆向用例:针对每个参数(假设n个),设计n条每个参数的参数值都超出数据范围最大值的逆向用例;针对每个参数(假设n个),设计n条每个参数的参数值都小于数据范围最小值的逆向用例

最后:下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

​​​软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/7 16:15:05

LoadRunner技巧之思考时间设置

用户访问某个网站或软件,一般不会不停地做个各种操作,例如一次查询,用户需要时间查看查询的结果是否是自己想要的。例如一次订单提交,用户需要时间核对自己填写的信息是否正确等。 也就是说用户在做某些操作时,是会有…

作者头像 李华
网站建设 2026/5/8 11:54:48

AI智能体是否胜任任务?判断何时委派工作的3种方法

你可能已经听说过这样的观点:AI智能体充当人类同事的"协作者",实际上成为了劳动力的延伸。挑战在于解码它们最适合执行什么工作——这并不是一个简单的问题。 有些任务适合自动化,而另一些则更适合手动处理。但许多任务处于灰色地带…

作者头像 李华
网站建设 2026/5/8 11:54:25

LoadRunner性能测试基本步骤

前言 本文旨在指导初学者使用LoadRunner进行基础的性能测试。 我们在接到一个性能测试任务的时候,需要从以下几点考虑:我们的测试对象是什么,测试要求是什么,测试环境怎么部署的,业务规模如何,哪些业务点是…

作者头像 李华
网站建设 2026/5/1 4:02:07

字符串相乘

求解代码 public String multiply(String num1, String num2) {if ("0".equals(num1) || "0".equals(num2)) {return "0";}int len1 num1.length();int len2 num2.length();int[] res new int[len1 len2];// 从后往前遍历for (int i len1 …

作者头像 李华
网站建设 2026/5/2 19:56:45

SSM毕设选题推荐:基于JAVA的机床厂车辆管理系统的设计与实现【附源码、mysql、文档、调试+代码讲解+全bao等】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/5/2 4:25:58

智影R200采集技巧与质量控制秘籍

【智影R200使用教程一:设备组装与APP连接】【智影R200使用教程二:开始与结束采集】【智影R200使用教程三:背负套件安装】解放双手神器!【智影R200使用教程四:延长杆安装】扫描无死角!【智影R200使用教程五&…

作者头像 李华