环境变量
环境变量就是我们存放一组公共数据的地方,比如我有100个接口,三套环境(开发环境、测试环境、生产环境),我们没有必要把这100个接口根据三个环境分别写一套用例。只需要维护一套用例脚本,然后设置对应三个环境的变量就行了。
如下图所示:
这样对比应该能看出,我们在请求接口的时候,只需要把请求地址用参数 {{这里是地址}} 替换掉就行了。在测试的时候,测哪个环境就切换到哪个环境的环境变量组。
下图是我的请求:
另外,在postman的脚本里,还可以用postman.setEnvironmentVariable("key",value); 来直接设置环境变量,下面就会说到。
Pre-request Script
顾名思义,这是一个在请求前执行脚本的地方。
举例说明:
还是刚刚那个接口,请求时需要带上YYYYMMDD格式的当天日期作为参数值。那么我们就可以在这里用JS语法生成一个当前时间nowtime,然后把这个nowtime用上边说道的postman.setEnvironmentVariable(key,value)设置为环境变量NOWTIME,在请求的时候,在引用这个变量NOWTIME就行了。
如下图所示是我的测试接口
关联
这是我被问到最多的一个问题......
举例说明:
现有A、B两个接口,A接口是充值接口,充值成功会返回一个充值订单;B接口是充值订单查询接口,需要用A接口返回的充值订单作为请求参数去查询充值结果。
如下图所示
现在B接口需要用A接口返回的 "orderId": "20171010164227575431843" 作为入参去查询,那么我们可以在A接口的tests里这么写:
这样,在充值成功时,就会自动把返回的orderId写进环境变量{{充值订单}},我们在B接口请求的时候,直接引用这个变量就行了。