如何做接口测试

article/2025/9/2 10:15:01

文章目录

  • 前言
  • 一、什么是接口、接口测试
    • 1.接口
    • 2.接口测试
  • 二、进行接口测试的基本流程
    • 1.需求获取
    • 2.测试计划编写
    • 3.测试用例设计、评审
    • 4. 测试执行
    • 5.测试报告、评估
  • 三、接口测试思路
  • 四、接口测试工具


前言

一、什么是接口、接口测试

首先进行接口测试之前,先了解什么是接口

1.接口

接口:就是不同系统,或者不同模块之间进行访问、调用时,起到连接作用的部分,叫做接口

2.接口测试

接口测试:构造请求,验证接口是否符合预期结果

一般进行接口测试时,都是以接口文档为依据的,需要向对应的开发人员或者上级获取负责部分的接口文档

一个接口包括请求与响应两部分:request、response

接口文档基本要素:
① 接口名称
② 请求的URL
③ 请求方式(GET/POST等)
④ 请求参数(参数名、是否必选、参数类型、说明)
⑤ 返回示例
⑥ 返回参数说明(参数名、类型、说明)

为什么进行接口测试?
1、提高测试效率,降低测试成本

基于分层测试,在UI层尚未开发出来之前进行接口测试,可以更早发现问题
基于提前测试,越早发现bug,修复bug的成本就越低
基于分层测试,接口变更概率远小于UI变更概率,维护成本更低

2、提高产品开发效率
因为可以提前测试,留给UI层测试和功能系统测试阶段的bug就会减少,从而缩短从
研发到上线的项目周期

3、发现潜在的隐藏bug
接口测试可以更简单更全面的覆盖底层代码逻辑,发现隐藏的高质量bug
接口测试很容易验证后端系统对异常情况的处理能力,而UI层测试很难验证这些能力

需要考虑的测试范围:
1、业务功能(包括正常、异常场景是否实现)
2、业务规则(覆盖度是否全面,数据的进入流出是否覆盖完全)
3、参数验证(边界、业务规则是否达到要求)
4、异常场景(重复提交、并发提交、事务中断、多机环境、大数据量测试)
5、性能测试(响应时间、吞吐量、并发数、资源要求)
6、安全测试(权限验证、SQL注入等)

需要考虑的测试重点:
1、检查接口返回的数据是否与预期结果一致
2、检查接口的容错性,假如传递数据的类型错误时是否可以处理
3、接口参数的边界值,例如,传递的参数足够大或为负数时,接口是否可以正常处理
4、接口的性能,HTTP请求接口大多与后端执行的SQL语句性能、算法等
5、接口的安全性,特别是外部调用的接口尤为重要

二、进行接口测试的基本流程

1.需求获取

1,获取接口文档
2,通过接口文档获取接口信息
3,确认接口测试需求

2.测试计划编写

1,目标:确认需求、资源、方法、进度方案
2,内容:概述、测试资源、测试范围及重点、测试策略、风险评估、测试标准

3.测试用例设计、评审

1,梳理测试思路
2,分析接口文档
3,设计测试用例
4,评审测试用例

4. 测试执行

1,测试环境搭建
2,借助测试工具或者代码
3,执行接口测试用例
4,跟踪管理缺陷

5.测试报告、评估

1,分析测试结果,生成测试报告

三、接口测试思路

在这里插入图片描述

四、接口测试工具

接口测试的工具选择很多,下面我列举常用的几个:

postman,一般开发人员也在用,单接口的测试
jmeter,通常测试人员用来做压力、性能测试比较多
fiddler,一般进行抓包,但也可以构造请求进行接口测试
python,通过脚本方式,发送请求,验证返回结果


http://chatgpt.dhexx.cn/article/0hbIVac8.shtml

相关文章

接口测试需要怎么做?

接口测试需要怎么做? 什么是接口测试?接口测试到底测什么?如何进行接口测试?SSL-Pinning的问题及解决方案接口测试自动化回归测试接口自动化回归测试方案接口测试的更多可能参考文献 关注【郑大钱呀】[公][众][号],回复…

接口测试到底怎么做?

01 通用的项目架构 02 什么是接口 接口:服务端程序对外提供的一种统一的访问方式,通常采用HTTP协议,通过不同的url,不同的请求类型(GET、POST),不同的参数,来执行不同的业务逻辑。 …

一篇文章,教你彻底掌握接口测试!

一、什么是接口测试? 所谓接口,是指同一个系统中模块与模块间的数据传递接口、前后端交互、跨系统跨平台跨数据库的对接。而接口测试,则是通过接口的不同情况下的输入,去对比输出,看看是否满足接口规范所规定的功能、…

ES7新特性async/await详解

一、async/await的用法 async用于修饰一个函数使函数返回一个Promise 对象。 async function testAsync() {return "hello async"; }const result testAsync(); console.log(result);await必须在用async修饰的函数中使用,await用于修饰一个语句&#x…

Elasticsearch 7新特性

Elasticsearch是一款强悍的分布式搜索和分析引擎,以下简称为ES,通过本文我简单介绍下ES7部分新特性,内容包括: 聚合查询的优化ES7中索引type被移除索引创建默认1个分片优化查询速度hits.total返回对象_flush和_force_merge不再强制…

ES7的新特性

