[python]Robotframework+Git+jenkins实现持续集成并生成测试报告发送邮件
1.环境需求
&robotframework(不写搭建,自行百度)
& git(不写安装,自行百度)
&jenkins
2.安装jenkins
官网下载最新版本https://jenkins.io/
文档使用目前最新的版本2.125,
&安装完到指定的目录解压—自定义目录—打开浏览器http://localhost:8080打开成功表示安装成功,后面根据提示创建用户再登录-选择推荐安装的插件
3.更改配置文件和指定打开端口
&Jenkins目录下找到jenkins.xml文件,找到<arguments>……..<arguments>,把下面这段替换原标签内容(解释下为什么全部替换,指定端口改下端口号即可,但是后面Jenkins中可能会出现不能打开安装的robot插件报告,以备后患还是改掉)改完别忘记重启一下服务才会生效
<arguments>-Xrs -Xmx256m -Dhudson.model.DirectoryBrowserSupport.CSP= -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8081</arguments>
4.系统配置相关路径
注意:有些虽可不配,因为默认不配是因为用到的东西在本地环境变量里保守起见,没有配置按下文配置下
&登录jenkins-系统管理—系统设置
@配置下本地ip和系统管理员邮箱(注:邮件通知必须要配管理员邮箱)
&配置邮箱,我用的是阿里企业邮箱,具体网易或其他邮箱看下smtp是什么,同样配置即可
&配置邮件通知,和上图同样的配置,配置完可以通过邮件测试下,成功返回Email was successfully sent
注意:为了避免出现不必要的问题,配置邮箱都需要和管理员邮箱一致
5.系统设置-全局工具配置
&配置下本地Git即可
6.安装jenkins中的robot测试报告插件
&系统管理—管理插件—可选插件—安装—重启或返回
7.构建任务发送邮件
新建一个自由风格的项目名为test
&选择项目进去配置--Geral配置—设置下只保留的构建数
&源码管理,选择git,输入项目的路径,和添加一个有pull或clone权限的账号
&构建触发器--定时构建
&构建选择,执行批处理文件命令 ,当git pull下来默认是放在jenkins目录下的workspace\构建的任务名\pull下来的文件
&构建后操作—添加robotframework报告
&添加邮件发送配置
发送邮件的模板如下,具体可看下配置
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>
</head> <body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"
offset="0">
<div>
<table width="95%" cellpadding="0" cellspacing="0"
style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif"> <tr>
<th align="center" colspan="2"><br />
<h2>构建信息</h2>
</th>
</tr>
<tr>${JELLY_SCRIPT,template="html"}<br/> </tr>
<tr>
<ul>
<li>项目名称 : ${PROJECT_NAME}</li><br />
<li>详细测试报告 : <a href="${PROJECT_URL}/${BUILD_NUMBER}/robot/">${PROJECT_URL}/${BUILD_NUMBER}/robot/</a></li><br />
<li>触发原因: ${CAUSE}</li><br />
<li>项目 Url : <a href="${PROJECT_URL}">${PROJECT_URL}</a></li><br />
</ul>
</tr>
</table>
</div>
</body>
</html>
&现在就配置好了,对于这robot这一套只要装下测试报告插件就好了,其他的是一开始选择推荐安装时都自动安装了,点击立即构建就可以了~
&解释下定时构建填写的时间表达式
* * * * *
分别的定义为:分 时 天 月 星期
第一个*表示分钟 (0–59)
第二个*表示小时 Thehour of the day (0–23)
第三个*表示哪天 Theday of the month (1–31)
第四个*表示哪月 Themonth (1–12)
第五个*表示哪年 Theday of the week (0–7) where 0 and 7 are Sunday.
*表示全部
如果7:00整 那么第一个*为H代表00
[python]Robotframework+Git+jenkins实现持续集成并生成测试报告发送邮件的更多相关文章
- TestNG+ReportNG+IDEA+Git+Jenkins+surefire持续集成数据驱动dubbo接口测试
一.pom.xml增加testng相关配置 <!--添加插件 关联testNg.xml--><plugin> <groupId>org.apache.maven.p ...
- Jenkins+maven+git+sonar 系统持续集成&代码单測管理
Jenkins+maven+git+sonar 系统持续集成&代码单測管理 Jenkins的安装 Jenkins是基于Java开发的一种持续集成工具,用于监控持续反复的工作.功能包含: 1.持 ...
- RF+Jenkins构建持续集成
引入RF是为了能够快速的开展自动化验收测试,Jenkins而一种持续集成工具,用于监控持续重复的工作,持续的软件版本发布/测试项目,而通过RF+Jenkins可以有利的对RF构建的接口项目进行持续集成 ...
- 【iOS】Jenkins Gitlab持续集成打包平台搭建
Jenkins Gitlab持续集成打包平台搭建 SkySeraph July. 18th 2016 Email:skyseraph00@163.com 更多精彩请直接访问SkySeraph个人站点: ...
- 使用jenkins构建持续集成平台
jenkins + Maven + svn/git + tomcat 的持续集成平台 项目管理流程: 需求分析----原型设计----开发代码----提交测试-----内部测试-----确认上线( ...
- jenkins+github持续集成中的坑
1.前言 刚开始开发自己的独立博客的时候,每次发布都要手动打包,上传服务器,杀tomcat进程,重启,来回这么重复性工作,很快就有点不耐烦了.如果能自动化的东西,就绝不要手动了,所以自己搭建了个持续集 ...
- Jenkins的持续集成
持续集成:不需要人工干预,持久化.重复的运行一个任务.将代码自动的更新到最新,然后自动运行. 新建项目之前要再Jenkins的全局工具配置里面把git的路径设置好.[全局工具配置]-->[Git ...
- jenkins+docker持续集成实验
在互联网时代,对于每一家公司,软件开发和发布的重要性不言而喻,目前已经形成一套标准的流程,最重要的组成部分就是持续集成(CI)及持续部署.交付(CD).本文基于Jenkins+Docker+Git实现 ...
- docker+jenkins实现持续集成
持续集成的概念我就不多说了,网上一大堆,今日主要讲讲怎么通过docker 和jenkins实现项目的持续集成.看着简单,网上完整教程很少,本人摸索很久才搞定!!! 一.首先安装docker.安装过程可 ...
随机推荐
- Python实现Telnet连接
import loggingimport telnetlibimport timeclass TelnetClient(): def __init__(self,): self.tn = telnet ...
- ssh 登录远程服务器--config配置
一.config 配置案列 Host master HostName: 39.105.61.1 Port 22 User root IdentityFile <id_rsa> 二.配置讲解 ...
- Unittest 框架之断言,你学会了吗??
unittest断言 Python在 unittest.TestCase 类中提供了很多断言方法.断言方法检查你认为应该满足的条件是否确实满足.如果该条件确实满足,你对程序行为的假设就得到了确认,你就 ...
- SQL Server 命令备忘录(持续更新...)
1.删除表内容并重置ID truncate table 表名 2.开启SqlDependency监控数据库 在数据中执行以下查询: SELECT is_broker_enabled FROM sys. ...
- Serverless 架构下的服务优雅下线实践
作者 | 行松 阿里巴巴云原生团队 应用发布.服务升级一直是一个让开发和运维同学既兴奋又担心的事情. 兴奋的是有新功能上线,自己的产品可以对用户提供更多的能力和价值:担心的是上线的过程会不会出现意外情 ...
- 通过Swagger文档生成前端service文件,提升前端开发效率
在企业级的项目开发过程中,一般会采用前后端分离的开发方式,前后端通过api接口进行通信,所以接口文档就显得十分的重要. 目前大多数的公司都会引入Swagger来自动生成文档,大大提高了前后端分离开发的 ...
- Conda 命令
Conda 命令 1 检验当前conda的版本 conda -V 2 conda常用的命令 查看已有的虚拟环境 conda env list 创建虚拟环境和删除虚拟环境 anaconda命令创建pyt ...
- 【学习转载】MyBatis源码解析——日志记录
声明:转载自前辈:开心的鱼a1 一 .概述 MyBatis没有提供日志的实现类,需要接入第三方的日志组件,但第三方日志组件都有各自的Log级别,且各不相同,但MyBatis统一提供了trace.deb ...
- java实现责任链模式的小demo
//一个请假请求 public class LeaveRequest { private int leaveDays; private String name; public void leave() ...
- v72.01 鸿蒙内核源码分析(Shell解析) | 应用窥伺内核的窗口 | 百篇博客分析OpenHarmony源码
子曰:"苟正其身矣,于从政乎何有?不能正其身,如正人何?" <论语>:子路篇 百篇博客系列篇.本篇为: v72.xx 鸿蒙内核源码分析(Shell解析篇) | 应用窥视 ...