网站如何才能被百度收录,网站后期维护合同,光明区公明街道,国外优秀电商网站3天精通Postman接口测试#xff0c;全套项目实战教程#xff01;#xff01; Postman 是一个接口测试工具软件#xff0c;可以帮助开发人员管理测试接口。当用户在 Postman 中输入请求并单击 Send 按钮时#xff0c;服务器将接收用户的请求并返回 Postman 在接口中显示的响… 3天精通Postman接口测试全套项目实战教程 Postman 是一个接口测试工具软件可以帮助开发人员管理测试接口。当用户在 Postman 中输入请求并单击 Send 按钮时服务器将接收用户的请求并返回 Postman 在接口中显示的响应的信息。 一、使用介绍
1、创建集合 集合可以理解成请求的总和或合集在Postman中集合表示将请求进行分组、分模块管理对含义相近、对功能相近的请求保存到一个集合中方便后期的维护、管理。 2、创建请求 创建集合后即可在集合下创建请求点击图中的“”即可。 3、发送第一个GET请求 使用下面测试链接请求方式选择GET点击send即可从服务器获取响应数据。 postman-echo.com/get?param151param266 请求方式有如下八种 请求方式 解释 GET 用于获取资源当采用 GET 方式请求指定资源时 被访问的资源经服务器解析后立即返回响应内容。通常以 GET 方式请求特定资源时 请求中不应该包含请求体所有需要向被请求资源传递的数据都应该通过 URL 向服务器传递。 POST 用于提交数据 当采用 POST 方式向指定位置提交数据时数据被包含在请求体中服务器接收到这些数据后可能会建立新的资源、也可能会更新已有的资源。 DELETE 用于删除特定位置的资源。 PUT 用于向指定位置提交数据 当采用 PUT 方式向指定位置提交数据时 数据被包含在请求体中 服务器接收到这些数据后直接在当前位置(即提交数据时指定的位置) 创建新的资源。 PUT 方式和 POST 方式极为相似都可以向服务器提交数据 PUT 方式通常指定了资源的存放位置(即提交数据时指定的位置)POST 方式所提交的数据由服务器决定存放位置(可能是新增数据也可能是更新数据)。 ... ...
4、发送第一个POST请求
场景一在链接种添加参数使用场景比较少但也会有。
https://postman-echo.com/post?param51zxw
场景二提交表单数据发送一个Request其中body为application/x-www-form-urlencoded类型参数分别为param1gqx和param2888 请 求 URL 如下
https://postman-echo.com/post multipart/form-data可以上传文件或者键值对最后都会转化为一条消息x-www-form-urlencoded只能上传键值对而且键值对都是通过间隔分开的
5、PUT请求
HTTP PUT 请求主要是从客户端向服务器传送的数据取代指定的文档的内容。
发送 PUT 请求并传递字符参数“hello world” 6、delete请求
请求链接
https://postman-echo.com/delete 二、环境变量数据变量以及断言
1、环境变量
环境变量指在不同环境同一个变量值随着环境不同而变化比如我们上面举例场景就可以使用环境变量当在测 试环境时host 值为: dev.postman.com ,当切换到生产环境时host 值变为postman-echo.com 。 增加了两个环境变量分别对应线上和线下运行的时候选择合适的环境变量即可。 2、本地变量
本地变量主要是针对单个 URL 请求设置的变量作用域只是局限在请求范围内。如请求 URL 如下设置两个本地 变量user,passwd作为参数。请求方式为 POST
https://postman-echo.com/post 变量设置好之后需要赋值在 Pre-request-Script 里面编写如下代码 3、全局变量 全局变量是指在所有的环境里面变量值都是一样的全局变量的作用域是所有请求。
【1】pm.globals.set(variable_key, variable_value)设置全局变量
【2】pm.globals.get(variable_key)获取全局变量
4、关于Pre-request-Script
试试在进行接口测试时有些工作需要在请求发起前进行完成这就好比你要去看一场演唱会前提条件是你必须在合适的时间且拿着入场票才可以如愿那么买票等操作就是你看演唱会的充分条件。预置脚本
【1】pm.environment.get(variable_key)获取环境变量
【2】pm.globals.get(variable_key)获取全局变量
【3】pm.variables.get(variable_key)获取本地变量
【4】pm.environment.set(variable_key, variable_value)设置环境变量
【5】pm.globals.set(variable_key, variable_value)设置全局变量
【6】pm.environment.unset(variable_key)清除环境变量
【7】pm.globals.unset(variable_key)清除全局变量
三、自写预置脚本示例
除了使用 postman 自身封装的脚本外我们还可以使用自己使用 js 编写的脚本作为预置脚本。如我们想添加一个 nowTime参数这个参数必须是当前系统时间 var now new Date(); //获取当前日期pm.environment.set(now, now);//将当前日期设置为时间参数 四、断言
使用postman完成请求后验证返回结果会用到test断言。\
1、判断响应体中是否包含指定内容
判断请求返回的状态为200200就是正常
pm.test(Status code is 200, function () {pm.response.to.have.status(200);
}); 以此内推可以判断响应体的其他结构中是否包含指定内容 以此类推 //body中是否包含111
pm.test(Status code name has string, function () {pm.response.to.have.body(111); //boy中是否包含111
});
//断言响应头包含指定的响应头“head”中包含Content-Type
pm.test(Content-Type is present, function () {pm.response.to.have.header(Content-Type);
});
//其他方式实现——断言响应结果包含指定的字符串
pm.test(Body matches string, function () {pm.expect(pm.response.text()).to.include(哈哈哈);
}); 3、断言响应结果等于指定的字符串 1 2 3 4 pm.test(Body is correct, function () { console.log(pm.response.text()) pm.response.to.have.body(111); //一般用于响应结果固定的断言方式 }); 4、断言接口响应时间小于200ms
pm.test(Response time is less than 200ms, function () {pm.expect(pm.response.responseTime).to.be.below(200); //响应时间根据需要进行自定义
}); 5、断言响应码在指定范围内
pm.test(Successful POST request, function () {pm.expect(pm.response.code).to.be.oneOf([100, 202]); //根据接口自身情况定义范围比较常用
}); 五、基础知识补充
1、Request Header
HTTP请求报文格式 2、Response Header
HTTP响应报文格式 3、Cookie设置 cookie 是存储在浏览器中的小片段信息每次请求后都将其发送回服务器以便在请求之间存储有用的信息。比 如很多网站登录界面都有保留账号密码以便下次登录。由于 HTTP 是一种无状态的协议服务器单从网络连接上无从知道客户身份。怎么办呢就给客户端们颁发一个通 行证吧每人一个无论谁访问都必须携带自己通行证。这样服务器就能从通行证上确认客户身份了。这就是 Cookie 的工作原理。 Cookie 是由服务端生成存储在响应头中返回给客户端客户端会将 cookie 存储下来在客户端发送请求时 user-agent 会自动获取本地存储的 cookie将 cookie 信息存储在请求头中并发送给服务端。postman 也可以 设置、获取、删除 Cookie。 添加Cookie 查看响应信息种的Cookie 也可以这样查看 4、授权设置 很多时候出于安全考虑我们的接口并不希望对外公开。这个时候就需要使用授权(Authorization)机制 授权过程 验证您是否具有访问服务器所需数据的权限。 当您发送请求时您通常必须包含参数以确保请求具有访问和返 回所需数据的权限。
Postman 支持的授权协议类型如下
No AuthBasic authDigest AuthOAuth 1.0Hawk Authentication等等
1Basic auth
基本身份验证是一种比较简单的授权类型需要经过验证的用户名和密码才能访问数据资源。这就需要我们输入用 户名和对应的密码。 请求 URL 如下授权账号为
用户名: postman密码: password授权协议为Basic authhttps://postman-echo.com/basic-auth 2Digest Auth Digest auth 是一个简单的认证机制最初是为 HTTP 协议开发的因此也常叫做 HTTP 摘要。其身份验证机制非 常简单它采用哈希加密方法以避免用明文传输用户的口令。摘要认证就是要核实參与通信的两方都知道双方共 享的一个口令。 当 server 想要查证用户的身份它产生一个摘要盘问digest challenge并发送给用户。典型的摘要盘问例如以下
请求 URL 如下
https://postman-echo.com/digest-auth
摘牌配置信息如下用户名密码和上面 basic auth 一样
Digest usernamepostman 密码: password , realmUsers, nonceni1LiL0O37PRRhofWdCLmwFsnEtH1lew, uri/digest-auth,
response254679099562cf07df9b6f5d8d15db44, opaque 3Hawk Auth Hawk Auth 是一个 HTTP 认证方案使用 MAC(Message Authentication Code消息认证码算法)算法它提供 了对请求进行部分加密验证的认证 HTTP 请求的方法。hawk 方案要求提供一个共享对称密匙在服务器与客户端之 间通常这个共享的凭证在初始 TLS安全传输层协议保护阶段建立的或者是从客户端和服务器都可用的其他 一些共享机密信息中获得的。请求 URL 如下https://postman-echo.com/auth/hawk
密钥信息如下
•Hawk Auth ID: dh37fgj492je
•Hawk Auth Key: werxhqb98rpaxn39848xrunpaw3489ruxnpa98w4rxn
•Algorithm: sha256 4OAuth 1.0
允许用户让第三方应用访问该用户在某一网站上存储的私密的资源如照片 视频联系人列表而无需将用户名和密码提供给第三方应用。
请求 URL 如下请求方式为 GETAdd authorization data to 设置为Request Headers
https://postman-echo.com/oauth1
参数配置为
Consumer Key: RKCGzna7bv9YD57cConsumer Secret: DEdQ-gs$-%2Nu7 文章转载自: http://www.morning.wfhnz.cn.gov.cn.wfhnz.cn http://www.morning.hrydl.cn.gov.cn.hrydl.cn http://www.morning.cbqqz.cn.gov.cn.cbqqz.cn http://www.morning.zsrjn.cn.gov.cn.zsrjn.cn http://www.morning.ghrhb.cn.gov.cn.ghrhb.cn http://www.morning.rmlz.cn.gov.cn.rmlz.cn http://www.morning.sbjhm.cn.gov.cn.sbjhm.cn http://www.morning.cjsrg.cn.gov.cn.cjsrg.cn http://www.morning.pslzp.cn.gov.cn.pslzp.cn http://www.morning.nqxdg.cn.gov.cn.nqxdg.cn http://www.morning.lekbiao.com.gov.cn.lekbiao.com http://www.morning.zyffq.cn.gov.cn.zyffq.cn http://www.morning.jrksk.cn.gov.cn.jrksk.cn http://www.morning.bpmfz.cn.gov.cn.bpmfz.cn http://www.morning.xmbhc.cn.gov.cn.xmbhc.cn http://www.morning.mfqmk.cn.gov.cn.mfqmk.cn http://www.morning.wpmlp.cn.gov.cn.wpmlp.cn http://www.morning.dfkmz.cn.gov.cn.dfkmz.cn http://www.morning.xqndf.cn.gov.cn.xqndf.cn http://www.morning.xphls.cn.gov.cn.xphls.cn http://www.morning.jrlgz.cn.gov.cn.jrlgz.cn http://www.morning.hjjfp.cn.gov.cn.hjjfp.cn http://www.morning.hmxb.cn.gov.cn.hmxb.cn http://www.morning.rpwm.cn.gov.cn.rpwm.cn http://www.morning.cgdyx.cn.gov.cn.cgdyx.cn http://www.morning.qscsy.cn.gov.cn.qscsy.cn http://www.morning.nbrdx.cn.gov.cn.nbrdx.cn http://www.morning.wmcng.cn.gov.cn.wmcng.cn http://www.morning.crrjg.cn.gov.cn.crrjg.cn http://www.morning.jwtjf.cn.gov.cn.jwtjf.cn http://www.morning.lwyqd.cn.gov.cn.lwyqd.cn http://www.morning.tbqdm.cn.gov.cn.tbqdm.cn http://www.morning.dxxnq.cn.gov.cn.dxxnq.cn http://www.morning.pflpb.cn.gov.cn.pflpb.cn http://www.morning.jhkzl.cn.gov.cn.jhkzl.cn http://www.morning.mmynk.cn.gov.cn.mmynk.cn http://www.morning.jxdhc.cn.gov.cn.jxdhc.cn http://www.morning.pcgmw.cn.gov.cn.pcgmw.cn http://www.morning.wfjrl.cn.gov.cn.wfjrl.cn http://www.morning.fynkt.cn.gov.cn.fynkt.cn http://www.morning.qscsy.cn.gov.cn.qscsy.cn http://www.morning.qbdsx.cn.gov.cn.qbdsx.cn http://www.morning.dlwzm.cn.gov.cn.dlwzm.cn http://www.morning.dpplr.cn.gov.cn.dpplr.cn http://www.morning.rhzzf.cn.gov.cn.rhzzf.cn http://www.morning.blfll.cn.gov.cn.blfll.cn http://www.morning.rszbj.cn.gov.cn.rszbj.cn http://www.morning.ydryk.cn.gov.cn.ydryk.cn http://www.morning.hfytgp.cn.gov.cn.hfytgp.cn http://www.morning.ylxgw.cn.gov.cn.ylxgw.cn http://www.morning.hbnwr.cn.gov.cn.hbnwr.cn http://www.morning.xltwg.cn.gov.cn.xltwg.cn http://www.morning.pxwjp.cn.gov.cn.pxwjp.cn http://www.morning.gdpai.com.cn.gov.cn.gdpai.com.cn http://www.morning.tbhlc.cn.gov.cn.tbhlc.cn http://www.morning.qineryuyin.com.gov.cn.qineryuyin.com http://www.morning.qbdqc.cn.gov.cn.qbdqc.cn http://www.morning.ktrdc.cn.gov.cn.ktrdc.cn http://www.morning.lbfgq.cn.gov.cn.lbfgq.cn http://www.morning.pndw.cn.gov.cn.pndw.cn http://www.morning.kdbbm.cn.gov.cn.kdbbm.cn http://www.morning.lrzst.cn.gov.cn.lrzst.cn http://www.morning.lnyds.cn.gov.cn.lnyds.cn http://www.morning.xflzm.cn.gov.cn.xflzm.cn http://www.morning.geledi.com.gov.cn.geledi.com http://www.morning.yrctp.cn.gov.cn.yrctp.cn http://www.morning.qcslh.cn.gov.cn.qcslh.cn http://www.morning.rykmf.cn.gov.cn.rykmf.cn http://www.morning.dbrnl.cn.gov.cn.dbrnl.cn http://www.morning.zqdhr.cn.gov.cn.zqdhr.cn http://www.morning.dhrbj.cn.gov.cn.dhrbj.cn http://www.morning.zwyuan.com.gov.cn.zwyuan.com http://www.morning.mjzgg.cn.gov.cn.mjzgg.cn http://www.morning.wgqtt.cn.gov.cn.wgqtt.cn http://www.morning.tynqy.cn.gov.cn.tynqy.cn http://www.morning.fbdtd.cn.gov.cn.fbdtd.cn http://www.morning.mxdiy.com.gov.cn.mxdiy.com http://www.morning.lizpw.com.gov.cn.lizpw.com http://www.morning.mzbyl.cn.gov.cn.mzbyl.cn http://www.morning.bhznl.cn.gov.cn.bhznl.cn