接口测试如何测?最全的接口测试总结,资深测试老鸟整理...

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

1、接口测试的流程

1)找后端拿接口文档
2)写测试计划
3)分析接口(确认接口之间的业务关系)
4)写用例,评审用例
5)执行用例去测试(自动化:根据用例编写脚本)
6)结果分析
7)bug提交
8)修复后,回归测试

2、一般的接口文档

请求参数、返回参数、URL、请求方式

3、接口用例包含

用例标题,优先级,所属模块,资源路径,请求参数,请求方式,测试数据,预期结果(应该有结果),实际结果

4、接口测试的关注、测试点

接口测试汇总:
参数测试、返回值验证、业务数据、接口之间、DB验证

1)参数测试
针对输入参数和输出参数的测试,包括对类型、长度、校验判断等
异常参数:参数不合法输入,考虑接口内部逻辑错误的异常提示,这些体现在完备的responsecode错误代码中。

2)返回值验证
正确返回:返回的code是否正确,返回的数据是否和DB一致
异常返回:是否定义全面,存在遗漏

3)业务数据
单个参数要符合业务数据属性或定义
多个参数值之间要具有业务含义,赋值需要考虑业务上一一对应的业务关系

4)接口之间
多个接口之间的数据是否存在关联

5)DB验证
接口逻辑是否落地到DB
DB存储数据是否准确

5、有依赖关联的接口

比如B接口的请求参数是A接口的响应数据
我们需要请求A接口,拿到数据后,把需要的数据提取出来,放入B接口进行请求
具体实现的话使用我们常用的那些工具都可以,像postman,Jmeter,python脚本都行

1)postman:请求A接口,在Tests脚本里面写js代码,将数据解析后提取想要的数据,存为全局/环境变量,在B接口请求的时候关联使用({{id}})

2)Jmeter:请求A接口,给A接口添加后处理器–正则提取器,通过正则的方式,将数据提取出来变成用户变量,在B接口中关联使用(${id})

3)python: 使用requests请求A接口,拿到响应后解析成json,然后取出想要的数据,进行B接口的请求,将取出的参数塞入即可

6、Postman工具

postman是一款强大的http调试工具,一般使用它来做接口测试

常用功能:
1)创建测试和生产环境,添加相对的环境变量,比如baseurl
2)创建接口集,里面添加项目接口
3)添加接口集,可以发起get/post/delete/put等请求
4)GET请求查询参数放入params中,post请求参数放入bady中,可以是普通键值对,json/html/xml/文件,请求头都是放入headers里面

5)pre-request script预处理脚本,在发起网络请求之前会调用的js代码,可以再里面换取一些动态的参数,比如时间戳,随机数等

6)tests脚本,再发起网络请求成功拿到响应之后调用,可以在里面添加断言,判断响应数据是否正确

7)mock测试,模拟服务器返回自己想要的测试数据

8)参数化:环境变量,全局变量,csv参数化

1.写一个csv/txt文档,把测试数据放入
2.建接口集,里面写接口
3.接口传递的参数不能写死,使用关联的方式({{key}}),key应该是csv文件表头名字
4.双击接口集,点击右上角的run,打开Runner
5.配置参数:
Iterations(迭代次数)
Delay: 延迟对应的事件发起请求
data:选择csv文件
Data file type: 选择文件的类型(text/csv)
6.点击运行

7、抓包工具

抓包:
抓包是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也可以用来检查网络安全。

常见的抓包工具:
charlers,fiddler,wires hark等等

作用:
1)定位前后端问题:
app:通过抓包看网络请求
web:浏览器按F12,点到network,在下面找到对应的网络请求,看url还有参数,如果url和参数不对,就是前端的问题,如果没有问题,看响应数据,如果响应数据有问题,那么就是后端的问题,如果数据没有问题那就是前端的问题。

2)模拟404
3)模拟弱网
4)mock测试

8、抓包遇到乱码

