系统环境 : CentOS Linux release 7.4.1708 (Core)
JDK:java version "1.8.0_131"
Tomcat: apache-tomcat-8.5.33
Jenkins: 2.242
一、安装JDK
Jenkins是基于Java开发的持续集成系统(CI),所以运行环境必须安装JDK,安装JDK的方法有很多种,有些Linux系统可能会自带openjdk,需要注意的是较新版本的jenkins并不支持低版本的JDK.
1. 卸载系统自带的JDK
- rpm -qa | grep jdk
-
- yum -y remove java*
2. 安装JDK并配置环境变量
tar -zxvf jdk-8u131-liunx-x64.tar.gz -C /usr/local/jdk
3. 配置环境变量
- vim /etc/profile
-
- JAVA_HOME=/opt/jdk1.8.0_131
-
- JRE_HOME=$JAVA_HOME/jre
-
- PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
-
- CLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/dt.jar
-
- export JAVA_HOME JRE_HOME PATH CLASSPATH
source /etc/profile
二、安装Tomcat
1. 安装软件 : apache-tomcat-9.0.0.M1.tar.gz(下载地址http://tomcat.apache.org/);
2. 用FTP工具传到服务器上,解压unzip tomxxx命令(如无此命令则需要先安装unzip命令,yum install unzip);
3. 设置Tomcat端口:进入conf目录,vim server.xml ;
(如端口无重复则不需要特意更改端口)

4.进入Tomcat的bin目录启动Tomcat
执行: startup.sh -->启动tomcat
执行: shutdown.sh -->关闭tomcat
- firewall-cmd --permanent --zone=public --add-port=8080/tcp
-
- firewall-cmd --reloa
三、安装Jenkins
Jenkins有两种安装方式,官网提供的rpm包安装和下载war包直接运行


查看Jenkins的安装路径

修改Jenkins的端口和Jenkins调用JDK的路径





rpm包安装的密码路径

Jenkins的war包下载路径
https://mirrors.tuna.tsinghua.edu.cn/jenkins/war/2.242/
因为已经安装了Tomcat,故直接下载war包即可,下载完成后使用FTP工具传到服务器上Tomcat对应的webapps文件夹;
访问http://localhost:8080/jenkins,会提示你去一个目录查看密码,把密码复制进来就可以进入了

![]()
输入密码后,正常情况下,会进入安装插件页面。点击Install suggested plugins,安装Jenkins建议安装的插件。
不推荐安装自定义插件,有可能因为网络原因无法安装成功,可后期离线安装插件


离线插件地址:
配置Jenkins上的robotframework环境
本次选择robot版本为2.1.2

手动安装插件,进入该菜单后,点击高级,可以上传通过上面链接下载的插件后安装。

上传成功后,插件自动安装。安装成功后,重启Jenkins后生效。


四、配置Slave
jenkins中slave节点连接的两种常用方式。
任务一般是在slave上面运行的。当然不是讲master节点不能跑任务,master节点主要是处理调度构建作业,把构建分发到slave节点进行实际执行,监视slave节点的状态(必要时让它们进行上线或者离线),记录和发布构建产物。
主要常用的的连接slave节点的方式就是通过ssh和jnlp。两个特点分别如下:
Windows Slave安装OpenSSH,并启动ssh服务,测试ssh的22端口是否开启。

Jenkins安装Publish Over SSH插件。

在Jenkins管理界面中,依次打开:系统管理--》系统设置--》Publish over SSH部分,按照下图进行配置,并测试Jenkins的master能否ssh远程连接到Slave。


远程调用windows并运行robotframework自动化测试脚本,需要先添加slave。
1、进入系统设置页面,进入manage nodes,新建节点;

2、填写数据,并发数填1,远程工作目录是设置此节点远程工作目录的路径,在这个节点上运行的Job都会保存到工作目录里,此配置项必须设置;在D盘新建一个目录即可。

3、用法:尽量使用这个节点;启动方式选择launch agent by connection it to the master,然后保存。
(如果找不到此启动方式,需要在安全设置中修改一下配置,具体操作如下)
4、进入系统管理---》全局安全配置(Configure Global Security)


设置为“随机选取”,并在代理协议中勾选全部选项;

Enable Agent需要打钩选中

保存后,slave配置界面中可以看到启动方式就会有launch agent by connection it to the master选项了。
5、保存之后保存之后点运行,会下载一个java文件到本地,双击运行之后看到已连接后,刷新页面,此时节点就已经连上了。

在高版本Jenkins,随机选取下的代理协议已经没有Java Web Start项了,只有一个Inbound项。



按以下方式进行配置:

配置好以后查看如何启动Slave


切换到Slave节点服务器按顺序执行以上三个command
产生两个文件agent.jar和slave-agent.jnlp

到此master与Slave已经连接上



五、配置Job执行测试计划
在windows执行RobotFramework自动化测试用例,首先需要设置全局变量Path,指定pybot.bat和浏览器的路径


在Slave节点也需要配置Path


配置Job
1、在Jenkins首页的左侧菜单栏,点击新建任务,输入一个任务名称,并选择“构建一个自由风格的软件项目”,点击确定进入配置Job页面。


Restrict where this project can be run: 前面的标签就在这里用上了。用来指定这个Job在哪个标签的slave上执行。


每天2:00 必须build一次源码

其他默认
2、构建,选择Windows命令,在Execute Windows batch command中输入执行的命令行,执行

-d 指定robot日志生成的目录,最后参数目录下所有robot文件都会被执行,要具体参数可以再windows Slave 执行pybot.bat --help查看。
生成报告路劲需要和项目路径保持一致。

3、回到列表选中刚添加的job,点击build now;
PS: 因为用户名与密码设置错误所以测试用例结果都为Fail

查看日志;


注: 构建或部署成功后,会出现(report.html和log.html 无法打开)

执行以下脚本System.setProperty("hudson.model.DirectoryBrowserSupport.CSP","")

