文章已同步到 github.com/abc-club/fr…
更多前端资源尽在 github.com/abc-club/fr…
求star!!!
求star!!!
求star!!!
名词解释
postman
主要用于模拟网络请求包 快速创建请求 回放、管理请求 快速设置网络代理
newman
newman是postman的命令行指令,允许我们在命令行中运行postman collection.
jenkins
Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
准备工作
安装postman
没有太多注意事项,直接[官网下载](https://www.getpostman.com/downloads/),然后安装
安装newman
** 必须选安装node和npm **
```
$ npm install -g newman
$ newman -v
```
安装jenkins
postman的使用与导出
下面以网易云音乐登录,然后用接口返回的userId获取用户信息为例
- 创建test文件夹
- 定义环境,并设置变量
注意我这里用的是网易云音乐的接口,项目地址:github.com/Binaryify/N…
- 登录
先增加两个变量:phone和password
接下来便可以使用这几个变量了
- 获取用户信息 保存userId到变量
var data = JSON.parse(responseBody);
if (data.code === 200) {
tests["login api"] = true;
pm.environment.set("userId", data.profile.userId);
}
else {
tests["login api"] = false;
}
点击send后,我们可以看到userId被保存到变量中了
开始获取用户信息,这里为了演示更复杂点的功能,我们在header里加个时间戳吧
timestamp = new Date();
postman.setGlobalVariable("timestamp",timestamp);
var data = JSON.parse(responseBody);
if (data.code === 200) {
tests["userDetail api"] = true;
}
else {
tests["userDetail api"] = false;
}
- 执行test文件夹中所有的请求
- 导出test文件和环境变量文件
导出请求文件
导出环境变量文件
jenkins配置
- 新建任务
- 填写任务信息
- 配置
// 注意这里的PATH要改成你的npm的路径,否则找不到newman命令
export PATH=/Users/isaacho/.tnvm/versions/alinode/v3.11.4/bin:$PATH
newman run /Users/isaacho/Documents/test.postman_collection.json -e /Users/isaacho/Documents/test.postman_environment.json
- build
到这里已经大功告成了!!!
可能遇到的问题
-
build失败,提示找不到命令 那请注意你的PATH是否正确
-
build没有权限 jenkins用户没有读写postman_collection.json和postman_environment.json的权限,可以给jenkins修改文件夹的权限