接口测试可以通过工具(postman/jmeter)、自动化测试(python+requests+开源框架)两种方式进行测试

接口测试可以在单元测试之后开始进行,不用关注前端页面有没有形成,也可以渗透到测试的每一个阶段(单元、继承、系统、验收)辅助测试

1.postman安装

下载地址:https://www.postman.com/downloads/

下载完成直接双击安装即可

2.postman相关操作

  • 设置请求url、请求方式、请求参数
  • 发送http/https请求
  • 提取响应结果,设置环境变量
  • 参数化
  • 响应结果断言
  • 接口关联
  • postman报告环境部署,生成报告

3.具体操作

3.1 设置请求url、请求方式、请求参数

get方法参数放params,自动拼接在url后面,post方法参数放body,根据参数格式进行选择,表单格式x-www-form-urlencoded,json格式在raw选择json

3.2 发送http/https请求

  1. 表单格式的请求

  2. json格式的请求

3.3 提取响应结果,设置环境变量

全局变量:是全局唯一的,只能定义一次
环境变量:一个变量只能属于一个环境;一个环境可以包含多个环境变量;

常见环境分类:开发环境、测试环境、生产环境

设置全局变量,例如提取登录后的token值,需要从响应中提取并设置成全局变量

pm.globals.set("variable_key", "variable_value");



设置环境变量:

pm.environment.set("variable_key", "variable_value");

3.4 参数化

读取外部csv/excel文件实现参数化

应用场景:针对某个接口,有大量的测试数据需要验证,可以把测试数据保存到数据文件中,通过参数化的方式进行实现

1.csv文件:

2.在postman中参数中填写csv文件中对应的参数变量

3.选择运行集合,选择需要进行参数化的接口:

4.选择文件点击运行



5.进行参数化后,运行了4次

3.5 响应结果断言

响应断言:

postman里面的断言是使用javascript代码编写的,是获取响应之后的操作,放在Tests里面

常用的断言方式:1.断言请求状态码是不是200



2.判断响应数据中是否包含某个指定的字符串



3.校验响应的json数据

新版的postman,将原来的pre-request-script前置操作和Tests后置操作合并为Script,左侧做了区分

3.6 接口关联

接口关联(B接口请求的参数是A接口请求返回的数据)

第一步:先发送A接口,在Tests中编写js脚本获取响应数据,设置环境变量var jsondata=pm.response.json();

第二步:在B请求的参数中使用{{变量名}}使用提取出来的变量

3.7 postman报告环境部署,生成报告

环境部署:

1.nodejs

2.Newman

3.安装报告模板

nodejs

地址:https://nodejs.org/en/download/,直接【下一步】安装,cmd输入node -v验证

Newman

cmd进入nodejs的安装路径:执行命令npm install -g newman,输入newman -v 验证

安装报告模板

cmd进入nodejs的安装路径:npm -install -g newman-reporter-html

报告生成:

1.导出测试集合postman_collection.json文件

2.运行命令: newman run 上面的文件postman_collection.json -r html,在执行命令的当前目录生成文件夹newman,存放报告

