这一段时间使用POSTMAN比较多,有些经验、踩过的坑和大家分享下,写的比较浅希望大家不要笑 话。说的错误希望大家可以指出,帮助我们一起前进。

首先,postman如何做接口测试就不写在里面了,有问题的欢迎大家找我讨论。 本文档主要讲如下方面

1.一些断言的使用;

2.参数化的运用;

3.通过参数化和断言参数化来用postman进行接口自动化。

1.一些断言的使用

可以看到红框中的Tests命令这里就是设置断言的位置这里我设置的断言分别是右边默认断言中的判断返回码和判断json值的断言。

箭头1所写代码

//判断返回状态码是否为200

// "//"是postman的注释方式

pm.test(

"Status code is 200" //这是断言判断结束后给我们看的部分

, function () //表示功能,但是我没用过

{

pm.response.to.have.status(200); //这句话表示返回码含200

});

箭头2所写代码

//json对象解析,路径编写

var jd = pm.response.json().msg; //设置一个变量表示json中的路径(看不懂的话看下底下的json返回值

//它表示:{

//"msg":"成功"

//})对应的值

//验证信息编写

pm.test("验证信息是:成功" //这是断言判断结束后给我们看的部分

,function() //表示功能,但是我没用过

{

pm.expect(jd).to.equal(data.S3) //这句话表示jd变量对应的值是data.S3,这里我用了参数化的写法,不用参数化写的话应该为("值")

});

箭头3对应的是返回的BODY值在,这里可以看到msg对应的值是成功

注意:如果返回值中BODY的下有多个json对那么就得加上那个路径,如:

a:{

q:{

w:3;

};

};

b:{

e:{

c:a;

v:b;

};

n:{

m:t;

y:o;

}

};

如果你要取m的值 那么你要这么写路径

var m = pm.response.json().b[1].m

2.参数化的运用

这里我用的参数化是在文档中编写的参数,并不是postman可以直接使用的环境参数,要注意

首先在报文中的参数化编写格式和断言中参数化编写格式不一样要注意不能写错;

报文中的写法:{{参数}}

断言中的写法:data.参数

如图

这是报文中参数化的写法

这是断言中参数化的写法

这是参数化文件

注意建议参数化文件要另存为下

文件的编码格式调整为utf-8,避免有些中文无法输入变成乱码

注:参数带数字的化最好使用双引号来填写,如"01",避免无法显示完全

3.通过参数化和断言参数化来用postman进行接口自动化

通过断言和参数化的方式我们就可以对接口进行自动化操作

如图指示

在postman左边有个按钮可以开启自动化的处理方式

打开后进行设置

通过右边栏选择要执行的接口和进行调整接口运行顺序;

左边Data栏选择要添加的参数化文件,不选择文件Data File Type栏是不会出现的,它的作用是选择参数化文件的文件类型和查看文件内的参数;

Save responses栏建议打开,可以看返回的报文(这样就算字段太多不好用断言判断还可以人工进行判断)

这张是网上找的图有点老,但是对各个功能有解释

设置之后就可以单击Run进行测试了

测试完成会出现如下图(版本不一样可能出现不一样的界面)

箭头1代表测试接口的断言执行情况

箭头2代表查看执行的详细情况(一点也不详细)

箭头3代表保存

箭头4代表重新再测一遍

这里点击接口名称可以查看报文详细结果

箭头1代表单击选择可打开报文详细页面

箭头2代表输入报文详细情况(我这里没有输入报文所以没有)

箭头3代表输出报文详细情况(上面Save responses栏没打开就不会显示)

接口自动化这里还有很多功能,如定时等,我这里都没有用到,欢迎大家讨论。

我这里根据自己的工作情况做了一些分享,也希望和大家进行进一步的讨论。谢谢大家。

延申材料:

4、postman的常见断言 - 软件测试汪 - 博客园 (cnblogs.com)

Postman接口测试自动化介绍_踏雪飞狐的博客-CSDN博客_postman 测试

