前提:  

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

  

安装nodejs:

  因为我之前也是将jenkins搭建到服务器上的,所以我也将其他的环境也搭建在服务器上,我们服务器的linux系统版本是ubuntu 4.0 64位,安装步骤如下:

  1、下载安装包,在node官网下载:

  

  下载下来的是一个.tar.xz结尾的文件,将这个文件用xftp上传到服务器中,

  

  2、linux下解压tar.xz文件

  使用xz -d node-v6.9.5-linux-x64.tar.xz 解压成 node-v6.9.5-linux-x64.tar
  再用tar -xvf node-v6.9.5-linux-x64.tar解压,获得node-v6.9.5-linux-x64;
  目录名称太长不吉利,所以改名 mv node-v6.9.5-linux-x64 node,得到最终的node文件目录;
 
  3、初识node文件
  下载的这个版本的node有个好处,就是文件都是编译好的,也就是说在解压后的node目录中的bin目录中已经存在node文件和npm文件,可以进到./node/bin目录下确认,在bin目录下执行:
  ./node --version
  结果返回该node的版本v6.9.5;
  这个时候的node跟npm只是局部的执行文件,只能在bin目录下调用,需要设置为全局的;
  设置全局的方法很简单,就是在/usr/local/bin目录下分别创建一个link指向node/bin目录下的node文件跟npm文件;
  但是我搭建的时候遇到的问题是,系统中已经被安装了node,但是因为node版本太低,不能运行newman,要运行newman则node版本最低为4.xx;
 
  4、判断是否已经安装了node
  在./node/bin目录之外,执行node --version,如果有返回版本号,并且版本号还大于4.x.x,那么恭喜node不用重新装了,如果没有返回那直接执行创建link链接,如果有返回版本号,但是版本号还低于4.x.x,那么需要卸载已安装的node,删除已经存在的link链接;
  linux下删除安装的node: 
  sudo apt-get autoremove --purge node
  进入到/usr/local/bin目录下,确定有node跟npm的link链接,
  
  /usr/local/bin目录下,删除link链接:
  sudo rm -f node
  sudo rm -f npm
 
  5、创建新的link链接
  原有的node被卸载,link也被删除,现在系统中就只有新装的node跟npm,创建link链接,将node跟npm全局化:
  ln -s /home/lizihaoshiqi/node/bin/node /usr/local/bin/node
  ln -s /home/lizihaoshiqi/node/bin/npm /usr/local/bin/npm
  其中/home/lizihaoshiqi/node/bin/node为你自己系统中node文件的绝对路径,/usr/local/bin/node为新创建的node链接的绝对路径,npm同理;
  执行完成后,在其他目录下执行node --version,应该可以返回当前新安装的node版本号;
  至此,nodejs环境就安装完成了;
 
安装newman:
  很简单,在你想要安装newman的目录下,执行:
  npm -g install newman
  系统会自动安装,安装完成后,可以到/usr/local/bin目录下查看,自动创建了newman的link链接,指向的文件也是/node/lib/node_modules/newman/bin/目录下的newman.js文件,即会在node/lib/node_modules/目录下自动生成newman文件;
  
  在任意目录下,执行:newman --version  执行结果返回newman版本号,则newman安装完成;
 
导出postman文件:
  假定已经在postman中添加好了api请求,并都设置好了相应的环境变量以及test script,如下图选择需要的api collection,导出json文件,请重新命名一个好听的文件名,因为默认的文件名真的是又臭又长,如我的文件名:postman_collection.json
  

  之前说过对于设置了环境变量的api,导json文件的同时,需要到处环境变量文件,否则api中的变量没有意义,如下图,选择相应的环境,到处环境变量文件,改名:environment.json

  

手动跑脚本:

  将到处的api的json文件和环境变量的文件都上传到服务器系统中适当的目录下,在该目录下执行如下命令:

  newman -c postman_collection.json -e environment.json

  系统就会自动运行api的json文件,并返回执行结果;

  相信到这一步,再怎么集成到jenkins就已经很明确了,因为系统中已经有了newman环境,在jenkins相应的任务中,构建命令选择linux shell,先切换到json文件所在的目录,再执行newman的命令,点击构建,在构建日志中就能看到每个api的测试结果,以及每个断言的判定结果;

  

  结合前面的github的push操作触发jenkins构建postman的api脚本运行,这一些列的设置都已经结束,可以通过实际操作github来验证一把,希望你能运行成功,至少我已经能保证正常运行了,哈哈~~~~

  

  
 

