集成测试——测试接口

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

一、什么是接口

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

二、接口的组成

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. xmind下载安装破解版激活教程思维导图软件获取

    1.xmind下载解压压缩包就可以看到里面的文件,然后双击安装文件就可以开始安装了 2.安装Xmind程序双击之后会出现下面的流程,照着截图操作,不要乱点哈 切记切记!!这一步直接点击next,不要修 ...

  2. PHP实现CURL发送请求

    public function curl($url, $params = false, $ispost = 0) { $httpInfo = array(); //初始化 $ch = curl_ini ...

  3. VMware 虚拟机打开电源失败

    vmware上虚拟机关机导出ovf失败后,再次启动虚拟机,突然无法打开虚拟机,并伴随如下报错: 模块"disk"打开电源失败,无法打开磁盘/***/.../***.vmdk 解决方 ...

  4. 【Java集合框架002】原理层面:HashMap全解析

    一.前言 二.HashMap 2.1 HashMap数据结构 + HashMap线程不安全 + 哈希冲突 2.1.1 HashMap数据结构 学习的时候,先整体后细节,HashMap整体结构是 底层数 ...

  5. C++初阶(vector容器+模拟实现)

    迭代器 四种迭代器 容器类名::iterator 迭代器名;//正向迭代器 容器类名::const_iterator 迭代器名;//常量正向迭代器,const修饰,只能用于读取容器内的元素,不能改变其 ...

  6. MongoDB - 事务支持

    事务简介 事务是数据库中处理的逻辑单元,每个事务中包括一个或多个数据库操作,既可以是读操作,也可以是写操作. ACID 是一个"真正"事务所需要具备的一组属性集合,指的是原子性(A ...

  7. Servlet面试题合集

    servlet的生命周期 在创建servlet对象时,通过调用.init()方法进行初始化 通过service()方法来接收客户端的请求.根据请求方式的不同转发给对应的doGet()或doPost() ...

  8. 比 JSON.stringify 快两倍的fast-json-stringify

    前言 相信大家对JSON.stringify并不陌生,通常在很多场景下都会用到这个API,最常见的就是HTTP请求中的数据传输, 因为HTTP 协议是一个文本协议,传输的格式都是字符串,但我们在代码中 ...

  9. Python Excel 处理模块 : OpenPyXL

    OpenPyXL模块使用方法 以下是介绍OpenPyXL的基本使用,不涉及样式和合并单元格的跨行操作 一般来说,对于大名鼎鼎的xlrd,xlwt和xlutils三个模块,Excel操作有3个基本状态 ...

  10. 跨机房ES同步实战

    作者:谢泽华 背景 众所周知单个机房在出现不可抗拒的问题(如断电.断网等因素)时,会导致无法正常提供服务,会对业务造成潜在的损失.所以在协同办公领域,一种可以基于同城或异地多活机制的高可用设计,在保障 ...