1.新增了includes的数组查找方法 使用场景:确认数组中有我们需要查找的内容 在ES7之前,我们接触到的数组方法可以通过filter或者indexOf 如果使用filter 可以直接筛选之后输出,如果是indexOf则根据返回值来判断是否在当前数组中。 如果返回…

【Spring Cloud Alibaba】(二)微服务调用组件Feign原理+实战

系列目录 【Spring Cloud Alibaba】(一)微服务介绍 及 Nacos注册中心实战 本文目录 系列目录前言什么是RPC?Feign和OpenFeign都是什么?HTTP调用 vs Feign(RPC)调用单独使用Feign实战Feign核心源码解读Feign整体设计架构Spring Cl…

聊聊 Feign 的实现原理

What is Feign Feign 是⼀个 HTTP 请求的轻量级客户端框架。通过 接口 注解的方式发起 HTTP 请求调用,面向接口编程,而不是像 Java 中通过封装 HTTP 请求报文的方式直接调用。服务消费方拿到服务提供方的接⼝,然后像调⽤本地接⼝⽅法⼀样去…

简单谈谈Feign

简单谈谈Feign 文章目录 简单谈谈Feign前言Feign属于RPC嘛? 原理简单图解原理简述Feign.Build动态代理工厂InvocationHandlerFactory动态代理类FeignInvocationHandler方法处理器MethodHandler 总结 本文只是简单粗略的分析一下feign的源码与过程原理 前言 Feign是…

Feign 原理 (图解)

疯狂创客圈 经典图书 : 《Netty Zookeeper Redis 高并发实战》 面试必备 面试必备 面试必备 【博客园总入口 】 疯狂创客圈 经典图书 : 《SpringCloud、Nginx高并发核心编程》 大厂必备 大厂必备 大厂必备 【博客园总入口 】 入大厂涨工资 必备的 …

Feign详解与实例

基本介绍 Feign是一种负载均衡的HTTP客户端, 使用Feign调用API就像调用本地方法一样,从避免了调用目标微服务时,需要不断的解析/封装json 数据的繁琐。Feign集成了Ribbon。Ribboneureka是面向微服务编程,而Feign是面向接口编程。 Fegin是一个…

Feign使用和原理的总结

官方参考 https://docs.spring.io/spring-cloud-openfeign/docs/current/reference/html/ 使用 引入依赖 <properties><java.version>1.8</java.version><spring-cloud.version>2021.0.1</spring-cloud.version></properties><depen…

Feign的介绍

Feign是springcloud里面的一个功能组件&#xff0c;那么它是实现一个什么功能呢&#xff1f; 首先我们可以先从字面意思上去理解一下它&#xff0c;Feign&#xff0c;英文翻译过来就是伪装的意思&#xff0c;实际上它的功能也是和伪装相关的&#xff0c;在我们之前在客户端配置…

FeignClient原理解读

FeignClient原理解读 简介源码解读feign负载ribbon源码解读eurake的ribbon原理是&#xff1a;调度原理&#xff1a; 笔记参考文献 简介 这一章节主要介绍feignClient的地址如何来&#xff0c;如何从feign Server注册中心寻址和调用。 源码解读 在解读源码之前&#xff0c;建…

Spring Cloud-Feign设计原理

什么是Feign&#xff1f; Feign 的英文表意为“假装&#xff0c;伪装&#xff0c;变形”&#xff0c; 是一个http请求调用的轻量级框架&#xff0c;可以以Java接口注解的方式调用Http请求&#xff0c;而不用像Java中通过封装HTTP请求报文的方式直接调用。Feign通过处理注解&am…

再学一下Feign的原理

简介 Feign是Spring Cloud Netflix组件中的一个轻量级Restful的HTTP服务客户端&#xff0c;它简化了服务间调用的方式。 Feign是一个声明式的web service客户端.它的出现使开发web service客户端变得更简单.使用Feign只需要创建一个接口加上对应的注解, 比如FeignClient注解。…

Feign的底层原理

Feign的底层原理 1 EnableFeignClients2 根据接口上的注解创建RequestTemplate3 发送请求 1 EnableFeignClients 这个注解标注在springboot的启动类上,作用是开启feign接口扫描 FeignClientsRegistrar.registerFeignClients()扫描被FeignClient标识的接口生成代理类 public vo…

深入理解Feign之源码解析

转载请标明出处&#xff1a; https://blog.csdn.net/forezp/article/details/73480304 本文出自方志朋的博客 出自方志朋的博客 个人博客纯净版&#xff1a;https://www.fangzhipeng.com/springcloud/2017/08/11/sc-feign-raw.html 什么是Feign Feign是受到Retrofit&#xff…

SpringCloud 中Feign原理(图解)

1 SpringCloud 中Feign原理 1.1 Feign简介 Feign是Netflix公司开源的轻量级rest客户端&#xff0c;使用Feign可以非常方便的实现Http 客户端。Spring Cloud引入Feign并且集成了Ribbon实现客户端负载均衡调用。 1.2 Feign远程调用的基本流程 Feign远程调用&#xff0c;核心就是…

Feign(简介和使用)

1. Feign介绍 通过RestTemplate调用其它服务的API时&#xff0c;所需要的参数须在请求的URL中进行拼接&#xff0c;如果参数少的话或许我们还可以忍受&#xff0c;一旦有多个参数的话&#xff0c;这时拼接请求字符串就会效率低下 Feign是一个声明式的Web Service客户端&#…