postman+newman+jenkins持续集成搭建

搭建环境之前需要先理清楚各个环境的依赖关系,jenkins只支持windows命令行跟linux shell环境执行构建命令,而postman的测试脚本不能直接在命令行或shell环境执行,postman脚本需要有自己的执行环境,叫newman;而postman是基于javascript语言,所以newman环境还依赖于javascript的环境nodejs;所以整个过程是先搭建nodejs构造javascript环境,在搭建newman构造postman脚本运行环境,在集成到jenkins上;

安装nodejs

下载nodejs,地址如下

https://nodejs.org/en/

安装nodejs,只需要下一步,直至完成,完成后,在命令提示符框中查看node 和npm的版本

查看nodejs版本

安装newman

在npm安装成功的基础上,我们再安装newman

输入:npm install newman -global

完成后查看版本信息:newman --version

成功弹出来,说明安装成功了

查看newman版本

在postman中导出用例

将postman中已经写好断言的用例导出,我选择的这个用例很简单,访问百度首页,并断言状态值是200,步骤如下

点击所选用例右侧的三个点,选中其中的export进行导出,导出选项中选择默认即可,点击 export后会弹出让你选择位置的窗口,放在你希望的位置,是个json文件,我放在D盘根目录下


步骤1


步骤2

导出成功后,可以用命令行执行看下效果,进入到D盘(即json文件存放的地方),输入:newman run 文件名     然后回车

执行的结果如下,说明断言成功,接下来我们用 jenkins实现这样的效果

cmd中执行newman

使用jenkins执行

因为我之前安装过jenkins,所以下面直接用,后面会补充安装这块内容。

输入本地ip:8080,可以打开已经启动的jenkins页面

1.新建一任务,类型选自由风格,填写任务名后点击确定

2.填写描述、选择构建方式和命令(这里的命令和我们在命令行里输入的一样)

创建任务
配置任务1


配置任务2

完成后点击 立即构建 ,其实就是开始运行的意思


立即构建

构建完成后,发现失败了,点击构建记录 会跳转到下图,点击 控制台输出

其中,路径都是正确的 ,和我们在cmd中执行的一致,可是却提示 “newman 不是内部或外部命令,也不是可运行的程序”

构建失败

当用命令执行时正常,使用jenkins执行命令时报错,有两个解决方法:

方法一

因为Jenkins的工作环境下与windows的默认环境有所区别,我们只需要配置一下Jenkins的环境变量即可 

系统管理->管理节点->选择需要使用的主机->配置从节点 

新建一个键值对列表,键名PATH,把npm和nodejs的路径放进来即可 

其中的npm与nodejs的路径不在同一个目录下,nodejs安装的路径在 安装过程中能看到,我这里是C:\Program Files\nodejs

而npm 建议同学们可以在C盘搜索npm ,我就是这样找到的,路径是C:\Users\YuGer\AppData\Roaming\npm

配置完成后,一定要记得重启,在网址:8080后加上 /restart


重启jenkins

方法二:

不需要设置节点管理

执行json文件前,需进入到npm目录中,比如我的npm路径是C:\Users\YuGer\AppData\Roaming\npm,jenkins的工作区也在C盘,所以我需要使用c\ 来到根目录,即批处理命令中这样写:

cd\

cd C:\Users\YuGer\AppData\Roaming\npm

newman run d:\test.postman_collection.json

构建后状态是成功

解决乱码问题

执行成功后遇到了乱码问题

网上搜了一圈,找到了解决方案

1.在 jenkins--系统管理--系统配置中,勾选环境变量,输入下图键值对

键:JAVA_TOOL_OPTIONS

值:-Dfile.encoding=UTF-8

2.在 我的电脑 右击--属性-高级系统设置,添加一环境变量,和上面的一样。

再重新构建,这时日志中不会出现乱码了

jenkins中配置环境变量



windows系统中配置环境变量


持续集成可以用到哪些地方?

1)冒烟测试

将所测项目的主流程用例编写后,放到jenkins中,这样每次提测后(主流程未修改)就可以直接运行该任务,看该版本是否能通过冒烟测试

2)造数据

项目中有时候会需要一些测试数据,而这样的测试数据往往需要在页面上操作好多页面才能得到,这时也可以将接口在postman中写好后,放在jenkins中来执行

3)……

其他用处我现在还没想好,原谅我的目光短浅,才刚刚接触 jenkins 她的优点还需要时间来探索

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,240评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,328评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,182评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,121评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,135评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,093评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,013评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,854评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,295评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,513评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,678评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,398评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,989评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,636评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,801评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,657评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,558评论 2 352