Robot Framework+Jenkins构建集成环境的搭建

简介: 为什么我们要引入RF?其实最初我们引入RF是为了能够快速的开展自动化验收测试,为敏捷保驾护航。这其中有个重要的工具Jenkins,这次就来介绍一下RF如何快速便捷的结合Jenkins这一利器在windows上进行自动化测试(linux我没装机器,大体步骤差不多,度娘应该有)。

为什么我们要引入RF?其实最初我们引入RF是为了能够快速的开展自动化验收测试,为敏捷保驾护航。这其中有个重要的工具Jenkins,这次就来介绍一下RF如何快速便捷的结合Jenkins这一利器在windows上进行自动化测试(linux我没装机器,大体步骤差不多,度娘应该有)。

其实个人觉得RF和Jenkins的结合很简单,概括一下就这几点:

1、下载Jenkins

2、添加节点

3、安装robotframework插件

4、配置job运行测试   

一、下载及安装Jenkins

1.下载地址:http://mirrors.jenkins-ci.org/

2.详细安装过程请见《手把手教你搭建Jenkins+Jmeter+Ant自动化集成环境www.jianshu.com/writer#/notebooks/13377041/notes/17108032》里的下载安装过程,或自行度娘安装。

3.打开我们的jenkins地址:http://192.168.1.6:8080(IP以你本机IP为准,也可用localhost,比起tomcat来说,url还不用写jenkins),里面的test2不用理会。会看到如下图的页面:

img_bf04c92bdb64308285e8e7e9fa3e8a61.png
Jenkins主页

4.管理插件,添加Robot Framework plugin

img_65ff0dd7101ce85ed819a8199d345c98.png
管理插件

二、添加节点

我们启动Jenkins服务的这台机器在Jenkins里叫做master,而其他的连到master上的机器(物理机、虚拟机都可以)都是slave,也叫节点。

1.点击系统管理,然后点击管理节点,就看到如下界面:

img_ce6485d6becbe59115dd4c5aefa05120.png
管理节点

2.点击新建节点

img_1ca5665b2fdd6a4ba639e3d82515ed04.png
新建节点

(这是静态连接的方式,就是我先设置好节点,由slave自己去连master作为这个节点。另外也有一种动态连接的方式,不用先设置好节点,直接用slave.jar连过来,这里就不详细介绍了)

3.输入slave的名字,点确定

img_b58ea7bf624abd553a96a812c44268e2.png
slave1

上图有几个需要注意的地方我标注了一下:

a、executors:表示在slave上可以并行执行几个线程,也可以点后面的问号看说明。对于RF来说,建议设置为1。

b、远程工作目录:在slave上创建jenkins工作目录的路径,我一般设置为D:\JK

c、标签:可以给slave加上一个或多个标签,通过标签选择slave

d、启动方法:启动slave的方法,推荐选第二个Launch slave agents via Java Web Start。

注意:如果在jenkins的启动方法找不到Launch slave agents using Java Web Start这个,请按此步骤设置:系统管理-Configure Global Security-TCP port for JNLP agents是被禁用的,选择随机选取或者自行制定端口即可。记住,如果是用来执行RF自动化测试案例的slave,严禁选择windows service的方式,否则后果自负。

4.保存后 此时的节点是不能使用的

img_02276ceba131006afee017f87bcd7548.png
slave1节点

5.点击目标节点slave1,弹出如下界面

img_3b93bc10795388b0db8fe4ae893ecdc2.png
Agent slave1

6.点击Agent slave1界面的“Launch”按键下载slave-agent文件。启动方式1:下载后双击slave-agent文件,弹出如下右侧界面,connect表示已连接(一般用在Windows系统上,需要javaws.exe(在Java的bin目录中可以找到)程序才能打开。如果提示错误,请卸载JDK后重新安装。)

img_56391cf23f13d22f076e6bd4b5f034ff.png
slave-agent文件

启动方式2:下载slave.jar到本地,然后进入存放slave.jar的目录,复制粘贴并运行java -jar slave.jar -jnlpUrl http://xxxxx即可启动。

img_1418f4b6c759e8a91c019d6aa92f4893.png
slave文件

三、配置运行Job任务

1.点击Jenkins左上角的“新建”,在下图中输入名称,并选择“构建一个自由风格的软件项目”,点击确定

img_71bc10b7d285b331fdb4278a68897c6a.png
新建JOB

2.设置丢弃旧的构建(此步可以设置,可以不设置。无要求)

img_0d36a90f0111c194e22b897e8c7c6804.png
丢弃旧的构建

3.在“构建”中选择“Execute Windows batch command”,输入指令"pybot.bat D:\work\RIDE\test\testsuit.txt"(RF的工作目录)

