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

下载完成后直接安装即可,需要注册一下postman账号,登录账号后网页版也可以用,适合办公协同。




Params:用于在get请求传参
Authorization:postman自带的鉴权功能
Headers:请求头
Body:post请求传参
– none:没有参数
– form-data:既有文件又有键值对
– x-www-form-urlencoded:只传输键值对
– raw:创建JSon、TXT、xml、HTML、js传输
– binary:把文件以二进制方式传输
Pre-request Script:接口请求之前的脚本,用js格式写
Tests:断言的代码

将所需要的数据从响应结果中取出,并设置为全局变量,在相关联的请求中去调用这个变量即可,如需要关联所查询的手机号码的归属地的天气。

代码如下(示例):
var jsonData=pm.response.json() //获取响应中的json数据
var get_city=jsonData.result.city //获取城市
console.log(get_city)//调试并查看是否获取成功
pm.globals.set("city", get_city);//设置city为全局变量,当前值为get_city
获取响应结果并设置为全局变量。
在2.查询天气中进行将入参的city的value设置为变量{{city}}即可

postman断言
对接口请求后的内容进行设置,如状态码、响应头、响应正文等信息进行断言操作。在设置时会给定一个预期结果,在发送请求后会得到一个实际如果,如果两者结果一致,则认为是成功的,否则则是失败的。在失败的情况下则需要进一步分析原因,从而判断是否是一个bug。
为什么要加入断言?
利用断言判断测试结果,减少人工检查。
状态码
分类 分类描述
1** 信息响应,服务器收到请求,需要请求者继续执行操作
2** 成功响应,操作被成功接收并处理
3** 重定向,需要进一步的操作以完成请求
4** 客户端错误,请求包含语法错误或无法完成请求
5** 服务器错误,服务器在处理请求的过程中发生了错误


//Status code is 200
//判断这个接口是否被服务器处理了
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
//test():用来做断言的 "Status code is 200":描述信息-》判断状态码是否为200
//function()实现功能 结果显示在Test
//Status code name has string
pm.test("判断状态消息是否为ok", function () {
pm.response.to.have.status("OK");
});
//Successful POST request
pm.test("判断状态码是否为200,201,203", function () {
pm.expect(pm.response.code).to.be.oneOf([201, 200,203]);
});



全局变量
环境变量
作用:主要是用来做接口关联、环境的设置(测试环境、预生产环境)
在上图3中有按钮位置
postman支持JSON文档、TXT文档、csv文档
作用:批量管理数据(输入的数据,预期结果),批量测试
注意:如果在预览文件时有乱码,就把文件选择用utf-8无bom的格式或者转为utf-8编码格式就可以解决很多问题
txt文档参数化
案例:对商城登录接口进行多组数据测试
1用txt、csv、json文档准备数据
2:接口中引用变量
3:测试集导入数据文件
4:多次迭代运行
5:查看运行结果
1.txt文本传数据

有几行数据就在iteration那里填几,比如此时是六组数据,那就填6

2、csv-表格–读取完数据后会自动选择迭代次数

