多测师肖sir_高级金牌讲师_jenkins搭建

jenkins操作手册

===================================================================
一、jenkins介绍
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
1)持续的软件版本发布/测试项目。
2)监控外部调用执行的工作。

8、 Jenkins拥有的特性包括:
1)易于安装­只要把jenkins.war部署到servlet容器,不需要数据库支持。
2)易于配置­所有配置都是通过其提供的web界面实现。
3)集成RSS/E­mail通过RSS发布构建结果或当构建完成时通过e­mail通知。
4)生成JUnit/TestNG测试报告。
5)分布式构建支持Jenkins能够让多台计算机一起构建/测试。
6)文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。
7)插件支持:支持扩展插件,你可以开发适合自己团队使用的工具。
8)Jenkins的主要目标是监控软件开发流程,快速显示问题。所以能保证开发人员以及相关人员省时省力提高开发效率。

9、Jenkins中的节点?
一个节点是一个代理服务器。建议使用字母、数字或字母和数字的组合。
最好见名知意。不建议 使用标点符号和中文(中文命名没有问题,但Job中无法引用)

==================================================================

二、Jenkins环境搭建
一、需要的应用软件如下:
JDK1.8 最好安装1.8的:
查看jdk是否安装好
在这里插入图片描述
以上是安装成功:
如果没有安装就要上传jdk
在这里插入图片描述
安装jdk
在这里插入图片描述

三、linux环境上搭建jenkins
1、服务器tomcat

在这里插入图片描述
2、解压服务器
命令:
tar -zxvf apache-tomcat-7.0.56.tar.gz
在这里插入图片描述
查看tomcat是否可以运行:
在bin目录下启动
在这里插入图片描述
出现tomcat猫界面:表示ok
http://192.168.157.134:8080/
在这里插入图片描述

删除tomcat的包,把本地jenkins.war包存放到tomcat路径下apache­tomcat­7.0.56/webapps
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

解压war包(解压前停止服务),要通过启动服务器,在启动服务

在这里插入图片描述

第二步:启动tomcat,启动后jenkins.war包会自动解压,生成一个jenkins目录
在这里插入图片描述

