DevOps绿灯测试之jenkins+newman+postman实现api自动化测试

前言
公司为创业公司,无运维人员,为减轻运维压力并且能及时发现线上接口问题,故实现线上api自动化测试功能。

线上api接口自动化测试作用及解决的问题:

  • 当服务端改动功能或者添加新功能时,新发布程序后,避免新开发功能导致其他关联功能存在问题,通过持续集成,服务端发布触发接口测试代码运行,尽早发现问题;
  • 抽取部分接口测试用例,定时运行程序,对线上常用的业务操作进行监控,及时发现修复。

本次接口自动化实施最终思路方案:

  • 技术选型参考以下方案:

在面向API开发的沟通时使用Swagger作为API文档
在Spring的单元测试和集成测试中用Spring MockMVC
在API手工测试时使用Swagger或Postman
在基于API的自动化功能测试时使用Jenkins + Newman + Postman
在对API做手工性能测试时用JMeter
自动化性能测试用Jenkins + Maven + JMeter

  • 经过多次试验,本次选择jenkins+newman+postman实现api自动化测试。同时生成对结果的统计分析,生成测试报告展示给使用者。
  • Postman本身的脚本功能足够强大,方便扩展。接口间的数据依赖也可以用Tests设置环境变量,断言可以判定请求是否成功。而且postaman提供了各种主流语言的接口代码转换。Postman按Collection管理用例,导出json文件需要规划好,不然会存在json太多的管理问题。
  • newman也支持使用在线文件执行,json文件可以在web端维护。收费版主要是它cloud端的监控、在线文档、API调用等的额度限制,目前的需求不需要用收费版功能

安装软件环境

  • 环境说明: postman基于JavaScript语言,postman的脚本(json文件)运行依赖newman环境,而newman环境依赖JavaScript的环境nodejs。
  1. 安装nodejs
    1.1 下载安装包:https://nodejs.org/en/
    安装nodejs
    1.2 安装:直接点击安装程序,下一步,等待程序安装完成;(安装程序会自动将node环境变量添加到PATH中)
    nodejs安装环境变量
    安装nodejs环境变量安装nodejs环境变量安装nodejs环境变量
    1.3 验证nodejs是否安装成功:打开dos命令窗口,输入node -v,出现版本号,即安装成功了
    验证nodejs是否安装成功
  2. 安装newman
    2.1dos命令窗口输入:npm install -g newman
    2.2验证newman是否安装成功,输入newman -v,查看到版本号即安装成功
    验证newman是否安装成功
  3. 安装postman
    3.1.下载安装包:https://www.getpostman.com
    安装postman
    3.2 安装:直接点击安装程序,下一步,等待程序安装完成;
  • 集成jenkins
    4.1.下载安装包:https://jenkins.io/index.html
    安装jenkins详细教程
    4.2.jenkins安装:点击安装程序,点击下一步,进行安装。
    4.3.jenkins安装成功后,本地浏览器输入:localhost:8080(默认8080端口)
    jenkins详细安装教程
  1. jenkins+newman+postman实现api自动化测试实现

    5.1 postamn的使用

    • 5.1.1启动postman,添加接口访问,输入必要的参数,点击send,确认服务器返回值是正确的
      postman的使用教程5.1.2将该接口保存到集合中
      postman的使用教程-导出json文件
      5.1.3Tests的使用:Tests可以添加一些断言来判定请求是否成功。postman的使用教程-Tests的使用断言
      5.1.4导出postman的json文件
      postman的使用教程-导出json文件postman的使用教程-导出json文件
      5.1.5 dos窗口运行json文件:先在dos窗口运行.json文件,查看运行结果是够符合预期
      newman run C:\fun\test.json
      newman命令能执行.json文件
      dos窗口运行json文件

    5.2集成jenkins

    • 5.2.1在系统设置—管理插件中添加HTML Publisher plugin插件
      5.2.2新建一个自由风格的Item
      jenkins的使用教程-新建一个自由风格的Item
      5.2.3【构建】选项中,选择“增加构建步骤”,选择“Execute Windows batch command”
      jenkins的使用教程-执行Windows批处理jenkins执行Windows批处理
      ps:此处注意结尾要添加exit 0.不然会即使构建成功控制台还是输出失败。
      jenkins-构建成功控制台显示失败
      ps:newman的指令要带上newman的全路径,不然jenkins会报'newman' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
      jenkins+newman+postman实现api自动化测试
      5.2.4控制台输出
      jenkins+newman+postman实现api自动化测试-控制台打印jenkins+newman+postman实现api自动化测试-控制台打印jenkins+newman+postman实现api自动化测试-控制台打印
      以上便是在windows上利用postman+newman+jenkins实现API自动测试的搭建。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章