postman自动化测试如何设置环境变量教程

在接口测试中,我们经常会用到一些通用请求参数,或者需要使用某个接口的返回参数作为另一个接口的请求参数,静态的参数还好,如果是经常变动的参数,那么操作起来,就特别的麻烦,这时候,我们就可以利用postman工具中的环境变量,来简化流程操作,可以节省非常多不必要花费的时候,而且还不容易出现错误。

目录

一、创建环境变量目录

 二、创建接口测试目录

 三、设置环境变量

1、设置全局变量

2、设置环境变量

3、在请求接口中添加环境变量

四、Postman中的其它常用方法


一、创建环境变量目录

首先,我们创建一个名为test的环境变量目录。

postman自动化测试如何设置环境变量教程_第1张图片

 二、创建接口测试目录

然后,再创建一个接口测试目录,方便统计管理同一个项目下的接口。

选择指定刚才创建好的环境变量目录。

 三、设置环境变量

pm.environmentpm.globals主要在作用域和权重上有所不同。

pm.globals是全局变量,一旦设置,就可以在Postman的所有请求和测试脚本中使用。这为我们提供了一个在整个集合中共享数据的方便方式。

pm.environment则是环境变量,其权重高于全局变量。环境变量允许我们为不同的环境(如开发、测试、生产等)定义不同的值。这在进行API测试时非常有用,因为我们可以根据不同的环境使用不同的变量值。例如,我们可以在开发环境中使用一个测试数据库,而在生产环境中使用实际数据库。在使用代码操作的方式时,只需将globals替换为environment即可。在发起一个请求或一键发送所有请求时,我们可以勾选对应的环境来使用不同的变量。

postman自动化测试如何设置环境变量教程_第2张图片

1、设置全局变量

全局变量,全局可用,直接在globals里面设置即可。

2、设置环境变量

环境变量,如果是固定值,可以直接在所创建的环境变量目录中进行设置接口。如果是动态值,也可以在Pre-request Script和Tests中编写脚本进行动态添加。

3、在请求接口中添加环境变量

举个例子:比如我们需要在某个接口中,引用环境变量中的值,如何操作呢? 

首先添加一个环境变量:token:123

postman自动化测试如何设置环境变量教程_第3张图片

 我们随便发起一个请求,注意观察,发起的请求是否携带了,我们设置的环境变量,如果包含我们设置的环境变量,则表示设置成功。

postman自动化测试如何设置环境变量教程_第4张图片

如何通过脚本来设置环境变量呢? 我们可以在Pre-request Script编写代码实现。

pm.environment.set("token",456) // 环境变量
pm.globals.set("token",456)  //全局变量

var environmentToken= pm.environment.get("token"); // 获取环境变量
console.log(environmentToken);
var globalsToken= pm.globals.get("token"); // 获取全局变量
console.log(globalsToken);

postman自动化测试如何设置环境变量教程_第5张图片 4、将请求返回的参数,设置为环境变量

上面,我们已经实现了,在接口请求前的一些操作,那么应该如何实现,将一个接口的返回数据中的某个值,设置为环境变量呢?这里以微信公众号的一个接口作为例子,简单说明。

postman自动化测试如何设置环境变量教程_第6张图片

 通过调用接口,我们可以看到里面包含access_token参数,这个参数,需要作为另一个接口的请求参数进行调用。我们需要在当前调用即可中的Tests里面编写脚本。 

postman自动化测试如何设置环境变量教程_第7张图片 

var access_token=pm.response.json()["access_token"]
console.log(access_token)
pm.environment.set("access_token",access_token)

最后,我们就可以通过之前的方式,直接获取到环境变量参数。 

postman自动化测试如何设置环境变量教程_第8张图片

 

四、Postman中的其它常用方法

1、pm.globals.get(variableName):获取全局变量。
2、pm.environment.get(variableName):获取环境变量。
3、pm.test(testName, callback):定义一个测试用例,用于验证请求的结果是否符合预期。
4、pm.expect(actualValue).to.eql(expectedValue):断言实际值等于预期值。
5、pm.sendRequest(url, callback):发送一个自定义的请求。
6、pm.responseTime:获取响应时间。
7、pm.responseCode:获取响应状态码。
8、pm.request.headers:获取请求头信息。
9、pm.request.url:获取请求的 URL。
10、pm.request.method:获取请求方法(如 GET、POST 等)。

等等……

更多postman方法使用可以参考在postman在线文档中进行查阅学习:Postman documentation overview | Postman Learning Center

你可能感兴趣的:(postman,测试工具)