设为首页 收藏本站
查看: 990|回复: 0

[经验分享] Postman+Newman+Jenkins APItest自动化集成测试

[复制链接]

尚未签到

发表于 2018-1-9 14:46:59 | 显示全部楼层 |阅读模式
  postman做接口测试简单易用很容易上手,但是接口越来越多,每次手动点击runner进行测试不灵活,最近就研究了下newman,利用newman实现接口的自动化测试,但是每次需要命令行操作也不方便,就想着利用Jenkins做真正的自动化测试,刚好部门有现成的Jenkins环境就用了起来,目前已经实现了接口的自动化测试。postman导出的json文件直接上传git,Jenkinsjob配置git路径,每次只要点击下job就可以进行接口测试或者有新的接口更新也会实现自动化测试,同时可以发送邮件告知同事测试结果,非常方便。
  一、环境配置
  1、安装postman:Google插件下载或者postman应用下载,很简单,不说了
  2、安装newman:
  第一步,安装nodejs。很简单,之前的appium使用中有讲过,感兴趣的可以自己去看,这里不再赘述。
  第二步,在nodejs命令行安装newman,即命令行输入如下命令:
  npm  install -g newman

  3、安装Jenkins:下载war包或者zip包安装都可以,具体在之前的sonarqube持续化有讲过,这里不再赘述。
  环境配置完成就可以进行json文件的导出了。
  二、postman接口文件导出
  为了满足能够同时运行所有的API及只运行指定的API集合,在postman中创建一个collection,里面包含多个folder,具体好处后面便知。
  点击collection右侧的。。。按钮,选择Export,弹框中选择Export按钮,就可以把collection中的内容导出到本地,存为json格式的。

  这里为了切换环境方便及变量使用方便,我配置了环境变量及全局变量,为了能在newman中运行起来,环境变量及全局变量也要导出,具体如下:
  点击postman右侧的设置按钮,选择manage Environments,点击环境变量后面的下载按钮,即可将环境变量导出,导出的格式为json类型。

  同样,点击manage Environments页面中的Global,点击Download as JSON按钮,即可导出全局变量

  相关的文件数据导出后就可以在newman中进行验证性测试了。
  三、Newman的使用
  1、本地运行自动化测试命令:
newman -c C:\Users\hexueqin\Desktop\serverApiTest.postman_collection.json----这种写法已经废弃,但是用还是可以用的,不过还是用最新的好,否则Jenkins上会报错。2、生成测试报告,支持html,xml,json,cli4种。newman run C:\Users\hexueqin\Desktop\serverApiTest.postman_collection.json  --reporters html,junit --reporter-html-export d:\html01.html --reporter-junit-export d:\xml01.xml3、含有环境变量,全局变量的自动化测试命令:指定执行对应的folder常见命令:run --运行newman的命令-e  加载环境变量的数据-g  加载全局变量的数据-n case运行次数,默认运行次数为1次--folder  运行collection中的指定folder--reporters html,junit  指定生成报告的类型其它命令可在github上查看:https://github.com/postmanlabs/newman#configuring-reporters举例:newman run C:\Users\hexueqin\Desktop\apiTest.postman_collection.json -e C:\Users\hexueqin\Desktop\dev-environment.postman_environment.json -g C:\Users\hexueqin\Desktop\globals.postman_globals.json --folder visitApi --reporters html --reporter-html-export d:\result.html本地运行结果显示:注意:如果指定生成报告,就不显示具体的请求执行及结果。本地生成HTML文件的查看:四、Jenkins中job配置及运行1、新建job,名字自己取即可2、配置脚本:(需要在Jenkins服务器本地安装newman程序)3、添加HTML报告:4、运行job后查看报告:自此,postman自动化测试可以顺利的跑起来了,邮件暂时没有添加,具体添加可以参考sonarqube中的配置。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-433258-1-1.html 上篇帖子: [ci]jenkins-slave-ssh docker容器化-用户名密码 下篇帖子: Jenkins介绍和安装及配合GitLab代码自动部署
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表