集成测试——测试接口

接口测试也是在测试执行阶段做

一、什么是接口

软件的不同模块之间互相发送数据的一个通道

二、接口的组成

1、请求URL——接口地址
2、请求类型

  • get

get请求的参数是暴露在URL中的

get的参数的数量是有限的

  • post

post的参数的隐蔽性更高

post对参数没有限制
3、状态码

  • 200:接口运行中正常
  • 400:接口参数格式不正确,例如在post型接口中,缺了个花括号
  • 404:URL错误
  • 405:请求类型错误
  • 500:服务器错误,是bug

4、请求头

5、请求数据

get 类型的请求数据在URL中

post的请求数据是独立的

6、响应数据

三、抓包工具

1、浏览器自带的——浏览器开发者工具

①elements:审查元素,看到的是前端的代码,还可以模拟不同的终端

②console:控制台,可以在这运行js的代码,如果前端代码报错,会在这里显示

③network:抓包工具

④applocation:浏览器缓存空间

2、fiddler

3、Charles

4、wireshark(主要是抓TCP/UDP)

注:面试题:为什么浏览器自带了抓包工具,为什么还要用fiddler?因为浏览器自带的只能抓取当前网站的,fiddler还可以抓取APP的

四、接口测试工具

1、postman

无脑式安装,可选择指定盘符

不注册,点下边灰色的文字跳过注册直接使用

2、jmeter

安装:①先要有java环境②配置环境变量:

新建变量名:JMETER_HOME,值为jmeter的安装目录;再在Path添加:%JMETER_HOME%\bin

③验证环境:在cmd中分别输入jmeter -v和jmeter,不出错即可

五、postman基本操作

1、postman环境配置

postman分为局部环境和全局环境

接口的关联:在局部环境中,有上下联系的两个接口可以设置变量关联,实现操作的简便化,可以在编辑环境里直接创建变量,或者通过js代码实现,使用时:{{变量名}}

也可以通过脚本来实现变量的关联

  • Pre-request Script:是用来控制请求的数据的
  • Tests:是用来操作响应的数据的

例如:在赞赞羊项目中,需要登录才能进行的功能每次在进行接口测试时都需要登录时产生的token值,可以在登录接口中的Tests中写js脚本创建环境变量token,在使用的地方{{token}}即可实现关联

var jsonData = pm.response.json();//获取接口的返回值并存到jsonData中
var token = jsonData.data.token;//拿到token值
pm.environment.set("token",token);//将拿到的token值保存到局部变量的token中

上传图片接口和查看图片接口有联系,查看图片接口需要调用上传图片接口返回的图片名,就可以在上传图片接口的Tests处写脚本,实现查看图片时自动获取上传图片的图片名

var jsonData = pm.response.json(); //获取接口的返回值并保存到jsonData中
var imgname = jsonData.data; //将获取到的图片名存到imgname中
pm.environment.set("imgname", imgname);//将imgname值放到环境变量imgname中

写好代码之后只需要在需要用的地方用{{变量名}}代替即可

