前言
Newman是一个基于nodejs语言的命令行工具,主要用于执行Postman 的collection,基于这个命令行工具,可以定时执行脚本,然后执行结果,判断要测试的接口是否正常,如果出现错误,则可以进行告警。
一、环境搭建
nemman --version
npm outdated -g 查看过期版本
npm install -g newman@4.0.0 安装指定版本
npm install -g newman 安装最新版本
二、测试用例准备
在postman新建collection,增加接口;使用JavaScript添加断言测试。
三、通讯的3种方式,重点使用第三种
1、访问链接:也支持通过 url 作为参数来运行
newman run https://www.getpostman.com/collections/xxxx
2、访问下载文件:支持本地 json 文件作为参数来运行
json 文件可以从 Postman 导出,选定某个 collection,你可以轻易的导出你的 Postman Collection 另外存储为一个 json 文件,然后放到你本地目录进行运行
newman run "Passing Postman collection.postman_collection.json"
3、通过API和collection通讯
1)点击:Using Newman with the Postman API:https://www.postman.com/integrations/#postman-integrations
2)获取Generate an API key:https://documenter.getpostman.com/view/631643/JsLs/?_ga=2.141691378.1765402775.1606981807-2062058568.1606981807
3)执行接口,通过API keys获取该账户下collection的信息,获取collection对应的uid:https://api.getpostman.com/collections?apikey=xxx
将所需要的collection 的id记录下来(每个collection的uid不一样):
用uid 取到collection的链接,访问链接:https://api.getpostman.com/collections/$uid?apikey=$apiKey
进入终端,使用api执行collection
newman runhttps://api.getpostman.com/collections/xxxxx?apikey=PMAK-xxxxx
环境变量配置
把环境变量下载在当前目录
1)导出环境变量,进入路径下执行Newman
newman run https://api.getpostman.com/collections/xxx?apikey=PMAK-xxx--environment "XX.postman_environment.json"
2)使用api抓取到,获取apikey下的所有环境变量
https://api.getpostman.com/environments?apikey=PMAK-xxxx
三、持续集成
1、Jenkins搭建,并确保Jenkins所在服务器已安装npm、node和newman
2、启动并访问Jenkins
1)查找jar包路径:mdfind -name jenkins.war
2)进入路径下,修改端口号执行启动:java -jar jenkins.war --ajp13Port=-1 --httpPort=8081
3) 启动后访问链接:http://localhost:8081/
3、配置执行脚本
4、生成测试报告
脚本命令拼接报告命令
newman run "https://api.getpostman.com/collections/xxx?apikey=PMAK-xxx" --environment "https://api.getpostman.com/environments/xxx?apikey=PMAK-xxx" --reporters cli,junit --reporter-junit-export "newman/report.xml"
5、Jenkins配置测试报告路径,识别显示
6、配置HTML报告。