接口测试可以通过工具(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. Homebrew 卸载 Wireshark 报错

    我在使用 Homebrew 安装 Wireshark 的时候,Homebrew 要求我输入密码.此时我又不想安转 Wireshark 了,于是我没有输入密码并且按下了 Ctrl + C.后来,我又尝试 ...

  2. LaTeX 编译 acmart 文档报错:hyperref must be loaded before hyperxmp.

    在编译一篇从 arXiv 下载的文档时遇到如下错误: Package hyperxmp Error: hyperref must be loaded before hyperxmp. 根据 GitHu ...

  3. 【YashanDB数据库】VMware虚拟机使用默认安装,在掉电之后数据库无法启动

    问题现象 客户使用VMware虚拟机使用默认安装,部署YashanDB个人版,在掉电之后无法启动 操作系统: Virtualization: VMware Operating System: Cent ...

  4. 【YashanDB知识库】23.1.3.101版本创建物化视图coredump

    [标题]23.1.3.101版本创建物化视图coredump [问题分类]数据库错误 [关键词]YashanDB, 物化视图, coredump, dblink [问题描述]在23.1.3.101版本 ...

  5. [Udemy] AWS Certified Data Analytics Specialty - 3.Processing

    Lambda Lambda 经常起胶水的作用,就是粘合不同的service. 如下图例子 另外Requirement #1 也是一个例子,还有Requirement #3 除了Kinesis Data ...

  6. 在stable diffussion中控制生成图片的光线

    在摄影中,光线起着至关重要的作用,它对图像的整体质量和氛围有着显著的影响.您可以使用光线来增强主题,创造深度和维度,传达情感,以及突出重要细节. 在这篇文章中,我会告诉你如何在stable diffu ...

  7. 《Effective TypeScript》条款21 - 类型扩展

    本文主要通过一些实际的代码示例,来帮助大家理解什么是类型扩展,本文主要内容如下: 什么是类型扩展 代码示例 总结 什么是类型扩展? TypeScript 需要从你指定的单一值中决定一组可能的值,这个过 ...

  8. Angular 18+ 高级教程 – 盘点 Angular v14 到 v18 的重大改变

    前言 我在 <初识 Angular> 文章里有提到 Angular 目前的断层问题. 大部分的 Angular 用户都停留在 v9.0 版本. Why everyone stay v9.0 ...

  9. MDC – Get Started

    前言 Angular Material 为了更好的和 Material Design 保持一致, 放弃了自己开发, 改而使用 wrapping MDC 的方式来维护 Angular Material. ...

  10. JavaScript – 基本语法

    参考 阮一峰 – 基本语法 Switch switch 经常用来取代 else if, 因为可读性比价高, 而且通常性能也比较好. standard 长这样 const orderStatus = ' ...