四、jenkins+postman+newman环境搭建的更多相关文章

  1. 第四章Android移植环境搭建

    第四章Android移植环境搭建 这一章主要学习如何搭建 Android 移植的环境.因为 Android 底层是基于 Linux 内核的,所以本章从交叉编译环境等嵌入式开发环境的搭建开始,介绍了 B ...

  2. Hadoop 系列(四)—— Hadoop 开发环境搭建

    一.前置条件 Hadoop 的运行依赖 JDK,需要预先安装,安装步骤见: Linux 下 JDK 的安装 二.配置免密登录 Hadoop 组件之间需要基于 SSH 进行通讯. 2.1 配置映射 配置 ...

  3. 持续集成-jenkins介绍与环境搭建

    什么是持续集成? 转自:https://blog.csdn.net/tanshizhen119/article/details/80328523 持续集成,俗称CI, 大师Martin Fowler对 ...

  4. jenkins在linux环境搭建-公司系统

    1.按照这个搭建的项目https://www.cnblogs.com/zishengY/p/7170656.html 2.配置权限https://blog.csdn.net/mynameissls/a ...

  5. jmeter + ant + jenkins 自动化集成环境搭建

    所需工具 一.jmeter 工具下载 https://jmeter.apache.org/  配置环境JDK等及各种插件 二.Ant安装(http://ant.apache.org/) 安装Ant是为 ...

  6. 《天书夜读:从汇编语言到windows内核编程》四 windows内核调试环境搭建

    1) 基础篇是讲理论的,先跳过去,看不到代码运行的效果要去记代码是一个痛苦的事情.这里先跳入探索篇.其实今天的确也很痛苦,这作者对驱动开发的编译与调试环境介绍得太模糊了,我是各种尝试,对这个环境的搭建 ...

  7. Spark环境搭建(四)-----------数据仓库Hive环境搭建

    Hive产生背景 1)MapReduce的编程不便,需通过Java语言等编写程序 2) HDFS上的文缺失Schema(在数据库中的表名列名等),方便开发者通过SQL的方式处理结构化的数据,而不需要J ...

  8. jenkins安装及环境搭建

    Jenkins 是基于Java开发的一种持续集成工具,所以,Jenkins需要Java环境. Jenkins版本是: JAVA版本是: Tomcat版本是: 或者 Jenkins版本是:2.10.2 ...

  9. Hadoop环境搭建|第四篇:hive环境搭建

    一.环境搭建 注意:hive版本不能太高,否则会出现兼容性问题 1.1.上传hive安装包 创建文件夹用于存放hive文件命令:mkdir hive 1.2.解压hive安装包 命令:tar -zxv ...

随机推荐

  1. php序号发生器,数字重组,可以隐藏原来的1,2,3。。。

    一个晚上的成果,原理: 将1,2,3,4,5,6,7,8,9,0映射到9,5,1,0,4,8,7,3,2,6 同理映射base,base有1-10种数组,也就是可以一位数到10位数 $base 实际上 ...

  2. hiho1514 偶像的条件 lower_bound

    时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi的学校正面临着废校的大危机.面对学校的危机,小Hi同学们决定从ABC三个班中各挑出一名同学成为偶像. 成为偶像团体的 ...

  3. stm32寄存器版学习笔记02 串口通信

    stm32F103RCT6提供5路串口.串口的使用,只要开启串口时钟,设置相应的I/O口的模式,然后配置下波特率.数据位长度.奇偶校验等信息,即可使用. 1.串口的配置步骤 ①串口时钟使能 APB2外 ...

  4. BZOJ4150 AMPPZ2014 The Staging 【线段树】*

    BZOJ4150 AMPPZ2014 The Staging Description 在舞台上有n个枪手,第i个枪手瞄准了第p[i]个枪手,将于第u[i]秒开枪.一个枪手如果成功开枪, 那么被瞄准的枪 ...

  5. BZOJ3083 遥远的国度 【树链剖分】

    BZOJ3083 遥远的国度 Description zcwwzdjn在追杀十分sb的zhx,而zhx逃入了一个遥远的国度.当zcwwzdjn准备进入遥远的国度继续追杀时,守护神RapiD阻拦了zcw ...

  6. hexo个人博客搭建

    遇见西门的个人博客 https://www.simon96.online/ 内容详细!

  7. Git之安装管理

    1.Git安装部署 Git是分布式的版本控制系统,我们只要有了一个原始Git版本仓库,就可以让其他主机克隆走这个原始版本仓库,从而使得一个Git版本仓库可以被同时分布到不同的主机之上,并且每台主机的版 ...

  8. lapis docker 运行说明

    1. lapis docker 镜像制作 因为openresty 新版本一个json 库的问题,我们使用的是 openresty:1.11.2.1 基础镜像 FROM openresty/openre ...

  9. Mybatis逆向工程配置文件详细介绍(转)

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration ...

  10. phpMyAdmin“缺少 mcrypt 扩展。请检查 PHP 配置。”解决办法

    在ecmall二次开发中因php版本要求低于5.3,而如下更新要求升级PHP,所以以下方式不适合于ecmall商城项目. 解决办法:安装php-mcrypt libmcrypt libmcrypt-d ...