Postman接口测试应用的更多相关文章

  1. Postman接口测试初探

    Postman接口测试 有两种安装方式: 1)Chrome插件(https://www.getpostman.com/).安装完成后,它会在chrome的应用中,如下图 2)通过下载Native ap ...

  2. postman接口测试工具3.0版本的坑

    今天用postman接口测试工具3.0版本被坑,找了半天,原来postman这个新版本有个坑啊 下面的get参数,第一行不管你填不填,都是无效的,可能是postman的一个bug吧

  3. #postman接口测试系列:基本操作总结

    最近项目需要接口测试,所以选择了不少工具对比,最终决定使用postman进行接口测试,这个工具目前使用比较简单,但是有点还是比较多的,如下: 方便切换不同的环境进行接口测试工作,而不用修改变量或代码 ...

  4. postman(九):postman接口测试脚本集成到jenkins

    本篇的目的是实现使用jenkins远程执行postman接口测试脚本 准备工作:一台linux服务器(可以用虚拟机搭建一个),linux服务器上安装好node.js.newman,部署好jenkins ...

  5. Postman 接口测试神器

    Postman 接口测试神器 Postman 是一个接口测试和 http 请求的神器,非常好用. 官方 github 地址: https://github.com/postmanlabs Postma ...

  6. [原创]PostMan接口测试神器

    [原创]PostMan接口测试神器 1 PostMan是什么?  Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件. 2 Postman工具下载及安装 官方网站: htt ...

  7. Postman Postman接口测试工具使用简介

    Postman接口测试工具使用简介 by:授客 QQ:1033553122 本文主要是对Postman这个接口测试工具的使用做个简单的介绍,仅供参考. 插件安装 1)下载并安装chrome浏览器 2) ...

  8. 接口测试工具Postman接口测试图文教程

    Postman接口测试工具使用 一.前言     在前后端分离开发时,后端工作人员完成系统接口开发后,需要与前端人员对接,测试调试接口,验证接口的正确性可用性.而这要求前端开发进度和后端进度保持基本一 ...

  9. postman接口测试工具的常规使用

    目录 postman接口测试工具简介与安装 postman发送get请求 JSON数据详解 postman发送post请求 postman中post请求传参说明 postman设置请求的header ...

  10. 【技术博客】Postman接口测试教程 - 环境、附加验证、文件上传测试

    Postman接口测试教程 - 环境.附加验证.文件上传测试 v1.0 作者:ZBW 前言 继利用Postman和Jmeter进行接口性能测试之后,我们发现Postman作为一款入门容易的工具,其内置 ...

随机推荐

  1. vs2022不安装docker desktop可以打包镜像吗

    vs2022开发的项目可以直接打包镜像到 linux主机. idea 可以使用docker插件直接打包镜像到linux,我想vs2022也可以,于是开始摸索 官网只说支持docker desktop ...

  2. C++11新特性(一):语言特性

    C++11新特性 总结C++11特性时发现整个内容角度,建议查看前先查看目录. 语言特性 右值引用 右值的分类为将亡值和字面量.将亡值就是将要销毁的对象以及临时的变量,字面量就是常量.左值就是变量. ...

  3. Ubuntu 修改密码

    强制修改密码 可以通过切换到 root 帐户强制修改密码来绕过密码长度限制: sudo su # 切换到 root 帐户 passwd USER # 修改密码 或者: sudo passwd $(wh ...

  4. 【爬虫实战】——利用bs4和正则表达式,简单实现爬取数据

    前言 好久没有写博客了,由于一直比较忙,感觉快荒废了学习的步伐,最近由于需要利用爬虫爬取数据,总结一下,以便以后查阅. 目录 一.bs4的安装 二.bs4解析器 三.定位查找标签 四.转换格式 五.提 ...

  5. 五子棋AI:实现逻辑与相关背景探讨(下)

    前文回顾 在上篇文章中,我们约定了一种衡量格子价值的方式,如下表. 综合价值排序 己方价值 敌方价值 对应的奖励数值 1 Lv1 ? \(2^{20}\) 2 ? Lv1 \(2^{16}\) 3 L ...

  6. iOS 屏幕旋转的实践解析

    ​ 摘要:如何更灵活便捷的实现自定义屏幕旋转场景,本文带你揭秘! 文|即构 iOS 应用开发团队 屏幕旋转是在视频直播类 APP 中常见的场景,在即构科技之前发布的 Roomkit SDK 中也有屏幕 ...

  7. ASP.NET Core – DateTime, DateTimeOffset, DateOnly, TimeOnly, TimeSpan, TimeZone, NodaTime 使用基础

    前言 心血来潮,这篇讲点基础的东西. 对日期和时区 timezone 不熟悉的读者,请先看这篇 Time Zone, Leap Year, Date Format, Epoch Time 时区, 闰年 ...

  8. JavaScript – Rest Parameters & Spread Operator

    介绍 Rest 和 Spread 的共同点是语法都是 ... (点点点). 但它们的概念是相反的. 看例子体会: Rest Parameters 参考: 阮一峰 – rest 参数 rest para ...

  9. map的线程安全,boost库读写锁的实现

       *************** map的线程安全 ********************  *  * 参考1  * map要实现线程安全必须要加锁,如果使用mutex会产生大量的线程等待,可以 ...

  10. 非常非常好用的一款账户密码保存工具-KeePass

      非常非常好用的一款账户密码保存工具 下载地址: https://sourceforge.net/projects/keepass/files/KeePass%202.x/2.55/KeePass- ...