基于postman的接口自动化测试
背景
公司的项目有几十个接口,生产环境与测试环境都需要测试,每次版本迭代测试都是让人非常头痛.
希望能通过自动化来完成,最好能用命令行来完成,以便集成到Jenkins中.
环境与工具
Postman - Chrome插件 也有APP的版本,可以从官网下载
NewMan 是基于Node.js的工具
(嘿嘿具体的安装就不介绍了)
2.1. postman的使用
1.左边是Collections,我创建了项目wxplatform 并建立了两个目录 wxCoreService和WxZuul
wxCoreService 下建立了三个测试用的接口
remote
testRedis
getObject
2.右边是具体接口的地址和参数数据,可以点Send发送,可以在下面看到服务器的返回结果
3.修改后,可以点Save保存
4.右上解的wxuat是我的测试环境
里面加入了环境变量,例如 地址栏中的{{hostip}} , 不同的环境切换不同的ip,
2.2 newman的使用(需要先安装node.js)
命令行示例:
newman run D:\test\wxplatform.json.postman_collection -e D:\test\wxuat.postman_environment -r cli,html --reporter-html-export D:\test\htmlOut.html
解释一下这条命令
D:\test\wxplatform.json.postman_collection 是刚才从postman中导出的所有接口的collection
-e D:\test\wxuat.postman_environment 是指定环境变量 同样是从postman中导出
-r cli,html 是指定报表的格式
--reporter-html-export D:\test\htmlOut.html 指定导出路径
运行这个命令的结果:
总结
可以看见,其实postman是一款非常好用的工具,我们完全可以用它验证接口,当有海量接口需要进行测试可以通过postman runner(就不介绍了)或者newman 来完成非常方便
后续可以放到Jenkins中定时执行.VeryGood