为什么我们要引入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的首页会显示运行结果的趋势图