python代码学习——Jenkins(一)

持续集成

  • 持续集成:(Continuous Integration),简称CI,是一种实践,可以让团队在持续的基础上收到反馈并进行改进,不必等到开发周期的后期才能寻找和修复bug
  • 正常的开发流程是:需求分析——项目设计——开发编写代码——提交代码至项目管理服务器——提测——打包代码——部署到服务器——测试进行测试
  • 一天之中开发A提交代码并更新文件A;B提交代码并更新文件B,他们都将代码放置在版本管理工具上,第二天下载代码的时候只会运行自己的代码,打包编辑文件后机会出现缺包的情况
  • jekins之前,手动部署或者shell编写。缺点:手动部署难免会出现误操作;shell不方便管理,构建流程不简洁,不容易操作。因此出现了持续集成,其意思就是持续的构建部署服务。
  • 游客持续集成,每天都会将代码管理器上的文件进行编译打包,不一定要放在服务器上,主要检查有没有丢包的情况,出现bug或者冲突就会及时处理
  • 为什么要学jekines,自动化测试的测试框架,也是在写代码,需要将框架引入到持续继承,在提交代码后可以自动构建,自动执行,自动生成报表并将报告推送给相关人员查看测试结果。
  • 使用jekines,需要将代码当道远程服务器上,建议服务器上要有:SVN/git

持续集成在软件生命周期中的作用

  • 需求分析、软件设计、程序编码:、软件测试、运行维护,基本运行流程图如下
    在这里插入图片描述
  • 持续继承主要涉及以下几个方面
    在这里插入图片描述

持续集成的好处

  • 解放了重复性的劳动
  • 更快的修复问题:持续集成,事情一开始的时候就介入,有问题就可以发现,尽可能早的解决问题,不会到项目后期再来解决问题
  • 更快的交付成果:问题基本解决完了,就可以更快的交付成功
  • 减少手工的错误:机器一旦设定好运行顺序,就不会忘记,会按照步骤一步一步的执行,人,对于重复性的事情会出现犯错的情况
  • 减少了等待时间。缩短了从开发、集成、测试、部署各个环节的时间,从而也就缩短了中间的等待时间;持续集成意味着开发、集成、测试、部署都得以持续
  • 更高的产品质量,集成服务器往往提供Code Reciew,代码质量检测等功能,对不规范或者有错误的地方会进行标识,也可以设置邮件、短信等预警,二开发人员通过code review也可以提高编程能力

8080端口被占用,jekines如何解决?

  • 进入jekines的安装命令下,查找jekines.html文件
  • 修改端口号后,使用新的端口号打开即可
    在这里插入图片描述

Jekines模块的解释:

  • 左侧——new任务:开发用来打包、编辑,在此可以创建一个任务,需要填写任务名称,选择任务类型
    在这里插入图片描述

  • 左侧——people:登录的用户

  • 左侧——Bulid History :构建历史,包含所有项目的构建历史,全部在右侧显示 - 左侧——系统管理_系统设置:设置Jekines的功能,例如:系统设置(全局设置和路径)。Jekines Location的Jekines_url:Jekines的启动服务地址,不建议使用本地服务,注意一定要改成ip地址,因为他是协作构建的,并不是一个人在使用;如下图
    jekines系统管理-系统设置-服务设置

  • 左侧——系统管理_全局安全设置:Jekines支持登录注册,在这里配置Jekines的权限,也可以很具他的插件,来丰富用户管理权限。最常见的是Jekines专用数据库、认证和可以访问、操作Jekines的配置权限(Authorization);如果jekines对权限控制比较严格,会建议使用Role Based Strategy
    系统管理-安全全局配置

  • 左侧——系统管理_凭证配置:配置登录Jekines的用户名和密码

  • 左侧——系统管理_全局工具配置:可以设置java的、Git等的环境变量,指定Java/Git用哪个版本,是否在线安装等等

  • 左侧——系统管理_插件管理 显示所有人在jekines上编写的插件,使用插件的时候需要安装,查找路径:拆件管理——Available。如果Jekines在线安装时报错,可使用Advance上传官网上下载的安装包后,自动安装;

  • 插件管理的右上角有一个filter,可以根据插件名称搜索插件;或者想要什么样的功能,输入关键字后,会自动筛选并将插件放在Available下面
    系统设置-插件管理
    在这里插入图片描述
    在这里插入图片描述

  • 左侧——系统管理_系统日志,捕捉脚本中的logging日志,将其输出到job中

  • 左侧——系统管理——节点管理,分布式的job可以用到(web自动化可能用到),一套代码在不同的服务器上运行