POSTMAN参数化和断言一些理解相关推荐

  1. JMeter学习(四)参数化、断言、集合点

    1.参数化 录制脚本中有登录操作,需要输入用户名和密码,假如系统不允许相同的用户名和密码同时登录,或者想更好的模拟多个用户来登录系统. 这个时候就需要对用户名和密码进行参数化,使每个虚拟用户都使用不同 ...

  2. Jmeter CSV 参数化/检查点/断言

    当参数的值没有规律且量不太大时,可以使用CSV Data set config这种方法.  案例:  应用Sogou自动搜索关键字: 软件开发测试,web功能自动化测试,性能自动化测试,Seleniu ...

  3. postman的常见断言

    介绍断言之前,我们先测试1个接口: 接口地址:https://www.v2ex.com/api/nodes/show.json?name=python Method: GET Authenticati ...

  4. 参数化,断言,参数化时为什么做断言,怎么做断言,如何确保断言的正确

    参数化是什么 参数化想必做过接口测试的各位小伙伴都不陌生,参数化是对一个接口进行多次重复类似的操作,通过将响应数据与接口API对比即可. 断言是什么 手动测试时,我们通过肉眼去确认程序的实际操作后呈现 ...

  5. Postman参数化

    文章目录 一.没有使用参数化 二.参数化 1. 测试数据部分字段参数化 1.1 参数化文件login1.json内容如下: 1.2 Postman设置 1.3 关联文件,发送请求 2. 请求体参数化: ...

  6. jmeter的java请求参数设置_Jmeter中json数据参数化、断言设置

    第一步:光标定位到测试计划上,右键菜单"添加" -> Threads(users) -> 线程组,如下图 第二步: 光标定位到线程组,右键菜单选择 "添加&q ...

  7. csdn--接口自动化测试之postman如何设置断言

    目录 一.前言 二.postman为啥要设置断言 三.postman设置断言的流程 四.在postman设置断言,存在新老版本的断言语法不一致的情况下,目前两种语法都可以使用. 一.前言 hello呀 ...

  8. 【4】Postman之Tests(断言)

    简介:使用postman完成请求后,验证返回结果,会用到tests断言.官方提供了很多可以直接使用的方法~ 接下来主要介绍这些方法是如何使用. 1. 变量相关: Get an environment ...

  9. postman参数化 接口响应数据获取符合条件的内容参数化给后面的接口使用

    一:主要内容 从响应结果中找到满足条件的key,获取其value,参数化给后面的接口使用 二:参数化获取想要的value值,传给后面的接口使用 有时我们获取的响应数据,需要的那个字段可能在一个数组里面 ...

最新文章

  1. js 默认的参数、可变的参数、变量作用域
  2. hashmap赋值给另一个hashmap_图解设计一个 HashMap
  3. OpenGL程序管道,可分离程序和着色器子例程的基本用法
  4. 无监督学习 k-means_无监督学习-第2部分
  5. 女大学生毕业相亲程序员,吃了一顿大排档,一看车钥匙后犹豫了!
  6. 构建一个简单的卷积神经网络,使用DRL框架tianshou匹配DQN算法
  7. Kafka 安装部署、集群启动、命令行操作 与 可视化工具 Kafka Tool
  8. JAVA加载一个目录下有依赖关系本地库的通用代码
  9. Atitit 企业知识管理PKM与PIM
  10. 7 ida pro 网盘_7月上市新车汇总 日产轩逸领衔 自主高端红旗HS7最具潜力
  11. RS485电路设计原理图
  12. MCMC 改进粒子滤波算法及其在目标跟踪中的应用
  13. 概率论 方差公式_概率论复习:重要概念和公式
  14. 黑鲨给电脑重装系统的详细步骤
  15. java输出流 拒绝访问_java – 使用FileOutputStream时拒绝访问
  16. 链接mysql 504_总结403到504的常用问题
  17. Elasticsearch02
  18. 单机翻译软件android,计算机辅助翻译软件(Transmate)V7.3.0.1218 单机版
  19. ValueError: `generator` yielded an element of shape (2,) where an element of shape (?, ?) was expect
  20. 这篇寒门博士论文致谢火了:回首望过去,可怜无数山...

热门文章

  1. 野樱桃树下的背叛 读后感
  2. Springboot毕业设计毕设作品,图像AI风格转换系统 开题报告
  3. Java遍历Map对象
  4. java父原型,对象及原型丶Java教程网-IT开发者们的技术天堂
  5. ASP.NET中 RangeValidator(范围验证)的使用
  6. html 中的空格%3c br%3e,URL编码表一览 - frabbit的个人空间 - OSCHINA - 中文开源技术交流社区...
  7. 超级计算机应用,你对超级计算机了解吗?知道多少关于超级计算机的应用?
  8. Python获取视屏的帧率和总帧数
  9. 年关将至,VR全景在这些行业大显身手的机会来了!
  10. APP启动优化与黑白屏