img_96f96e4b9e7ab29ececb6e7a7b483012.png
构建
img_7d972ab073e08125fdd9c56f5e6c5513.png
构建RF指令

4.构建后操作:我们要增加构建后步骤-Publishes Robot Framework test results,第一个output默认可以为空,如果前面的pybot.bat指定了输出目录,那么这里也要对应进行设置,否则他找不到output.xml就没法解析结果了。

img_eabf0f807e2b59aff066c36f66931bbf.png
构建后操作

5.配置邮件,在构建后操作中选择“Editable Email Notification”,分别设置Content Type和写入如下邮件通知模板至Default Content中,然后点击保存。

(本邮件是程序自动下发的,请勿回复!)                                               

构建结果 - ${BUILD_STATUS}                                                       

构建信息                                                                           

项目名称 : ${PROJECT_NAME}                   

构建编号 : 第${BUILD_NUMBER}次构建                   

SVN 版本: ${SVN_REVISION}                   

触发原因: ${CAUSE}                   

构建日志: ${BUILD_URL}console                   

构建  Url : ${BUILD_URL}                   

工作目录 : ${PROJECT_URL}ws                   

项目  Url : ${PROJECT_URL}    Changes Since Last   Successful Build:                                                                           

历史变更记录 : ${PROJECT_URL}changes ${CHANGES_SINCE_LAST_SUCCESS,reverse=true, format="Changes for Build #%n:%c",showPaths=true,changesFormat="[%a]%m",pathFormat="    %p"}   Failed Test Results    $FAILED_TESTS  

构建日志 (最后 100行):   ${BUILD_LOG, maxLines=100}

img_e97a4f3750ecce8ecb0360bd12b933f9.png
邮件通知

6.打开slave agent弹出connected提示框后,点击左上角的“立即构建”按键。如下图

img_4d04bf40a478e3c483d79152ce0c0ac5.png
立即构建

7.可以点构建的进度条直接看到控制台输出,或者在点构建的名字在菜单里找控制台输出看结果。

img_231c029bb6582093d82b27ecfb917bdf.png
输出结果1

8.分别点击Result的三种报告输入,可现实不同的显示结果样式

img_a36d834872be57e78ced1a489fa33019.png
输出结果2

9.接收者邮箱显示信息

img_aea2ebc80b247602e9fa43232c58ae5e.png
接收者邮箱通知消息3

四、上面讲述了如何配置一个普通的Jenkins Job任务,但此类型任务需人工的手动去执行构建操作,而Jenkins也可以配置定时任务,从而让我们配置好的JOB在我们指定的时间去自动执行,下面讲述如何配置Jenkins定时任务。

1、添加节点,配置Job等方法,步骤如上面操作所示。

2、在配置Job时,其中有一个构建触发器的选项,如图所示:

img_cbf9c382410bc203df767a1a29fefda9.png
设置构建周期

如上述,选择build periodly(即周期构建),如上图表示每天2:00自动构建一次。

日程表(Build periodically)格式:用cron格式,五个空格隔开的字符组成,分别表示分 时 天 月 年,*表示所有,如下图配置:

H 2 * * * (每天2:00 必须build一次源码)

在 Schedule 中填写 0 * * * *。

第一个参数代表的是分钟 minute,取值 0~59;

第二个参数代表的是小时 hour,取值 0~23;

第三个参数代表的是天 day,取值 1~31;

第四个参数代表的是月 month,取值 1~12;

最后一个参数代表的是星期 week,取值 0~7,0 和 7 都是表示星期天。

例1:0 12,20 * * *表示的就是每天的12点和20点执行一次构建

例2:*/5 * * * *表示每5分钟执行一次构建

例3:0 2 * * *表示每天2点执行一次构建

3、通过增加build periodly选项,就可完成自动构建任务。

img_f0f7b2dd2074eafd4b7108456700c881.png
设置定时构建任务

以上就是本人学习Robot Framework的步骤,都是经过本人亲测通过的,如有不懂或说的不到位的地方,希望大家多多指教,共同学习,共同进步。我就是keitwo!

