IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 【博学谷学习记录】超强总结,用心分享 | 软件测试 postman基础测试 -> 正文阅读

[开发工具]【博学谷学习记录】超强总结,用心分享 | 软件测试 postman基础测试

1. Postman 基础用法

请求中常见数据传递格式

数据类型样例数据请求方式请求头(Content-Type)
字符串URL?username=huluwa&pass=123GET/
表单见图POSTapplication/x-www-form-urlencoded
json{
“username”:“huluwa”
“pass”:“123”
}
POSTapplication/json
  • 表单示意图

在这里插入图片描述

  • 说明:
    • form表单:最常见的post提交数据的方式,浏览器默认数据提交方式
    • json:目前最流行的数据传输格式

2. Postman 用例管理

  • 作用:规范化管理接口上的大量测试用例

  • 实现步骤

    1. 创建测试集 -New Collection

      • Collection 可以被理解成是一个项目(系统),包含多个接口请求
    2. 创建目录 -Add Folder

      • Folder 可以被理解成是一个项目模块
    3. 添加请求 -Add Request

3. Postman 断言

1. 断言前置基础

  • 断言:通过代码自动判断实际运行的结果是否与测试用例一致

  • 断言结果:

    • 结果一致:测试通过 pass
    • 结果不一致:测试不通过 fall
  • 复习:UnitTest常用断言方式:

序号断言代码片段代码说明
1判定为真assertTrue(expr,msg=None)验证expr为true
2判定为假assertFalse(expr,msg=None)验证expr为false
3判定相等assertEqual(expected,actual,msg=None)验证expected==actual
4判定不相等assertNotEqual(first,second,msg=None)验证first != second
5判定为空assertIsNone(obj,msg=None)验证obj是None
6判定不为空assertIsNotNone(obj,msg=None)验证obj不是None
7判定包含assertIn(member,container,msg=None)验证member在container里面
8判定不包含assertNotIn(member,container,msg=None)验证member不在container里面
  • postman中的断言
    • 使用JavaScript语言编写的,写在Postman的【Tests】标枪中
    • 【Tests】中的脚本在发送请求之后执行,它会把断言的结果 (PASS/FALL) 最终在**【Test Results】**标签页中
    • Postman的常用断言
      • 断言响应状态码是否为200(Status code is 200)
      • 断言响应体JSON数据校验(Response body:JSON value check)
      • 断言响应体是否包含指定字符串(Response body: Contains string)
      • 断言响应体是否等于指定字符串(Response body:Is equal to a string)
      • 断言响应头是否包含指定的头信息(Response headers: Content-Type header check

2. Postman 断言

1. 断言响应状态码
样例代码: 
pm.test("Status code is 200", function () { 
	pm.response.to.have.status(200); 
}); 
说明: 
pm.test是postman内置对象pm对外提供的一种名称为test的方法,他的功能是使用pm.test来编写测试脚本时,即使方法内部处理内容出现错误也不会影响后续自动化脚本的运行。
2. 断言JSON数据
示例代码:
pm.test("Your test name", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.value).to.eql(100);
});
实例:
pm.test("断言success=true", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.success).to.eql(true);
});
pm.test("断言code=10000", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.code).to.eql(10000);
});
pm.test("message=操作成功!", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.message).to.eql("操作成功!");
});
3. 断言包含指定的字符串内容
示例代码:
pm.test("Body matches string", function () {
    pm.expect(pm.response.text()).to.include("更改成包含的内容");
});
4. 断言等于指定的字符串
示例代码:
pm.test("Body is correct", function () {
    pm.response.to.have.body("更改成指定的字符串");
});
5. 断言响应头标签(了解)
示例代码:
pm.test("Content-Type is present", function () {
    pm.response.to.have.header("Content-Type");
});

4. 全局变量与环境变量

1. 概念

  • 全局变量:作用范围是针对postman 下所有测试集均生效
  • 环境变量:
    • 只对选择了对应环境的测试集生效
    • 开发环境、测试环境、线上环境
    • 一套环境中,变量不能重复,但可以定义多个不重复的变量

2. 设置变量

  • 全局变量
    • 手动设置
    • 代码实现
设置全局变量
pm.globals.set("g_name", "jack");
  • 环境变量
    • 手动设置
    • 代码实现
设置环境变量
pm.environment.set("e_name", "Nauica");

3. 获取变量值

  • 全局变量

    1. 请求参数中获取:{{g_name}}
    2. 代码中获取:var value = pm.globals.get("g_name")
  • 环境变量

    1. 请求参数中获取:{{e_name}}
    2. 代码中获取:var value = pm.environment.get("e_name")

5. Postman 关联

1. 关联介绍

  • 后一个接口的请求需要依赖前一个接口的响应数据,一般通过全局变量或者环境变量来进行参数在接口之间的传递。

  • 技术实现:

2. 通过全局变量进行接口关联

案例1: 
1.请求获取天气接口,http://www.weather.com.cn/data/sk/101010100.html 
2.获取天气接口返回结果中的城市名称 
3.请求百度搜索接口:http://www.baidu.com/s?wd={{城市名称}},城市名称即为天气接口获取并保存 到全局变量中的数据。
//保存天气接口的城市名称---全局变量
var jsonData= pm.response.json()
var city = jsonData.weatherinfo.city
pm.globals.set("g_city", city);

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-08-19 19:26:35  更:2022-08-19 19:30:18 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 22:36:26-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码