如何使用Postman做多接口测试【实战】

这篇具有很好参考价值的文章主要介绍了如何使用Postman做多接口测试【实战】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

1. 摘要

本文讲解使用postman做接口测试和批量接口测试的方法。

2.实践内容

2.1 环境变量和全局变量的设置:

a. 环境变量的设置方法如下图。点击设置一个环境变量,名为"user_pwd", 里面设置username 和passwd的值,然后在请求中应用这个环境变量"user_pwd"即可。

环境变量可以使用在以下地方:

  • URL
  • URL params
  • Header values
  • form-data/url-encoded values
  • Raw body content
  • Helper fields

注意:在你要使用的变量名上附上双花括号,一个请求只能应用一个环境变量。
 

 postman多接口,postman,测试工具,功能测试,自动化测试,软件测试
下图"username" 和"passwd" 的value值应用了环境变量"user_pwd",所以在body 中,只需在key对应的value那写上变量{{username}}, {{passwd}}。

注意:一个项目需要测试好几个环境的情况,就可以对不同的环境设置一个环境变量,比如对“test environment”设置一个环境变量,对“stage environment”设置一个环境变量,对“production 环境”设置一个环境变量。

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

b. 全局变量的设置方法类似,如下图,点击"Globals" 后就会出现添加环境变量类似的页面,进行变量和值的设置。

注意:全局变量设置就应用于整个收藏夹(Collection)中的请求,不用像环境变量一样需要选取。

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

2.2 用Postman做接口测试的实例

接口测试中常用的请求为GET 和POST,以下均以这两种请求为例。

GET 和POST 的区别:

  • GET 使用URL 或Cookie 传参,而POST将数据放在Body 中。
  • GET的URL 在长度上会有限制,而POST没有。
  • POST比GET相对安全,因为在地址栏不可见。
  • 一般POST请求用来获取数据,POST请求用来发送数据。 

对于上面的区别,其实第一点POST也可以将数据放在URL里,GET请求其实也没有长度限制,POST请求看起来是隐式的,但是可以通过抓包拿到参数。

1. GET 请求:

平常我们拿一个url 访问页面,就是所谓的get 请求。

例1.(stu_info 接口:获取名字为xx 的信息)

将请求方式设为GET, 同时输入完整的url, 跟访问浏览器一样, 或者输入接口url, 点击"Params" 输入需要的key 以及value, 点击"Send", 即可在"Response" 中查看返回的结果。

注意: get 请求的内容不能放在body里,并且长度有限制。由于对domain 设置了全局变量,所以,url 中用变量{{domain}} 做了替换,以下的请求中都应用了这个全局变量。
 

 postman多接口,postman,测试工具,功能测试,自动化测试,软件测试
例2. (all_stu 接口:获取所有用户的信息)

除了例1这种GET请求,还有些接口发送GET请求时除了发送key-value, 还要将Headers的信息也一起发送过去,这样就可以借助Postman来实现。以下图为例,需要在Headers 里添加"Referer"信息,以获取所有用户的信息。postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

2. POST请求:

POST 请求不能像GET一样直接在浏览器输入就可以请求,需要借助工具来完成。

使用方法:选择请求方式为post,输入请求的url,以及输入必要的"Authorization" , “header” 和"Body" 数据。post请求可以发送key-value, json格式,file等。

对于"Authorization"的使用,遇到比较多的是Type 为"Basic Auth", 然后设置对应的Username 和Password。

这里的username, password的值可以通过设置环境变量的方式取得。

 

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试
a. 用Postman 发送key-value 的请求:

以login 接口为例,在Body 中选取"form-data" 格式,输入所需的key-value, 选取对应的环境变量。

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

b. 用Postman 发送json格式的请求:

以add user 接口为例,在Body 中选取"raw" 格式,根据接口文档输入json 数据, 有需要应用环境变量的选取环境变量。

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

c. 用Postman 发送文件的请求:

以file upload 接口为例,在Body 中选取"form-data" 格式,在key 里输入"file",在右边的下拉里选取类型为"File",点击"Choose Files" 就可以上传本地文件了。
postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

2.3 Pre-requestScript 的使用

对于环境变量和全局变量的使用,除了上面所讲的方法外,也可以用Pre-requestScript 方法。