目录
相关文章
|
2天前
|
jenkins Devops 机器人
【DevOps】(五)Jenkins构建给企业微信推送消息
【DevOps】(五)Jenkins构建给企业微信推送消息
11 1
|
12天前
|
人工智能 算法 数据可视化
人工智能的集成环境
【4月更文挑战第27天】人工智能的集成环境
24 1
|
12天前
|
机器学习/深度学习 人工智能 安全
ai集成环境
【4月更文挑战第27天】ai集成环境
26 1
|
3天前
|
敏捷开发 监控 jenkins
探索自动化测试在持续集成环境中的关键作用
【5月更文挑战第6天】 在快速迭代的软件开发周期中,持续集成(CI)已经成为确保代码质量和加速交付的重要实践。本文将深入探讨自动化测试作为持续集成不可或缺的组成部分,它如何通过减少人为错误、提高测试覆盖率和加快反馈周期来强化软件开发流程。通过对现代自动化测试工具的评估以及真实案例的分析,我们揭示了自动化测试在提升软件可靠性和效率方面的核心价值,并提出了实现高效自动化测试策略的最佳实践。
|
3天前
|
敏捷开发 数据管理 测试技术
探索自动化测试在持续集成环境中的优化策略
【5月更文挑战第6天】 本文旨在深入剖析自动化测试在持续集成(CI)环境中所面临的挑战,并提出一系列创新的优化策略。通过对现代软件开发过程中自动化测试角色的分析,我们揭示了在快速迭代和部署的背景下,如何通过改进测试框架、选择合适的测试工具、以及实施数据驱动测试等手段来提高测试效率和准确性。文章不仅聚焦于技术层面的解决方案,还探讨了团队协作和流程管理对提升自动化测试效能的重要性。
|
9天前
|
敏捷开发 运维 测试技术
构建高效自动化运维体系:基于容器技术的持续集成与持续部署实践
【4月更文挑战第30天】在数字化转型的浪潮中,企业对软件交付速度和质量的要求日益提高。自动化运维作为提升效率、确保稳定性的关键手段,其重要性不言而喻。本文将探讨如何利用容器技术构建一个高效的自动化运维体系,实现从代码提交到产品上线的持续集成(CI)与持续部署(CD)。通过分析现代容器技术与传统虚拟化的差异,阐述容器化带来的轻量化、快速部署及易于管理的优势,并结合实例讲解如何在实际环境中搭建起一套完善的CI/CD流程。
|
9天前
|
运维 Kubernetes 持续交付
构建高效自动化运维系统:基于容器技术的持续集成与持续部署实践
【4月更文挑战第30天】 在快速发展的云计算时代,传统的运维模式已无法满足敏捷开发和快速迭代的需求。本文将介绍如何利用容器技术搭建一套高效自动化运维系统,实现软件的持续集成(CI)与持续部署(CD)。文章首先探讨了现代运维面临的挑战,接着详细阐述了容器技术的核心组件和工作原理,最后通过实际案例展示了如何整合这些组件来构建一个可靠、可扩展的自动化运维平台。
|
11天前
|
运维 Kubernetes 持续交付
构建高效自动化运维体系:基于容器技术的持续集成与持续部署(CI/CD)实践
【4月更文挑战第29天】 随着云计算和微服务架构的兴起,自动化运维已成为提升企业IT效率、确保系统稳定性的关键因素。本文旨在探讨如何利用容器技术构建一套高效的自动化运维体系,实现软件开发过程中的持续集成(CI)与持续部署(CD)。文章首先分析了传统运维模式面临的挑战,然后详细介绍了基于Docker和Kubernetes等容器技术的CI/CD流程设计与实施策略,并通过一个实际案例来展示该方案在提高部署频率、降低人力成本及提升系统可靠性方面的显著优势。
|
11天前
|
编解码 Linux Windows
FFmpeg开发笔记(十三)Windows环境给FFmpeg集成libopus和libvpx
本文档介绍了在Windows环境下如何为FFmpeg集成libopus和libvpx库。首先,详细阐述了安装libopus的步骤,包括下载源码、配置、编译和安装,并更新环境变量。接着,同样详细说明了libvpx的安装过程,注意需启用--enable-pic选项以避免编译错误。最后,介绍了重新配置并编译FFmpeg以启用这两个库,通过`ffmpeg -version`检查是否成功集成。整个过程参照了《FFmpeg开发实战:从零基础到短视频上线》一书的相关章节。
FFmpeg开发笔记(十三)Windows环境给FFmpeg集成libopus和libvpx
|
12天前
|
编解码 Linux
FFmpeg开发笔记(十二)Linux环境给FFmpeg集成libopus和libvpx
在《FFmpeg开发实战》一书中,介绍了如何在Linux环境下为FFmpeg集成libopus和libvpx,以支持WebM格式的Opus和VP8/VP9编码。首先,下载并安装libopus。接着,下载并安装libvpx。最后,在FFmpeg源码目录下,重新配置FFmpeg,启用libopus和libvpx,编译并安装。通过`ffmpeg -version`检查版本信息,确认libopus和libvpx已启用。
FFmpeg开发笔记(十二)Linux环境给FFmpeg集成libopus和libvpx

热门文章

最新文章