操作流程

  • 左侧——new任务,新建任务,直接点击“所有”后面的+即可。构建自由风格的软件项目(最常用)
  • 进入之后,如下图;编辑信息时需要点击工作空间中的configure
    项目描述
  • 什么都不填写的情况下,工作控件是空的,点击项目名称后如下:
    工作空间
  • 项目创建后,jekines安装目录下,可以查看的路径是:
    在这里插入图片描述
  • 如果不通过git想要运行代码,直接将代码复制到这个路径下即可
  • 进入job——configure,设置描述、选择shell/windows批处理命令,在文本框中指定执行路径和执行命令,即可执行代码并执行命令;执行命令就是python.exe的路径
    在这里插入图片描述
  • 注意:如果有两个python,需要指定用那个python,否则会报错,指定路径:直接在config中,将python运行的路径粘贴即可
  • 优化 代码一般情况下放在git或者svn上,git——Source Code Management ,选择Git,将链接粘贴即可(注意要删除本地run文件的路径);SVN——选择Subversion,粘贴链接即可。注意选择此种方式需要填写git或者SVN的用名或者密码
  • 添加用户名和密码后,需要在凭据的下拉框中选择账号和密码
  • 使用此种方式需要将bulid的批处理命令中,本地的运行文件路径删除
    在这里插入图片描述
  • 如果想要在构建的时候运行代码,可以在command的运行环境后面添加run的py文件名称,他是相对路径,相对的是workspace的路径;如果要执行某一个py文件,也需要相对workspace,写运行文件的路径
    在这里插入图片描述
  • 集成报表:confige——Bulid——post_bulid_Actions,选择插件(publish_html_reports),需要配置html的路径(服务器或本地)、py文件名称和报表名字,在此需要相对workspace去找
    • 集成之后,在页面左侧会出现一个HTML报表的选项,报表名字为自己设置的report名字
      在这里插入图片描述
  • 保留历史生成报告的结果,需要在config——post_bulid_Action中,点击publishing_options,需要勾选上keep_past_HTML_reports
    在这里插入图片描述

发送邮件

设置邮件发件人和收件人信息

  • 路径:系统管理——系统设置中,如图,多个收件人可以使用逗号隔开
    在这里插入图片描述

  • 测试邮件是否可以发布成功,可以用到另外一个邮件发送插件上的一个功能,如图
    -返回email was success send 就算成功验证邮件发送

  • 如果在测试的时候出现认证错误(501或者401的返回码),一般情况下都是认证信息不一致,需要保证下面截图中的邮箱与发件人的邮箱是一致的在这里插入图片描述

job的configure配置

  • 如图:
    在这里插入图片描述
  • 如果邮件没有被触发,就不会发送,因此要设置邮件触发情况,设置如下:
    在这里插入图片描述
    在这里插入图片描述

如何持续 构建(config——bulid_Triggers)

在这里插入图片描述
里面有两个任务,一个是定时构建,一个是轮询SCM。定时构建需要设定时间
轮询SCM是只要提交代码至SVN或者git,就会自动构建
其他工程构建后触发,需要写构建分支
两者都要配置schedule
配置定时的时候,MINUTE、HOUR、DAY、MONTH和WEEK之间用*隔开
例如:15***** 代表每个小时的15分去运行脚本。文本框下方会出现提示

常用到的其他的配置

  • 参数化构建,在脚本中设置接受运行是的传参,比如动态的决定如何去运行,可实现过滤cases,动态的配置测试环境等等,参数化构建中可以添加多个参数
  • 这里面对的参数可以在参数化构建中设置,最常见的就是字符参数,设置参数名、参数值
  • 使用的时候直接在批处理环境中,直接在文本框中输入 echo $变量名,就可以取到参数信息,这个参数的使用是linux情况下。
  • 注意这个要写在首行,顶格写即可
    在这里插入图片描述
  • 如果需要将文件copy到某个文件夹下,可用在批处理命令文本框中输入 复制命令 文件名称 文件夹名称
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值