1)没有信任证书导致的,因为HTTPS是加密传输的

2)数据本身还做过加密,除非拿到密钥,否则没办法解密

9、Charles信任证书

把抓包工具的证书导出,在对应的浏览器/手机中信任

charles具体操作:
安装:help --> ssl proxying–> install charles root certificate
导出:help–>ssl proxying–>save Charles root certificate,选择.cer格式的证书
信任:chrome浏览器:设置 → 管理证书(安全) → 导入

10、移动端抓包

1)PC和手机在同一个网络下
2)手机需要设置代理,IP和端口号
3)信任证书
4)开启app进行抓包

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

勇敢地面对挑战,永不放弃追求。每一次努力都离成功更近一步,坚持奋斗,你将收获自己的辉煌人生。相信自己,展翅高飞!

不要被过去的失败束缚,将每一次挫折都视为成长的机会。用汗水浇灌梦想,用坚持铺就成功之路。奋斗不息,胜利必将属于你!

当你觉得无力前行时,请记住,勇气是内心最强大的武器,坚持是战胜困难的关键。奋斗不止步,迈向辉煌,你将超越自己,创造不可思议的奇迹!


http://www.niftyadmin.cn/n/5091317.html

相关文章

KOSMOS系列

Overview 总览摘要1 引言2 KOSMOS-2.52.1 Model Architecture2.1 Image and Text Representations2.3 Pre-training Data2.4 Data Processing2.5 Filtering and Quality Control 3 Experiments3.1 Evaluation 总览 题目: KOSMOS-2.5: A Multimodal Literate Model 机构&#x…

高能整理,性能测试-寻找TPS性能拐点与脚本Error报错排查(超细)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 寻找tps性能拐点 …

math标准库的一些函数介绍

目录 math.ceil() math.ceil() math.ceil(x) 是一个数学函数,它用于返回大于或等于输入参数 x 的最小整数,也就是向上取整。 如果 x 是一个整数,那么 math.ceil(x) 会返回该整数本身。如果 x 是一个小数,那么 math.ceil(x) 会返…

博图数值按照特定格式(“T000000”)转换成字符串

一、前言 1.string to dint物流输送线往往需要通过扫码器读取托盘条码,一维码或者二维码​。 读取的数据需要解析才能正常使用。两种方式读取的数据直接是字符串,但当设备与上位机通信时, 字符串数据量太大,故可以通过算法转换成…

【下载共享文件】Java基于SMB协议 + JCIFS依赖下载Windows共享文件(亲测可用)

这篇文章,主要介绍如何使用JCIFS依赖库,基于SMB协议下载Windows共享文件。 目录 一、搭建Windows共享文件服务 1.1、创建共享文件目录 1.2、添加文件

数据结构上机实验——栈和队列的实现、栈和队列的应用、进制转换、约瑟夫环问题

文章目录 栈和队列上机实验1.要求2.栈的实现(以顺序栈为例)3.队列的实现(以顺序队列为例)4.利用栈实现进制转换5.利用队列解决约瑟夫环问题6.全部源码Stack.hQueue.htest.cpp 栈和队列上机实验 1.要求 1.利用栈的基本操作实现将任…

堆专题4 堆排序

题目: 样例: 输入 5 2 8 5 1 3 输出 1 2 3 5 8 思路: 由题意,堆的排序,就是结合向下或向上调整的方式,调整堆顺序,全部的各个部分都变为 顶堆形式。不同的是,由于我们是顶堆原理&a…

阿里巴巴店铺所有商品数据接口,阿里巴巴整店商品数据接口,阿里巴巴店铺商品数据接口,阿里巴巴API接口

阿里巴巴店铺所有商品数据接口是一种允许开发者在其应用程序中调用阿里巴巴店铺所有商品数据的API接口。利用这一接口,开发者可以获取阿里巴巴店铺的所有商品信息,包括产品ID、SKU信息、价格、库存、图片等。这些数据可以用于构建各种业务场景&#xff0…