Jenkins Robot framework 持续集成环境搭建
为什么我们要引入RF?其实最初我们引入RF是为了能够快速的开展自动化验收测试,为敏捷保驾护航。这其中有个重要的工具Jenkins,同时也是应群里朋友们的要求,这次就来介绍一下RF如何快速便捷的结合Jenkins这一利器在windows上进行自动化测试(linux我没机器,大体步骤差不多,度娘应该有)。
其实个人觉得RF和Jenkins的结合很简单,概括一下就这几点:
1、下载Jenkins
2、添加节点
3、安装robotframework插件
4、配置job运行测试
如果你已经在使用Jenkins了,那么1、2点应该可以跳过了。因为贫道比较懒,所以推荐的也是懒人大法,OK,让我们开始吧。
一、下载Jenkins
下载地址:http://mirrors.jenkins-ci.org/
贫道比较推荐下载war包的,进入上面的地址,页面里有war的链接,各种类型各种版本的release,大家根据自己需要来下载吧,具体英文含义请问度娘。
如果对Jenkins版本没特别的要求,就进war的第一行release里面找最新版本用吧。
为啥war包最简单呢?如果你有tomcat,那么把war包放到他的webapps目录里就可以了,直接启动你的tomcat即可。
通常访问路径是http://localhost:8080/jenkins
如果你没有tomcat,那就更简单了,我不会教你怎么去安装tomcat,jenkins的war包里内置了jetty,我们直接用命令行java -jar jenkins.war就可以启动了。如下图:
当然我更推荐这样的方式,因为jetty的方式直接就可以让其他人访问了,可以看到上图倒数第5行的地址 0.0.0.0:8080,直接就把本机变成服务器了。
而在tomcat里还要修改配置ip为0.0.0.0才行。所以,对和我一样的懒人来说,这样方便了很多。
当你看到一行信息:Jenkins is fully up and running,就代表Jenkins的服务已经启动了。
推荐大家在chrome里访问,速度会快些,打开我们的jenkins地址:http://192.168.1.6:8080(IP以你本机IP为准,也可用localhost,比起tomcat来说,url还不用写jenkins),会看到如下图的页面:
这样一个基本的Jenkins就完成搭建了,很简单吧,一个命令行搞定。
当然,有很多的插件会使我们更方便使用Jenkins,但是这个不是我这篇文章要讲的内容,有需要可以自行度娘,刚才下载war的页面有个plugin的链接就是插件的下载地址。
我简单推荐几个常用的插件:
ant、dashboard-view、disk-usage、subversion等等,现在的Jenkins比较成熟了,插件也是有多种多样,找适合自己使用的插件安装吧。
二、添加节点
我们启动Jenkins服务的这台机器在Jenkins里叫做master,而其他的连到master上的机器(物理机、虚拟机都可以)都是slave,也叫节点。
1、点击系统管理,然后点击管理节点,就看到如下界面:
2、点击新建节点
(这是静态连接的方式,就是我先设置好节点,由slave自己去连master作为这个节点。另外也有一种动态连接的方式,不用先设置好节点,直接用slave.jar连过来,这里就不详细介绍了)
3、输入slave的名字,点确定
上图有几个需要注意的地方我标注了一下:
a、executors:表示在slave上可以并行执行几个线程,也可以点后面的问号看说明。对于RF来说,建议设置为1。
b、远程工作目录:在slave上创建jenkins工作目录的路径,我一般设置为D:\JK
c、标签:可以给slave加上一个或多个标签,通过标签选择slave
d、启动方法:启动slave的方法,推荐选第二个Launch slave agents via Java Web Start
注意:如果是用来执行RF自动化测试案例的slave,严禁选择windows service的方式,否则后果自负。
我们给这个slave加上2个标签slaveA和slaveall(节点的名字slave1也可以算做标签),设置好之后点保存。如图:
图中可以看到有多种方式来启动slave,选一种来启动吧,推荐2。然后我们再加个slave2,标签就用slaveB和slaveall,有机器的可以自己找两台来连一下,没有的话就自己本机也可以当slave连上来,这样自己的机器又当master又当slave,练习一下无所谓了。
我就是这样搞的,如图:
三、安装robotframework插件
接下来我们要安装插件了,大部分的插件安装方式都类似,主要介绍其中一种。
1、回到Jenkins首页,进入系统管理,点击管理插件
这里有可更新、可选插件、已安装和高级几个页面。
可更新和已安装没啥说的,可选插件里面列了所有的插件和简单介绍,点击他的连接可以进到插件的主页,里面有详细的介绍。
2、我们主要用的还是高级这个页面里的上传插件这个部分:
这里我们需要上传插件的hpi文件,等他提示安装完成,然后重启Jenkins就可以完成安装了。
到最开始我给的地址页面可以找到插件的下载地址,这里直接提供RF的插件下载路径http://mirrors.jenkins-ci.org/plugins/robot/
RF的插件版本建议选1.3.2,如果遇到解析xml报错的问题,可以加入qq群,那里有个修复的版本。
四、配置Job运行测试
接下来就是配置Job了。
1、在首页有提示我们新建任务的,或者点左边的新建链接也可以进入到新建任务的页面。
对于RF的Job来说,自由风格就可以了。多配置也可以,只不过多配置的略有不方便,看各自需要吧,比如你要把一套案例在多个不同配置的slave上执行,就可以用多配置的Job。
2、先来介绍自由风格的,点击OK后,就进入到Job的配置页面了。
可配置的地方很多,为了我们快点能先执行案例先介绍必须设置的几个地方。
a、Restrict where this project can be run: 前面的标签就在这里用上了。用来指定这个Job在哪个标签的slave上执行。多配置项目的指定slave标签不是在这里,下一篇会讲。
b、源码管理:RF的案例推荐使用SVN,本次演示不做处理了,下一篇会简单说说。
c、构建:我们要增加构建步骤-Execute Windows batch command,我先写个简单的命令,完整命令行参数大家自己在命令行输入pybot.bat --help来看
d、构建后操作:我们要增加构建后步骤-Publishes Robot Framework test results,第一个output默认可以为空,如果前面的pybot.bat指定了输出目录,那么这里也要对应进行设置,否则他找不到output.xml就没法解析结果了。
3、接着点击立即构建来运行Job。
可以点构建的进度条直接看到控制台输出,或者在点构建的名字在菜单里找控制台输出看结果。
4、RF插件的作用
RF插件主要用了解析RF运行后的output.xml文件,将解析的结果展示出来。
a、在Jenkins的首页显示Job最新的构建结果,见最后那列Robot Results
b、在Job的首页会显示运行结果的趋势图
Jenkins Robot framework 持续集成环境搭建的更多相关文章
- Linux下Jenkins+git+gradle持续集成环境搭建
Linux下Jenkins+git+gradle持续集成环境搭建 来源:IT165收集 发布日期:2014-08-22 21:45:50 我来说两句(0)收藏本文 一.项目介绍 和 linux ...
- Jmeter+Ant+Jenkins接口自动化持续集成环境搭建(Linux)
一.安装说明 系统环境:CentOS release 6.4 JDK版本:jdk1.8.0_181 Jmeter版本:apache-jmeter-3.0 Ant版本:apache-ant-1.9.13 ...
- jenkins+maven+svn 持续集成环境搭建
说明:部署传统的web应用(.war) 准备工作: (1) 系统环境:CentOS7 (2) 安装JDK:https://www.cnblogs.com/myitnews/p/11493847.htm ...
- jenkins+donet core持续集成环境搭建
一.Jenins+GitHub 参考 另外需要配置Global Tool Configuration 如果没有安装git,需下载安装,下载地址 二.jenkins发布donet core应用 1.配置 ...
- 构建基于Jenkins + Github的持续集成环境
搭建持续集成首先要了解什么是持续集成,带着明确的目标去搭建持续集成环境才能让我们少走很多弯路.持续集成(Continuous integration)简称CI,是一种软件开发的实践,可以让团队在持续集 ...
- Robot Framework自动化_环境搭建以及第一个用例
Robot Framework自动化_环境搭建以及第一个脚本 培训老师:肖能尤 2016/06/07 课程目的 一.Robot framework 环境搭建以及第一个脚本 课程内容 1 安装前准 ...
- 用Jenkins构建Django持续集成环境
用Jenkins构建Django持续集成环境 - V2EX https://www.v2ex.com/t/32054
- Redhat上为java Maven项目构建基于Jenkins + Github的持续集成环境
在Redhat enterprise 6.5 的服务器上,为在gutub 上的 java mvaen项目构建一个持续集成环境,用到了Jenkins.因公司的服务器在内网,访问外网时要通过代理,所以为m ...
- Jenkins+Gitlab CE+Robot Framework持续集成
环境 Ubuntu 14.04.3 LTS Desktop 前提 1.在本地能执行测试脚本(pybot yourTestSuit.txt),本文不讲解如何学习使用RF框架 2.已有Gitlab环境,本 ...
随机推荐
- 在Asp.net MVC中添加一个全局的异常处理的过滤器及Log4Net的使用
1:捕获异常新建一个异常处理的类MyExceptionAttribute捕获异常信息. //写到日志中.多个线程同时操作一个文件,造成文件的并发,这时用队列 public static Queue&l ...
- iOS------手势操作(nib文件、纯代码)
总共有六种手势识别:轻击手势(TapGestureRecognizer),轻扫手势 (SwipeGestureRecognizer), 长按手势(LongPressGestureRecognizer) ...
- Microsoft IIs tilde directory enumeration
漏洞标题: iis 短文件名列举漏洞 检测: https://code.google.com/p/iis-shortname-scanner-poc/ 查看扫描出来的目录,全是404 ,比 ...
- 数据库操作之—— explain 的type解释
(1)SYSTEM (2)CONST (3)EQ_REF (4)REF (5)REF_OR_NULL (6)RANGE (7)INDEX_SCAN (8)ALL (9)UNIQUE_SUBQUERY ...
- 需要打印真实尺寸大小等需求的,css的单位可以使用mm等做单位
今天甲方那边改需求了,要求打印出来的尺寸是85mm/55mm的,开始还一直在网上找px和mm的相关换算,结果去w3c看了,竟然还有mm单位的, 在这里做个笔记
- 【NOIP2016练习】T3 subset (分块,状压DP)
3 subset 3.1 题目 述 一开始你有一个空集,集合可以出现重复元素,然后有 Q 个操作 add s 在集合中加入数字 s. del s 在集合中删除数字 s.保证 s 存在 cnt s 查 ...
- Why do I keep getting mixed tabs and spaces in a Visual Studio C# code window?[vs power tools issue transfered]
goto tools->option->power tools-> turn "use mixed tabs" option to off. you won`t ...
- 安装apache2.4和php7.1的方法记录
下载扩展 这是PHP官方扩展下载的地址 http://pecl.php.net 点击下载dll文件,放到php的ext目录. 看这个说明下载你PHP版本支持的版本.
- dedecms--二次开发之会员帐号过期无法登录
最近在二次开发织梦系统的会员功能:要求会员帐号有期限,开始时间以会员添加时间为开始,这样登录的时候需要判断帐号是否过期,原本的织梦系统中是通过$rs = $cfg_ml->CheckUser($ ...
- 开发使用mysql的一些必备知识点整理(一)初阶
简介 主要知识点包括:能够与mysql建立连接,创建数据库.表,分别从图形界面与脚本界面两个方面讲解 相关的知识点包括:E-R关系模型,数据库的3范式,mysql中数据字段的类型,字段约束 数据库的操 ...