3.json
–补
论坛接口测试集
文档参数化
断言参数化
接口自动化运行
实例:论坛接口测试
论坛地址:https://cnodejs.org
接口文档:https://cnodejs.org/api
案例1:发布帖子,获取首页帖子,更新帖子,获取首页帖子
topic4 requests
POST 发布新帖
GET 获取首页帖子查看获取是有成功
POST 更新帖子
GET 获取首页帖子-否看更新是否成功
刚入门rails,开始慢慢理解。有人可以解释或给我一些关于在application_controller中编码的好处或时间和原因的想法吗?有哪些用例。您如何为Rails应用程序使用应用程序Controller?我不想在那里放太多代码,因为据我了解,每个请求都会调用此Controller。这是真的? 最佳答案 ApplicationController实际上是您应用程序中的每个其他Controller都将从中继承的类(尽管这不是强制性的)。我同意不要用太多代码弄乱它并保持干净整洁的态度,尽管在某些情况下ApplicationContr
Sinatra新手;我正在运行一些rspec测试,但在日志中收到了一堆不需要的噪音。如何消除日志中过多的噪音?我仔细检查了环境是否设置为:test,这意味着记录器级别应设置为WARN而不是DEBUG。spec_helper:require"./app"require"sinatra"require"rspec"require"rack/test"require"database_cleaner"require"factory_girl"set:environment,:testFactoryGirl.definition_file_paths=%w{./factories./test/
我有两个Rails模型,即Invoice和Invoice_details。一个Invoice_details属于Invoice,一个Invoice有多个Invoice_details。我无法使用accepts_nested_attributes_forinInvoice通过Invoice模型保存Invoice_details。我收到以下错误:(0.2ms)BEGIN(0.2ms)ROLLBACKCompleted422UnprocessableEntityin25ms(ActiveRecord:4.0ms)ActiveRecord::RecordInvalid(Validationfa
1.postman介绍Postman一款非常流行的API调试工具。其实,开发人员用的更多。因为测试人员做接口测试会有更多选择,例如Jmeter、soapUI等。不过,对于开发过程中去调试接口,Postman确实足够的简单方便,而且功能强大。2.下载安装官网地址:https://www.postman.com/下载完成后双击安装吧,安装过程极其简单,无需任何操作3.使用教程这里以百度为例,工具使用简单,填写URL地址即可发送请求,在下方查看响应结果和响应状态码常用方法都有支持请求方法:getpostputdeleteGet、Post、Put与Delete的作用get:请求方法一般是用于数据查询,
//1.验证返回状态码是否是200pm.test("Statuscodeis200",function(){pm.response.to.have.status(200);});//2.验证返回body内是否含有某个值pm.test("Bodymatchesstring",function(){pm.expect(pm.response.text()).to.include("string_you_want_to_search");});//3.验证某个返回值是否是100pm.test("Yourtestname",function(){varjsonData=pm.response.json
目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称
最近在学习CAN,记录一下,也供大家参考交流。推荐几个我觉得很好的CAN学习,本文也是在看了他们的好文之后做的笔记首先是瑞萨的CAN入门,真的通透;秀!靠这篇我竟然2天理解了CAN协议!实战STM32F4CAN!原文链接:https://blog.csdn.net/XiaoXiaoPengBo/article/details/116206252CAN详解(小白教程)原文链接:https://blog.csdn.net/xwwwj/article/details/105372234一篇易懂的CAN通讯协议指南1一篇易懂的CAN通讯协议指南1-知乎(zhihu.com)视频推荐CAN总线个人知识总
深度学习部署:Windows安装pycocotools报错解决方法1.pycocotools库的简介2.pycocotools安装的坑3.解决办法更多Ai资讯:公主号AiCharm本系列是作者在跑一些深度学习实例时,遇到的各种各样的问题及解决办法,希望能够帮助到大家。ERROR:Commanderroredoutwithexitstatus1:'D:\Anaconda3\python.exe'-u-c'importsys,setuptools,tokenize;sys.argv[0]='"'"'C:\\Users\\46653\\AppData\\Local\\Temp\\pip-instal
我正在尝试将以下SQL查询转换为ActiveRecord,它正在融化我的大脑。deletefromtablewhereid有什么想法吗?我想做的是限制表中的行数。所以,我想删除少于最近10个条目的所有内容。编辑:通过结合以下几个答案找到了解决方案。Temperature.where('id这给我留下了最新的10个条目。 最佳答案 从您的SQL来看,您似乎想要从表中删除前10条记录。我相信到目前为止的大多数答案都会如此。这里有两个额外的选择:基于MurifoX的版本:Table.where(:id=>Table.order(:id).
我目前正在用Ruby编写一个项目,它使用ActiveRecordgem进行数据库交互,我正在尝试使用ActiveRecord::Base.logger记录所有数据库事件具有以下代码的属性ActiveRecord::Base.logger=Logger.new(File.open('logs/database.log','a'))这适用于迁移等(出于某种原因似乎需要启用日志记录,因为它在禁用时会出现NilClass错误)但是当我尝试运行包含调用ActiveRecord对象的线程守护程序的项目时脚本失败并出现以下错误/System/Library/Frameworks/Ruby.frame