第三步:浏览器地址栏中输入IP地址+8080端 口/jenkins(http://192.168.157.134:8080/jenkins),正常打开jenkins应用页面 如果页面报错要关闭防火墙:service iptables stop 或 systemctl stop firewalld.service
页面显示如下:
在这里插入图片描述

这段话翻译过后大概的意思就是:
Jenkins管理员密码已经写入服务器/root/.jenkins/secrets/initialAdminPassword 文件中, 复制密码粘贴到下面的文本框中。
讲解下:/root 路径就是 cd ~
cat /root/.jenkins/secrets/initialAdminPassword
在这里插入图片描述

密码: 41ec6d8ca3d04ec9a6b8c9d1b4b1d580
第四步:在linux环境中输入命令: cat /root/.jenkins/secrets/initialAdminPassword ,复 制密码 到文本框中,点击continue
复制:密码:41ec6d8ca3d04ec9a6b8c9d1b4b1d580
在这里插入图片描述
密码:06429cea95184f06815afe908114aaed

以上是登录密码;
在这里插入图片描述

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

最后,当你看到这个页面,说明jenkins已经安装好了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述==============================================
第七步:Jenkins修改密码
方法(1):

1.点击页面右上角用户名
2.点击设置
3、输入修改密码
4.修改密码,点击应用,保存。
账号:admin
修改密码为:123456
在这里插入图片描述

4.重启jenkins
在浏览器地址中输入:http://192.168.153.131:8080/jenkins/restart ­­地址以自己的IP地 址为准
(添加restart)jenkins重启
重启后,可以用新密码登录。
账号:admin
修改密码为:123456

第八步:如果出现其他异常需要重新安装jenkins环境的步骤如下:(如果Jenkins启动正常请忽 略以下操作)
第一步:rm ­rf /root/.jenkins ­­清空所有数据
第二步:webapps中删除Jenkins目录 重启tomcat
第三步:一切按照上面的步骤操作

注意点:依赖包出错不用管

===================================================================

四、jenkins添加节点 第一步:首页点击系统管理——》管理节点——》新建节点
(注意点:(先设置全局安全配置))
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

第二步:输入节点名称,勾选固定代理
在这里插入图片描述

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

配置好后的节点如下
在这里插入图片描述
在配置中安全设置中:选择代理,随机选取,在保存
在这里插入图片描述

在这里插入图片描述

出现如下的信息:说明代理服务器没有连接jenkins

节点可以理解为一个代理,一台服务器。Jenkins是一个ci(持续集成)平台,每个代理 服务器在这里插入图片描述
要与jenkins进行集成,需要执行java ­jar ,后面是代理服务器Ip地址,通过这条 命令,执行成功说明代理已集成在ci平台

将代理连接jenkins方法: 从代理命令行运行
第一步:下载agent.jar文件 ,保存在本地:D:\cd\jek\agent.jar
在这里插入图片描述

第二步:在dos中D:\cd\jek\目录下执行命令
在这里插入图片描述

注意:把节点中的路径的复制到dos下执行
路径:java -jar agent.jar -jnlpUrl http://192.168.157.134:8080/jenkins/computer/dcs35/jenkins-agent.jnlp -secret 0c0d947aaaac81aacb6af01cb6bd312b2bc15bf74caf04efbe48c8358de140f4 -workDir “D:\cd\jek”
这里需要注意的是:根据自己的jenkins页面内容copy,再执行
在这里插入图片描述
执行之后,看到Agent discovery successful 和connected 说明代理连接jenkins成功

在这里插入图片描述
成功jenkins首页显示,代理电脑右下方红色叉叉消失,并且显示代理服务器详细信息
以上表示节点已经配好;

==============================================================

构建项目:

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

第二步:输入项目具体配置

项目名称:自定义

限制可以运行该项目的位置:输入标签,标签为代理的标签(指定项目在哪个代理机上执行)

3.构建:点击增加构建步骤 ,选择执行windows批处理命令在这里插入图片描述

python+绝对路径, 在保存
在这里插入图片描述

5,然后点击立即构建­­>构建完成之后点击#2­­>点击控制台输出就可以看到相关的 日志了
在这里插入图片描述
在这里插入图片描述

6.构建触发器(设置定时任务) Build periodically 在日程表中设置
在这里插入图片描述

触发器是用于控制自动化测试执行时间的 日程表里有5个数字,分别为:
格式:H/* ****
H * * * *
第一个* 表示: 分钟:0­—59
第二个** 表示: 小时:0­–23
第三个* 表示 日:1­—31
第四个* 表示 月:1­—12
第五个* 表示 周:0–­7 0和7都代表星期天

H 表示随机

  • 表示所有
    -表示连续
    / 表示间隔
    , 表示和
    M-N 指定一个范围值

例如:
案例1:
小
2、每隔2小时构建一次
H H/2 * * *

3.每天晚上8点定时构建
H 20 * * *
4. 每三天执行一次
H H H/3 * *
5. 每三天执行一次(每个月1-10日)

H H (1-10)/3 * *
6.每周内 2,4,6 要执行一次
H H * * 2,4,6

7.每小时 在前半个小时的每5分钟运行一次
H(0-30)/5 * * * *

==========================================

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

robot framework plugin

Email extension template

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拉取下来的最新的代码,这样就可以实时跑服务器中最新的代码或者自动化测试用例。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/135583.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大模型时代,开发者成长指南 | 新程序员

【编者按】GPT 系列的面世影响了全世界、各个行业,对于开发者们的感受则最为深切。以 ChatGPT、Github Copilot 为首,各类 AI 编程助手层出不穷。编程范式正在发生前所未有的变化,从汇编到 Java 等高级语言,再到今天以自然语言为特…

Python高级语法----Python多线程与多进程

文章目录 多线程多进程注意事项多线程与多进程是提高程序性能的两种常见方法。在深入代码之前,让我们先用一个简单的比喻来理解它们。 想象你在一家餐厅里工作。如果你是一个服务员,同时负责多个桌子的顾客,这就类似于“多线程”——同一个人(程序)同时进行多项任务(线程…

SSM 线上知识竞赛系统-计算机毕设 附源码 27170

SSM线上知识竞赛系统 摘 要 科技进步的飞速发展引起人们日常生活的巨大变化,电子信息技术的飞速发展使得电子信息技术的各个领域的应用水平得到普及和应用。信息时代的到来已成为不可阻挡的时尚潮流,人类发展的历史正进入一个新时代。在现实运用中&#…

虚幻引擎:如何使用 独立进程模式进行模拟

第一步:先更改配置 第二步,在启动的两个玩家里面,一个设为服务器,一个链接进去地图就可以了 1.设置服务器 2.另一个玩家链接

企业级低代码开发,科技赋能让企业具备“驾驭软件的能力”

科技作为第一生产力,其强大的影响力在各个领域中都有所体现。数字技术,作为科技领域中的一股重要力量,正在对传统的商业模式进行深度的变革,为各行业注入新的生命力。随着数字技术的不断发展和应用,企业数字化转型的趋…

远程运维用什么软件?可以保障更安全?

远程运维顾名思义就是通过远程的方式IT设备等运行、维护。远程运维适用场景包含因疫情居家办公,包含放假期间出现运维故障远程解决,包含项目太远需要远程操作等等。但远程运维过程存在一定风险,安全性无法保障,所以一定要选择靠谱…

如何快速教你看自己电脑cpu是几核几线程

目录 一、我们日常中说的电脑多少核多少线程,很多人具体不知道什么意思,下面举例4核和4线程什么意思。二、那么4线程又是怎么回事呢?三、那么知道了上面的介绍后怎么看一台电脑是几核,几线程呢? 一、我们日常中说的电脑…

​软考-高级-信息系统项目管理师教程 第四版【第24章-法律法规与标准规范-思维导图】​

软考-高级-信息系统项目管理师教程 第四版【第24章-法律法规与标准规范-思维导图】 课本里章节里所有蓝色字体的思维导图

springboot 项目升级 2.7.16 踩坑

记录一下项目更新版本依赖踩坑 这个是项目最早的版本依赖 这里最初是最初是升级到 2.5.7 偷了个懒 这个版本的兼容性比较强 就选了这版本 也不用去修改就手动的去换了一下RabbitMQ的依赖 因为这边项目有AMQP 风险预警 1.spring-amqp版本低于2.4.17的用户应升级到2.4.17 2.spri…

时序预测 | MATLAB实现WOA-CNN-BiLSTM-Attention时间序列预测(SE注意力机制)

时序预测 | MATLAB实现WOA-CNN-BiLSTM-Attention时间序列预测(SE注意力机制) 目录 时序预测 | MATLAB实现WOA-CNN-BiLSTM-Attention时间序列预测(SE注意力机制)预测效果基本描述模型描述程序设计参考资料 预测效果 基本描述 1.MAT…

开发知识点-golang

golang语言学习 环境搭建win10配置go环境 ubuntu20.04安装golang介绍下载 Go 压缩包调整环境变量验证 Go 安装过程 环境搭建 win10配置go环境 中文网进行下载 https://studygolang.com/dl 配置环境变量 增加GOROOT: 新建 -->变量名为: GOROOT(必须大写) 变量值: 你安装…

删除word最后一页之后的空白页

最近编辑word比较多,有时最后一页(最后一页内容还有可能是表格)之后,还有一页空白页,单独按下backspace、del都删不掉,很让人着急。 经过查询有几种方法: (1)点击选中空…

12、填写NGINX配置部署前端;运行jar部署后端

后端可以部署的方式,首先直接运行jar是肯定可以的。此外,可以单独开docker容器运行在容器中。 但是这里运行在容器中必要性,其实并不大。 当前我们直接运行jar来运行后端。后面推出集成docker。 直接运行jar包的方式,首先需要打…

Spark Streaming

Spark Streaming Spark Streaming概念Spark Streaming操作1 netcat传入数据2 DStream 创建3 自定义数据源4 接受kafka数据DStream 转换1无状态的转换2有状态的转换updateSateByKeyWindowOperations Spark Streaming概念 Spark Streaming 用于流式数据的处理。 Spark Streaming…

临界资源,临界区,通信的干扰问题(互斥),信号量(本质,上下文切换问题,原子性,自身的安全性,操作)

目录 引入 概念 临界资源 临界区 干扰存在原因 互斥 信号量 引入 举例 概念 介绍 表示可用资源数 表示等待进程数 申请信号量 信号量的本质 全局变量? 共享内存? 不安全问题 -- 上下文切换 原子性 信号量自身的安全性 原子操作的意义 操作 引入 通信…

Collection集合 迭代器遍历Iterator 和集合增强For

迭代器遍历Iterator 标准写法: 增强For for(类型 名称 : 集合 ) 举例: 不仅可以集合也可以数组 底层仍然是iterator

Power Apps-库组件连接数据表

点击添加数据 可以选择Excel或SharePoint导入 选择右侧边栏中的网站,再选择想要连接的数据表 点击插入,选择布局中的某个库, 选中它可以点击上方的布局,选择想要的样式 右侧选择数据源中的表就将组件与数据表连接起来了 如果想修…

Vite创建React项目,另外一种更加简单的方法

在上一篇blog中一个一个安装依赖dependencies,有没有一步到位的方法呢,有! 参考《React 18 Design Patterns and Best Practices Design, build, and deploy production-ready web applications with React》4th 第一章倒数第二节Vite as a solution有个…

flutter生态一统甜夏 @Android @ios @windowse @macos @linux @Web

(愿景)G o o g l e 中 国flutter生态一统天下(IT) Web Android ios Windowse Macos Linux Google中国https://space.bilibili.com/64169458 https://pub-web.flutter-io.cn 构建 Flutter Web 应用 构建 Flutter Web 应用 - Flutter 中文文档 - Flutter 中文开发者网站 …

vue3+setup 解决:this.$refs引用子组件报错 is not a function

一、如果在父组件中以下四步都没问题的话&#xff0c;再看下面步骤 二、如果父组件引用的是index页面 请在 头部加上以下代码 &#xff08;如果是form页面请忽略这一步&#xff09; <template> <a-modalv-model:visible"visible"title"头部名称&…