接口介绍以及postman的基本使用的更多相关文章

  1. 你应该学会的接口调试神器——Postman高级用法

    postman这个神器相信大家都用过,程序员作为非专业的测试人员,非常需要这么一款简单轻量级的restful测试工具,但是不知道你是否知道,postman的强大之处不只是测试一下接口,还有其他非常赞的 ...

  2. Hive 接口介绍(Web UI/JDBC)

    Hive 接口介绍(Web UI/JDBC) 实验简介 本次实验学习 Hive 的两种接口:Web UI 以及 JDBC. 一.实验环境说明 1. 环境登录 无需密码自动登录,系统用户名shiyanl ...

  3. SSH动态查询封装接口介绍

    SSH动态查询封装接口介绍 1.查询记录总条数 public int count(Class c,Object[][] eq,Object[][] like,String[] group,String ...

  4. 【百度地图API】如何在地图上添加标注?——另有:坐标拾取工具+打车费用接口介绍

    原文:[百度地图API]如何在地图上添加标注?--另有:坐标拾取工具+打车费用接口介绍 摘要: 在这篇文章中,你将学会,如何利用百度地图API进行标注.如何使用API新增的打车费用接口. ------ ...

  5. 如何删除要素类 IFeatureWorkspace 接口介绍(1)

    如何删除要素类 要想删除一个要素类,那么必须先得到这个,在得到这个要素类的时候,我们要学习一个新的接口IFeatureWorkspace. IFeatureWorkspace  接口介绍 这个接口主要 ...

  6. Redis --> Redis的接口介绍及使用

    Redis的接口介绍及使用 Redis是一个远程内存数据库,它不仅性能强劲,而且还具有复制特性以及为解决问题而生的独一无二的数据模型.Redis提供了5种不同类型的数据结构,各式各样的问题都可以很自然 ...

  7. iic接口介绍

    最近遇到一个BUG,跟IIC通信有关,所以借这个机会总结一下IIC总线协议 1.引脚接口介绍 1.A0,A1,A2为24LC64的片选信号,IIC总线最多可以挂载8个IIC接口器件,通过对A0,A1, ...

  8. Spring之InstantiationAwareBeanPostProcessor接口介绍

      InstantiationAwareBeanPostProcessor接口是BeanPostProcessor的子接口,通过接口字面意思翻译该接口的作用是感知Bean实例话的处理器.实际上该接口的 ...

  9. I2S接口介绍

    I2S接口介绍一.I2S协议介绍 I2S协议作为音频数据传输协议,由Philips制定.该协议由三条数据线组成:1.SCLK:串行时钟,频率= 2 * 采样频率 * 采样位数.2.WS:字段(声道)选 ...

  10. MII接口介绍(转)

    1.简介 MII (Media Independent Interface(介质无关接口)或称为媒体独立接口,它是IEEE-802.3定义的以太网行业标准.它包括一个数据接口和一个MAC和PHY之间的 ...

随机推荐

  1. 大数据下一代变革之必研究数据湖技术Hudi原理实战双管齐下-上

    @ 目录 概述 定义 发展历史 特性 使用场景 编译安装 编译环境 编译Hudi 关键概念 TimeLine(时间轴) File Layouts(文件布局) 索引 表类型 查询类型 概述 定义 Apa ...

  2. HTTPS详解二

    前言 在上篇文章中,我已经为大家介绍了 HTTPS 的详细原理和通信流程,但总感觉少了点什么,应该是少了对安全层的针对性介绍,那么这篇文章就算是对HTTPS 详解一的补充吧.还记得这张图吧. HTTP ...

  3. Objects.requireNonNull的意义是什么

    Objects.requireNonNull方法的源码是这样: public static <T> T requireNonNull(T obj) { if (obj == null) t ...

  4. 【Java SE】Day04 IDEA、方法*

    一.IDEA 1.快捷键 Ctrl+Alt+L/Ctrl+Alt+Shift+4:格式化代码 Alt+Insert:自动生成代码 修改快捷键:File->Settings->keymap- ...

  5. 【每日一题】【使用list&使用辅助栈实现】2022年2月11日-NC90 包含min函数的栈

    描述定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的 min 函数,输入操作时保证 pop.top 和 min 函数操作时,栈中一定有元素. 此栈包含的方法有:push(value): ...

  6. 【JVM调优】Day02:CMS的三色标记算法、分区的G1回收器、短时停顿的ZGC回收器

    一.CMS及其三色标记算法 1.核心 标记整个图谱的过程分为多步 多个线程相互工作,才能标记完 标记的算法,JVM虚拟机.go语言使用的都是三色标记算法 2.含义 从那个地方开始,用三种颜色替代 一开 ...

  7. 全都会!预测蛋白质标注!创建讲义!解释数学公式!最懂科学的智能NLP模型Galactica尝鲜 ⛵

    作者:韩信子@ShowMeAI 机器学习实战系列:https://www.showmeai.tech/tutorials/41 深度学习实战系列:https://www.showmeai.tech/t ...

  8. kestrel网络编程--开发Fiddler

    1 文章目的 本文讲解基于kestrel开发类似Fiddler应用的过程,让读者了解kestrel网络编程里面的kestrel中间件和http应用中间件.由于最终目的不是输出完整功能的产品,所以这里只 ...

  9. error: expected ‘)’ before ‘PRIx64’

    打印uint64时编译报错 printf("prefix:0x%"PRIx64"\n",ipv6Prefix); 解决办法:添加头文件 #include < ...

  10. 如何使用ChatGPT来自动化Python任务

    1.概述 最近,比较火热的ChatGPT很受欢迎.今天,笔者为大家来介绍一下ChatGPT能做哪些事情. 2.内容 ChatGPT是一款由OpenAI开发的专门从事对话的AI聊天机器人.它的目标是让A ...