Linux下使用postman+newman+jenkins实现简单的接口自动化测试

文章目录

  • 一、操作环境
  • 二、使用postman生成脚本
    • 2.1 历史上的今天开发文档
    • 2.2 Postman使用
  • 三、使用newman试运行脚本
  • 四、使用jenkins持续集成

一、操作环境

需要java、postman、newman、tomcat、jenkins环境
安装java: https://blog.csdn.net/qq_39680564/article/details/82768938
安装newman:https://blog.csdn.net/qq_39680564/article/details/84775303
安装tomcat:https://blog.csdn.net/qq_39680564/article/details/84791141
安装jenkins:https://blog.csdn.net/qq_39680564/article/details/84792090
安装postman:官网下载自己的版本:https://www.getpostman.com/apps

二、使用postman生成脚本

为了方便测试,我们调用聚合的免费接口

2.1 历史上的今天开发文档


1、事件列表
接口地址: http://api.juheapi.com /japi/toh
返回格式: json
请求方式: http get/post
请求示例: http://api.juheapi.com /japi/toh?key=您申请的KEY& v=1.0& m onth=11& day=1
接口备注: 查看某月某日的事件列表
请求参数说明:

名称 类型 必填 说明
key string 接口使用权限的key值
v string 版本,当前:1.0
month int 月份,如:10
day int 日,如:1

2、根据ID 查询事件详情
接口地址: http://api.juheapi.com /japi/tohdet
返回格式: json
请求方式: http get/post
请求示例: http://api.juheapi.com /japi/tohdet?key=您申请的KEY& v=1.0& id=4847
接口备注: 根据ID 查询事件详情
请求参数说明:

名称 类型 必填 说明
key string 接口使用权限的key值
v string 版本,当前:1.0
id int 事件ID

2.2 Postman使用

1、新增测试集
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第1张图片
输入名称和描述
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第2张图片
测试集创建成功
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第3张图片
2、创建请求
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第4张图片
输入请求名称和描述
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第5张图片
创建成功
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第6张图片

3、参数化主机名
将聚合的主机名和key值参数化,并设为全局变量,方便调用

点击右上角的齿轮
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第7张图片
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第8张图片
输入环境变量名称和对应的值
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第9张图片
选择我们的环境变量
在这里插入图片描述
4、编辑第一个请求,点击send发送请求
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第10张图片
编辑第二个请求,send测试
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第11张图片
5、设置断言
点击tests,选择断言类型
第一个:返回值断言,判断返回值是否200
第二个:文字断言,判断返回值中是否包含该文字
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第12张图片
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第13张图片
试运行
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第14张图片
6、返回值参数化
现在想将第一个请求获取到的事件ID设为全局变量,供第二个请求使用
在想要设定的返回值上,右击,set为id
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第15张图片
id就设置为全局变量
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第16张图片
7、导出测试集和环境变量脚本
在测试集上选择Export导出测试集
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第17张图片
在环境变量里下载,导出环境变量脚本
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第18张图片

三、使用newman试运行脚本

将脚本上传到服务器上,使用newman命令,试运行脚本。
newman常用命令

  • run 运行newman的命令
  • -e 加载环境变量的数据
  • -g 加载全局变量的数据
  • -n 用例执行次数,默认运行次数为1次
  • --reporters html,junit,json 指定生成报告的类型
  • --folder 运行collection中的指定folder
newman run 1.json -e env.json

试运行结果
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第19张图片
运行并生成html格式的报告,可以在当前目录的newman目录下看到报告

注意:如果指定生成报告,就不显示具体的请求执行及结果,需要提前安装html插件。
安装命令

npm install -g newman-reporter-html --registry https://registry.npm.taobao.org/

生成html格式的报告

newman run 1.json -e env.json -r html --reporter-html-export /usr/share/nginx/html/htmlReport.html

--reporter-html-export参数表示报告另存路径。

Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第20张图片
更加花哨的测试报告,安装htmlextra插件。

npm install -g newman-reporter-htmlextra --registry https://registry.npm.taobao.org/

使用

newman run 1.json -e env.json -r htmlextra --reporter-htmlextra-export /usr/share/nginx/html/htmlReport2.html

Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第21张图片

四、使用jenkins持续集成

创建一个新任务,名称可以任意
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第22张图片
选择自由风格
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第23张图片
点击配置
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第24张图片
选择在构建后执行shell
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第25张图片
输入shell脚本
Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第26张图片

cd /root;
newman run 1.json -e env.json

保存构建,控制台输出查看Linux下使用postman+newman+jenkins实现简单的接口自动化测试_第27张图片

你可能感兴趣的:(Jenkins)