1.安装postman;
2.collections中创建文件夹A,标题最好使用英文,添加要测试的接口到该文件夹中;
如果接口太多,但域名大多重复,可以右击文件夹A=》edit=》Variables,设置域名,设置variable值,此时接口url可以用如下链接代替
{{weather}}/WeatherWS.asmx/getRegionDataset?
(weather即是variable的值),这样后面如果有服务器迁移,接口域名变更会方便很多;
3.接口调试:调试接口,可以正常获取数据;
增加断言,Tests中输入类似的代码(里面对应的数据需要修改为测试时的接口数据):
pm.test("status code is 200",function(){
pm.response.to.have.status(200)})
pm.test("接口响应时间小于200ms",function(){
pm.expect(pm.response.responseTime).to.be.below(200)})
pm.test("响应数据检查",function(){
pm.expect(pm.response.text()).to.be.include("广东")})
如果有全局变量或数据依赖,增加全局变量或数据依赖,同样在Tests中输入类似的代码:
var jsonObject = xml2Json(responseBody);
var code = jsonObject.ArrayOfString.string[0].split(',')[1]
tests["get one citycode"] = code
pm.globals.set("citycode",code);
调用全局变量如下图所示:
4. 用Runner可以调试运行文件夹中所有接口;
鼠标右击文件夹=》export(导出文件夹中所有接口数据,生成一个json文件); 如果有全局变量,再导出全局变量(仍是一个json文件),具体步骤如下图(点击postman右上角manage environments按钮);
5.安装node,成功后安装newman(npm install -g newman),再安装newman-reporter-html(npm install -g newman-reporter-html)
cmd下执行代码(代码意义:执行postman接口生成的json文件(有globals变量时加上对应的json文件),生成一个html的报告并放在设置的路径中):
注意:下方json文件及html文件的路径是我自己存放的文件路径,大家执行时需换成你们自己的路径,路径最好不要直接放在C、D、E盘中,最好放在子文件夹中;
newman run "E:\weather\WeatherPro.postman_collection.json" -g "E:\weather\Workspace.postman_globals.json" --reporters html --reporter-html-export E:\weather\demo.html
6.(Jenkins安装及构建大家额外学习,该文章不做太多描述)Jenkins中构建自由风格的任务(每天定时跑任务需选择“Build periodically“),再在Execute Windows batch command 中写入步骤5中执行的代码newman run "E:\weather\WeatherPro.postman_collection.json" -g "E:\weather\Workspace.postman_globals.json" --reporters html --reporter-html-export E:\weather\demo.html,保存并执行(build now)该任务;如果执行报错,则在Manage Jenkins=》Manage Nodes and Clouds=》master右侧设置按钮,增加path变量键:PATH 值:D:\program\nodejs;C:\Users\Administrator\AppData\Roaming\npm(npm路径可执行npm config get prefix查看);
此时再次执行任务,可执行成功;