以login接口为例,在"Pre-requestScript"中设置环境变量 “username”, “passwd”,在Body 中选取"form-data"** 格式,输入所需的key-value, value即为变量{{username}}, {{passwd}}。

postman. setEnvironmentVariable (“key”, “value”);

postman. setGlobalVariable (“key”, “value”);

getEnvironmentVariable (“key”);//获取key的环境变量

getGlobalVariable(“key”);//获取key的全局变量

 

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

2.4 Tests 的使用

2.4.1. Tests 作为测试用例的应用

Tests 主要用来设计用例,比如要测试返回结果是否含有某一字符串,就可以用到 Tests。以gold_add 接口为例,来编写测试用例,分别测试返回的结果是否含有,如下所示:

响应成功返回PASS, 失败返回FAIL。

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

常用

tests如下:

1.检查response body中是否包含某个string

tests["Body matches string"] = responseBody.has("string_you_want_to_search");

注意:“Body matches string” 需唯一。

2.检测JSON中的某个值是否等于预期的值

var data = JSON.parse(responseBody);

tests["program's lenght"] = data.programs.length === 5;

JSON.parse()方法,把json字符串转化为对象。parse()会进行json格式的检查是一个安全的函数。

如:检查json中某个数组元素的个数(这里检测programs的长度)

var data = JSON.parse(responseBody);

tests["program's lenght"] = data.programs.length === 5;

3.检查response body是否与某个string相等

4.转换XML body为JSON对象

