首页 > 其他分享 >肖sir__jenkins搭建20220826

肖sir__jenkins搭建20220826

时间:2022-08-26 18:44:25浏览次数:177  
标签:__ sir 插件 点击 构建 jenkins Jenkins 20220826 集成

1、持续集成(CI) Continuous integration 持续集成 团队开发成员每天都有集成他们的工作,通过每个成员每天至少集成一次,也就意味着一天有可 能多次集成。在工作中我们引入持续集成,通过持续集成自动构建(代码的编译、发布、部署、 用例的更新和自动化执行),从而达到尽早发现代码集成的错误。 2、在没有持续集成时,开发的模式是:  第一步:项目一开始划分模块,将模块分配给对应的开发  第二步:开发对自己所负责的模块进行开发以及对应后期的单元测试  第三步:等所有模块开发完成后,由项目老大(开发负责人)对所有模块的代码进行集成  第四步:将集成好的代码部署到环境上,交由测试人员进行集成测试  第五步:测试过程中发现bug,测试人员提交bug并进行记录  第六步:对应的开发人员进行bug修复  第七步:等所有开发人员将bug修复好,再进行代码集成,交给测试进行回归测试 这样我们会陷入一个循环:修改bug­­­­集成代码­­­部署测试的循环中 缺陷: a.bug永远都是在最后才发现,不能及时发现。 b.这样的话测试效率低,使得交付效率质量差。 3、用Jenkins做持续集成的目的:及时发现bug,提高效率 4、持续集成的优点: 1、统一的代码库 2、自动部署和构建 3、自动测试 4、保证项目的交付质量 5、用什么实现持续集成? 使用Jenkins工具能帮我们实现持续集成 6、什么是Jenkins?  是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的 软件平台,使软件的持续集成变成可能。 7、Jenkins有哪些功能 1)持续的软件版本发布/测试项目。 2)监控外部调用执行的工作。 Jenkins拥有的特性包括:   1)易于安装­只要把jenkins.war部署到servlet容器,不需要数据库支持。 2)易于配置­所有配置都是通过其提供的web界面实现。 3)集成RSS/E­mail通过RSS发布构建结果或当构建完成时通过e­mail通知。 4)生成JUnit/TestNG测试报告。 5)分布式构建支持Jenkins能够让多台计算机一起构建/测试。 6)文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。 7)插件支持:支持扩展插件,你可以开发适合自己团队使用的工具。 Jenkins的主要目标是监控软件开发流程,快速显示问题。所以能保证开发人员以及相关人员 省时省力提高开发效率。   8、Jenkins中的节点? 一个节点是一个代理服务器。建议使用字母、数字或字母和数字的组合。最好见名知意。不建议 使用标点符号和中文(中文命名没有问题,但Job中无法引用)       Jenkins环境搭建 一、需要的应用软件如下: JDK1.8 最好安装1.8的 Jenkins.war包
二、安装JDK [] (jdk­8u60­windows­x64.exe) 把JDK放入G盘,双击jdk­8u60­windows­x64,安装路径放入为G:\java(默认路径) 设置环境变量:在桌面进入计算机右键点击属性­高级系统配置­环境变量­点击新建(新建之前把 环境变量里面之前的JAVA_HOME,CLASSPATH全部删掉,假如没有的话就新建)        (1)新建­>变量名"JAVA_HOME",变量值:G:\java(具体看自己的java安装的路径)   (2)编辑­>变量名"Path",在原变量值的最后面加 上:;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin (3)新建­>变量名"CLASSPATH",变量 值:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar(注 意冒号前面有个"."一定要加上) 2,验证变量设置的正确性,win+r,输入java,javac    出现如下图:JDK安装成功;   三、linux环境上搭建jenkins 第一步:把本地jenkins.war包存放到tomcat路径下apache­tomcat­7.0.56/webapps  

 

 

 

 

    第二步:启动tomcat,启动后jenkins.war包会自动解压,生成一个jenkins目录

 

 

 

 

 

  第三步:浏览器地址栏中输入IP地址+8080端 口/jenkins(http://192.168.23.129:8080/jenkins),正常打开jenkins应用页面 如果页面报错要关闭防火墙:service iptables stop 页面显示如下:  

 

 

这段话翻译过后大概的意思就是: Jenkins管理员密码已经写入服务器/root/.jenkins/secrets/initialAdminPassword 文件中, 复制密码粘贴到下面的文本框中。  讲解下:/root 路径就是 cd ~   第四步:在linux环境中输入命令: cat /root/.jenkins/secrets/initialAdminPassword ,复 制密码  到文本框中,点击continue  

 

 

 

 以上是登录密码;   第五步:点击安装建议性插件  

 

 

 

 

 

  左边 建议安装 ,右边 自定义安装 接下来会安装所有建议性插件,这个安装时间有些长,请耐心等待     第六步:输入以后登录jenkins的用户名,密码­­>然后点击保存并完成    

 

 

 

 

 

 

 

      最后,当你看到这个页面,说明jenkins已经安装好了  

 

 

 

 

 

        如果界面显示英文可以翻译为中文:谷歌浏览器右上角点击如下图标志    选择翻译    

 

 

      第七步:Jenkins修改密码 1.点击页面右上角用户名

 

 

 

 

 

        2.点击设置

 

 

 

 

   

 

 

 

 

 

 

            3.修改密码,点击应用,保存。    

 

 

    4.重启jenkins 在浏览器地址中输入:http://192.168.153.131:8080/jenkins/restart ­­地址以自己的IP地 址为准  (添加restart)jenkins重启

 

 

 

 

 

  重启后,可以用新密码登录。     第八步:如果出现其他异常需要重新安装jenkins环境的步骤如下:(如果Jenkins启动正常请忽 略以下操作) 第一步:rm ­rf /root/.jenkins ­­清空所有数据  第二步:webapps中删除Jenkins目录 重启tomcat  第三步:一切按照上面的步骤操作   注意点:依赖包出错不用管   四、jenkins添加节点 第一步:首页点击系统管理——》管理节点——》新建节点 (注意点:(先设置全局安全配置))    

 

 

 

 

 

          第二步:输入节点名称,勾选固定代理    

 

 

  第三步:输入节点的具体信息,这里需要注意的是启动方法,启动方法没有java    web请往下看  

 

 

    名字:唯一标识一个代理,通常使用代理主机名 描述:代理的cpu内核,内存使用情况描述。 执行者数量:控制并发构建数量 远程工作目录:一个代理有一个专门的jenkins目录 标签:对多节点分组,代理标签,工程标签相同,说明这个工程在这个代理上运行。 用法:默认选择尽可能使用这个节点 启动方法:默认选择通过java  web启动代理 (全局安全中设置)     注意点:(先设置全局安全配置) 在选择启动方法中,如果没有java web 启动代理选项,那么就需要进行如下配置 第一步:点击系统管理,选择全局安全配置 第二步:勾选启用安全  

 

 

            第三步:代理中选额随机选取,代理协议都进行勾选  

 

 

      第四步:选择应用,保存­­>然后点击test_vm  jar包就是代码 类和工具函数 注意:( 将agent 放到d:jenkens下) 出现如下的信息:说明代理服务器没有连接jenkins

 

 

  节点可以理解为一个代理,一台服务器。Jenkins是一个ci(持续集成)平台,每个代理 服务器要与jenkins进行集成,需要执行java ­jar ,后面是代理服务器Ip地址,通过这条 命令,执行成功说明代理已集成在ci平台   将代理连接jenkins方法: 从代理命令行运行 第一步:下载agent.jar文件 ,保存在本地G:\jenkins 第二步:在dos中G:\jenkins目录下执行命令 java ­jar agent.jar ­jnlpUrl http://192.168.23.129:8080/jenkins/computer/test_vm/slave­agent.jnlp ­secret 50027f0935559679aeb8ba30adca6e16fed937199e37a95c352984235a3400be ­ workDir "G:\jenkins"  

 注意:把以上的复制到dos下执行

 

 

 

这里需要注意的是:根据自己的jenkins页面内容copy,再执行   执行之后,看到Agent discovery successful 和connected 说明代理连接jenkins成功

 

 

成功jenkins首页显示,代理电脑右下方红色叉叉消失,并且显示代理服务器详细信息  

 

 

 

 

  五、Jenkins构建项目: 第一步:首页,点击开始创建一个新任务输入一个项目名称,选择构建一个自由风格的软件项 目,最后确定  

 

 

    第二步:输入项目具体配置 1. 项目名称:自定义 2.    限制可以运行该项目的位置:输入标签,标签为代理的标签(指定项目在哪个代理机上执行)   或者  

 

 

3.构建:点击增加构建步骤   ,选择执行windows批处理命令    

 

 

4.  命令输入,例如执行单个用例 Pybot ­­test 用例名称+套件路径 Pybot ­­test 正常登录 G:\Python271\discuz论坛\dcs\论坛项目.txt  

 

 

    批处理命令还有 执行所有项目中的用例:pybot 项目路径 执行当个套件中的用例:pybot 套件路径 执行单个用例:pybot ­­test 用例名称 套件地址 执行标签用例:pybot ­i 标签名称 套件地址   5.点击保存­­>然后点击立即构建­­>构建完成之后点击#2­­>点击控制台输出就可以看到相关的 日志了  

 

 

 

 

 

  复制报告地址在浏览器输入:    G:\jenkins\workspace\auto_test\report.html  

 

 

    6.如果出现下面的错误(没有没有出现就忽略):  

 

 

  那么就给项目添加一个工作空间,如果系统自动选择工作空间是master,那么就进行修改  

 

 

 

 

    也可以使用自己自定义的工作空间,就是工作空间与代理服务器工作空间不同的时候 可以自定义工作空间    

 

 

          如果出现如下报错: hudson.AbortException: No files found in path G:\jenkins\output\auto_test with configured filemask: output.xml 就需要把工作空间和日志输出路径都改为G:\jenkins就可以了。     7.构建触发器(设置定时任务) Build periodically 在日程表中设置 触发器是用于控制自动化测试执行时间的 日程表里有5个数字,分别为: H * * * * 分钟:0­59 小时:0­23 日:1­31 月:1­12 周:0­7 0和7都代表星期天   例如: 每15分钟执行一次 H/15 * * * * (注意:要空一格,H/1 一小时,H/2-15 15分钟 ) 每天8点­16点,每1小时执行一次   H 8­16/1 * * *      

 

 

8.添加插件,以及插件的使用  robot framework plugin  Email extension template  Email ext recipients column 第一步:在首页,选择系统管理,管理插件,在过滤中输入插件名称 1. robot framework plugin  

 

 

  2. Email extension template  

 

 

  3. Email ext recipients column plugin  

 

 

    安装后如下      

 

 

                    如果出现插件无法下载的情况,可以进行如下设置:  

 

 

 

 

 

        9.Robot framework plugin作用:通过图表查看自动化测试结果 Robot framework plugin使用 第一步:选择一个工程,点击配置    

 

 

  第二步:在构建­­­构建后操作中点击 publish robot framework results       第三步:输入路径,此路径为批处理命令执行后生成xml,html后的路径(工作空间中的路径) G:\jenkins\workspace\auto_test  

 

 

 

 

 

      第四步:添加后的结果       第五步:robot framework plugin 插件作用,主要是能显示robot results,pass or Fail 以及 统计执行成功失败的比例 在安装frameworkplugin后不能选择到插件,就需要重启tomcat,或者重启jenkins 再不行就 安装一个zentimestamp.plugin  

 

 

六、Jenkins设置邮件通知: 安装插件 Email Ext Recipients Column Plugin 电子邮件收件人列插件 Email Extension Plugin 电子邮件扩展插件 Email Extension Template Plugin 电子邮件扩展模板插件    

 

 

    第一步:在首页点击系统管理­­>点击系统设置­­>找到Jenkins   Location  

 

 

第二步:这里电子邮件通知,需要设置的参数如下         第三步:增加构建后操作步骤,选择e­mail   notification

 

 

        第四步:收件人:输入收件人邮箱,在构建失败后,会发送邮件通知    

 

 

      第五步:选择可编辑的电子邮件通知,可以替换邮件的主题和内容    

 

 

        第六步:点击高级设置

 

 

      第七步:   点击右下角的高级设置选择添加触发器,选择总是  

 

 

                                  第八步:最后收到邮件,说明你的邮件通知设置成功!  

 

 

    第九步:设置Jenkins的时间和电脑同步

 

 

                                    打开   【系统管理】­>【脚本命令行】运行下面的命令: System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone',    'Asia/Shanghai')    

 

 

 

 

 

      七、Jenkins+svn实现拉取最新的代码或脚本跑定时任务: 1、打开配置、找到subversion、Local   module  directory里面有个点"."需要删除:    

 

 

                          2、添加凭据:  

 

 

    3、把要被运行的脚本文件放入上传到svn:  

 

 

                4、然后再构建输入:Pybot ­­test test2 G:\jenkins\auto\论坛项目.txt 也可以设置定位任务上面过程有讲到    

 

 

 

 

 

 

 

        5、点击构建      

 

 

                              6、点击构建后Jenkins会自动拉取SVN服务器的代码到Jenkins的工作空间然后通过执行 Windows批处理命令就可以执行从 SVN拉取下来的最新的代码,这样就可以实时跑服务器中最新的代码或者自动化测试用例。    

 

 

 

  分类: jenkins 好文要顶 关注我 收藏该文   多测师_肖sir
粉丝 - 155 关注 - 0       0 0       « 上一篇: 多测师app __课堂讲解随记(1)__高级讲师肖sir
» 下一篇: 多测师讲解app_app出现ANR(无响应)_高级讲师肖sir posted on 2020-10-19 16:13  多测师_肖sir  阅读(257)  评论(0)  编辑  收藏  举报   刷新评论刷新页面返回顶部 发表评论 编辑预览     自动补全

 退出

 

[Ctrl+Enter快捷键提交]

  【推荐】MASA Framework 开启全新的.NET应用开发体验
【推荐】下一步,敏捷!云可达科技SpecDD敏捷开发专区
【推荐】腾讯云多款云产品1折起,买云服务器送免费机器   编辑推荐:
· 一个奇葩的线上问题,导致我排查了一天
· 如何使用 .NET 6 的 IHostedService 和 BackgroundService?
· 纯 CSS 实现拼图游戏
· ASP.NET Core 6 框架揭秘实例演示:异常处理高阶用法
· 彻底了解线程池的原理——40行从零开始自己写线程池 最新新闻
· 巨头纷纷入场:学习机接棒千亿教培市场?
· 曝iPhone 14 Pro Max状态栏下移 图标更靠近两侧
· 换配件动辄过万 伤不起的新能源车
· 新“超级地球”三成质量是水
· 苹果即将支付9500万美元解决翻新设备集体诉讼案
» 更多新闻...     Powered by:
博客园
Copyright © 2022 多测师_肖sir
Powered by .NET 6 on Kubernetes

标签:__,sir,插件,点击,构建,jenkins,Jenkins,20220826,集成
From: https://www.cnblogs.com/xiaolehua/p/16628826.html

相关文章

  • 生成随机数
    publicstaticvoidmain(String[]args){Randomrandom=newRandom();random.ints(-100,100).limit(10)/......
  • heloworld
    HelloWorld1随便新建一个文件夹存放代码2新建一个Java文件文件的后缀名为.javaHelloWorld.java【注意】系统可能不显示后缀需要自行打开填入代码public......
  • MySQL大量的delete后空间如何回收
    今天试验了MySQL(版本5.5.27)大量的delete后空间如何回收问题一、myisam表 optimize table tablename;  #二、innodb表(独立表空间)--innodb-file-per-tablea.方......
  • python 比较两个list
    参考1 https://blog.csdn.net/weixin_44151034/article/details/124286429 参考2参考代码defis_diff_ele(list1,list2):"""判断两个列表元素是否一致(......
  • HTML与CSS-Day1
    一、html骨架<!DOCTYPEhtml>这句话的大意就是告诉我们html用哪个版本,html对应的就是html5.<html>所有的html中的根节点,标签中的老大<head>头部标签<tit......
  • Ajax的封装
        //ajax的回调函数的封装,建议不使用回调函数处理异步问题    letbtn=document.querySelector('button')    btn.addEventListener('clic......
  • 深入理解JUC:第四章:CountDownLatch倒计时器
    理论:CountDownLatch是一个非常实用的多线程控制工具类。常用的就下面几个方法:CountDownLatch(intcount)//实例化一个倒计数器,count指定计数个数countDown()//计数......
  • 深圳华锐视点:3D虚拟钢铁厂仿真展示推动企业运维精准可控
    随着计算机、传感、网络通信等技术的飞速发展,虚拟现实也逐渐渗透到工业领域,给制造业的研发、生产、管理和服务带来了深刻的变化,进一步推动了智能工厂的发展。三维虚拟......
  • 操作系统的运行机制
    1.1用户空间与内核空间(用户态/管态)内核程序----应用程序核心态-----用户态特权指令-----非特权指令1.2时钟管理计时器:提供系统时间时钟中断:进程切......
  • Objective-c
    标注10天的课程,打算2天看完,改成3天看完,最后4天看完了,Objective-c基于c,加了面向对象的思想和自己的一些奇怪的语法,万变不离其宗。感觉最大的收获是学了很多内存管理的知识。......