var jsonObject = xml2Json(responseBody);`
tests["Body is correct"] = responseBody === "response_body_string";

5.测试response Headers中的某个元素是否存在(如:Content-Type)

tests["Content-Type is present"] = postman.getResponseHeader("Content-Type"); 

//getResponseHeader()方法会返回header的值,如果该值存在

或者:

tests["Content-Type is present"] = responseHeaders.hasOwnProperty("Content-Type");

上面的方法,不区分大小写。下面的方法,要区分大小写。

 postman多接口,postman,测试工具,功能测试,自动化测试,软件测试
6.验证Status code的值

tests["Status code is 200"] = responseCode.code === 200;

7.验证Response time是否小于某个值

tests["Response time is less than 200ms"] = responseTime < 200;

8.name是否包含某个值

tests["Status code name has string"] = responseCode.name.has("Created");

9.POST 请求的状态响应码是否是某个值

tests["Successful POST request"] = responseCode.code === 201 || responseCode.code === 202;

10.很小的JSON数据验证器

 

var schema = {

"items": {

"type": "boolean"

}

};

var data1 = [true, false];

var data2 = [true, 123];

console.log(tv4.error);

tests["Valid Data1"] = tv4.validate(data1, schema);

tests["Valid Data2"] = tv4.validate(data2, schema);

2.4.2. 设置环境变量,建立多个接口间的关联

以gold_add 接口为例,由于该接口有权限验证,需要admin用户才可以做操作,需要添加cookie,所以需要将login 接口关联起来使用。

在login 请求中, 在"Tests"中加入

var jsonData =JSON.parse(responseBody);//获取body中返回的所有参数
postman.setEnvironmentVariable(“sign”,jsonData.login_info.sign);//把返回参数中的sign设置为环境变量

这样sign 就可以作为环境变量,应用于gold_add接口。

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

在gold_add 接口中,{{username}} 由于在环境变量"user_pwd" 中已经设置,可以直接输入变量名, {{sign}} 动态取得login接口中Response 的 “sign” 值,{{sign}}已在上面login 请求的"Tests" 中定义。

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

 2.5 使用Postman Interceptor 发送带Cookie 的请求

使用Postman 发送Cookie 的请求时,发现无法发送成功, 显示"Restricted Header (use Postman Interceptor)" 提示。 网上搜了一下,原来是要在Chrome安装"Postman Interceptor"插件,它可以让postman中发送请求的时候使用这个网站的浏览器cookie。

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

Chrome 安装完以后如下图所示有出现一个下图中的小图标。

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

 

在Postman 使用的时候要将Interceptor 打开,如下图所示,红框中的图标要高亮,这样发送Cookie 的请求时就不会出现上面提到的提示信息了。

如果请求成功的话,在"Cookies" 中可以查看到Cookie 值。

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

 

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

postman多接口,postman,测试工具,功能测试,自动化测试,软件测试

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取  文章来源地址https://www.toymoban.com/news/detail-741587.html

到了这里,关于如何使用Postman做多接口测试【实战】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 精通使用postman接口测试工具(全)

    Postman是谷歌开发的一款网页调试和接口测试工具,能够发送任何类型的http请求,支持GET/PUT/POST/DELETE等方法。Postman非常简单易用,可以直接填写URL,header,body等就可以发送一个请求,用来测试api接口非常方便。 Postman的优点 使用简单,无需搭建环境,直接使用,可以快速构

    2024年02月16日
    浏览(44)
  • postman接口测试工具的常规使用

    postman接口测试工具简介与安装 Postman简介: Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。 它提供功能强大的Web APIHTTP请求调试。它能够发送任何类型的HTTP请求(GET,HEAD,POST,PUT..),附带任何数量的参数+headers。 Postman功能: 主要用于模拟网络请求包 快

    2024年02月13日
    浏览(35)
  • 如何使用postman进行接口测试(实战项目分享)

    Postman是我们测试人员比较常用的一款接口测试工具,功能强大又易上手。 在这里分享一个入门级的接口测试练手项目:  三十多个接口,常见的接口请求方式POST、GET、PUT、DELETE都有涵盖; 有token鉴权,可设置变量进行token调用; 可用于接口自动化测试; 此项目安装部署方便

    2024年02月16日
    浏览(36)
  • Postman接口测试工具使用教程【基础版】

    postman postman是一款支持http协议的接口调试与测试工具,其主要特点就是功能强大,使用简单且易用性好 。无论是开发人员进行接口调试,还是测试人员做接口测试,postman都是我们的首选工具之一 。那么接下来就介绍下postman到底有哪些功能,它们分别都能干些什么 。下面先

    2024年02月11日
    浏览(38)
  • 接口自动化测试工具,Postman使用详解

    1、Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件,Postman分为Postman native app和Postman Chrome app两个版本。目前Chrome app已经停止维护,官方也不推荐使用该版本。 2、官网下载地址:http://www.getpostman.com 3:官方文档:http://www.getpostman.com/docs 2、第二步:新建接口请

    2024年02月06日
    浏览(61)
  • postman接口测试工具的使用之快速入门

        Postman是一款非常流行的支持HTTP/HTTPS协议的接口调试与测试工具,其功能非常强大,易用。 1.1 下载与安装     Postman的安装步骤,本例以Windows为例,如下所示: 1、访问官网,下载Postman,官网地址如下所示: Postman 2、进入到主页面后,下载适合自己的操作系统的版本

    2024年02月12日
    浏览(34)
  • 使用Postman工具做接口测试 —— 环境变量与请求参数格式!

    在上一篇笔记我们主要介绍了接口测试的基础知识与基本功能,本章主要介绍如何使用postman做接口测试。 环境变量和全局变量 环境管理中还可以点击“Global”添加全局变量,环境变量只有当选择了该环境时才生效,全局变量在任何环境中都生效,测试集中的变量只在当前测

    2024年02月05日
    浏览(57)
  • 一文详解接口测试(调试)工具postman的安装(完全卸载)和使用以及接口管理

    今天在开发项目时,需要使用 postman 来调试部分接口,那么,便利用这个时间来解说 postman 这款优秀的接口调试工具。他不

    2024年02月03日
    浏览(61)
  • 使用PostMan工具进行接口测试时传递Map类型参数的方法

    Step 1: 设置Header Step 2: 设置参数体 以json格式写好数据 Step 3:Controller层方法体参数设置 测试结果:

    2024年02月16日
    浏览(45)
  • web应用模式、API接口、接口测试工具postman、如何在浏览器中测试、restful规范、序列化反序列化、基于Django原生编写五个接口、drf介绍和快速使用、drf之APIView源码分析

    目录 一、web应用模式 二、API接口 三、接口测试工具postman postman介绍 postman下载与使用 四、如何在浏览器中测试 五、restful规范(重要) 六、序列化反序列化 七、基于Django原生编写五个接口 八、drf介绍和快速使用 概念 特点(了解一下) 安装 使用drf编写五个接口 九、drf之API

    2024年02月05日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包