持续集成jenkins+gitee

首先要完成gitee部署,详见自动化测试git的使用-CSDN博客

接下来讲如何从git上自动拉取代码,实现jenkins无人值守,定时执行测试,生成测试报告。

需要这三个安装包

由于目前的jenkins需要至少java11到java17的版本,所以要先下载Java17.

1、安装JAVA17

java 17 的下载网址

jdk-17_windows-x64_bin.exe

Java Downloads | Oracle

双击java的安装包进行安装。

如果以前安装过java版本,请把以前的java版本先卸载掉。

下面开始配置环境变量

到这后新建JAVA_HOME的环境变量。

win10 系统 点击计算机--右键--属性--高级系统设置--环境变量--系统变量,

win 11 系统,打开控制面板,搜索查看高级系统设置

点击高级-->环境变量

选择系统变量下的新建,新建一个JAVA_HOME的系统变量,变量值为Java的JDK所在路径

选择“系统变量”下面的”新建“选项,变量名为“CLASSPATH,变量值.;%Java_Home%\bin;%Java_Home%\lib\dt.jar;%Java_Home%\lib\tools.jar

在环境变量中找到变量path,双击打开
添加%Java_Home%\bin;%Java_Home%\jre\bin;

然后点击确定--确定-确定。

环境变量配置完成后,点击确定选项

检查Java环境是否配置成功

按快捷键Win+R,输入cmd

输入java

输入javac

输入java -version ,可以看到版本号“17.0.11”已经安装完成了。

2、下载tomcat 和Jenkins

2.1 下载tomcat

首先下载tomcat,下载tomcat9.0版本,在左侧

Apache Tomcat® - Welcome!

下载tomcat9.0版本下的zip

把安装包解压到任意路径,路径中不能有中文,最好没有空格,apache-tomcat-9.0.89.zip

2.2 下载Jenkins

打开下载网址

Download and deploy

Jenkins的下载网址,左边是稳定的网址,右边是每周的版本。

选左边的稳定版。

下载LTS的.war文件

3、启动Jenkins

3.1 启动tomcat

把jenkins.war文件复制粘贴到tomcat安装路径webapps目录中.

C:\tomcat\apache-tomcat-9.0.62\webapps

1、打开tomcat安装路径下的bin文件夹,双击startup.bat

如果8080被占用,这时会有提示。

这时打开tomcat安装路径中的conf文件夹

用记事本打开server.xml文件,按ctrl+H,把8080全部替换成8089

如果8080端口没有被占用
    你之前没有部署过其他网站,没装过tomcat,一般不会占用

看到run Jenkins is fully up and running 就行了,也可以直接访问,2分钟后。

好了以后访问网址 http://localhost:8080/jenkins/

打开浏览器,输入网址

http://localhost:8080

能打开网页,显示tomcat版本号,说明tomcat正常启动了

http://localhost:8080/jenkins

能打开jenkins页面,就说明jenkins放到webapps目录中了

3.2 启动jenkins

http://localhost:8080/jenkins

根据jenkins页面提示,复制路径。

C:\Users\changcheng\.jenkins\secrets\initialAdminPassword

在任意文件夹中粘贴路径,用记事本打开

复制文件中的密码,粘贴到网址的输入框中,作为管理员密码

点击”安装推荐的插件“

耐心等待进度条走完

输入用户信息,创建管理员账号,注意:邮箱地址要求用126或者163邮箱的,没有的话,注册一个,点击保存并完成

点击保存并完成

点击开始使用jenkins

Jenkins安装完成

4、配置gitee

1.点击"管理jenkins"

2.点击"插件管理"

3、选择"可选插件"

4、搜索并勾选,gitee、allure、html publish、email extension ,点击安装。

5.点击”install without restart“,点击安装

6.重启tomcat

7、点击manage jenkins

8、点击config system

9、在gitee链接下面,点击”新增“

需要在插件管理里面配置一下gitee

将以前的网址复制进来,也就是gitee里面代码的网址,并添加以下链接名

10、打开gitee的私人令牌页面,获取一下token

https://gitee.com/profile/personal_access_tokens

11.创建一个新令牌

注意复制私人令牌

12.回到jenkins页面,点击”添加“--》jenkins

13.在类型中选择,gitee api令牌

14.粘贴之前复制的私人令牌,点击”添加“

选好之后就可以保存了。

16.在manage jenkins中,选择Tools

17.在页面底部,点击”新增 Allure Commandline“

18.去掉复选框自动安装

19.把allure的安装目录粘贴进来,C:\DDD\allure-2.17.3

20.输入别名”allure-2.17.3“

21.点击保存

22.回到首页

23.点击”新建item“

24.输入任务名称,autoFuncTest2

25.选择free style project,确定

新建item输入任务名称”autoFuncTest2“,一个自由风格的项目。

26.源码管理中,选择git

27.输入git项目地址

https://gitee.com/changcheng1211/autoFuncTest2.git

28.点击”添加“--》”jenkins“

29.输入gitee网址的登录邮箱,作为用户名

30.输入gitee的密码

31.点击”添加“

32.在credential下拉框中选择刚才添加的账号

33.在构建触发器中,勾选"Build periodically"

34.输入日程表

1、0 18 * * *      # 每天晚上6点自动执行

2、5个时间单位,分别代表分钟、小时、日期、月份、星期

4月17日晚上10点半自动执行 ,例:30 10 17 4 *

3、6个特殊符号

*  表示所有可能的取值

空格  用于时间单位的分割,有且只能又4个空格

-   表示区间。周一到周五每天晚上6点执行:0 18 * * 1-5

,  表示枚举

/   表示每隔多久执行一次。每隔10分钟执行一次:*/10 * * * *

H   用于分散服务器的负载
     有时我们不需要一定在整点执行,如果我们希望在区间中任意时间点执行都可以的话
     H可以帮我我们找一个最佳的时间点,分散服务器的压力。
    例
        每天晚上6点执行
            0 6 * * *
                这样一定在6点整执行,这时可能会和另一个jenkins任务冲突
            H 6 * * *
                这样会自动选择在6点到7点之间的一个比较空闲的时间执行
                可能在6:01,也可能在6:59

35.在构建中,选择增加构建步骤,选择”execute windows bach commands“

36.输入命令

要跑的命令,如果不在C盘,需要先切换盘符才能执行。

37.修改pytest.ini文件

模糊匹配  -k "login" 

38.点击”增加构建后步骤“,选择allure report

39.把allure-results改成result

因为项目中的目录是result,所以改成一致。然后点击保存。

40.保存,到了你设置的时间就会自动执行

41.也可以点击build now ,手动触发执行

42.执行完,点击#1

43.点击”控制台输出“,可以查看运行日志

44.可以点击"Allure Report",查看生成的报告。

        

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript——初识:JavaScript的组成、输入和输出语句... | JavaScript基础:变量,数据类型转换

目录 初识JavaScript JavaScript的组成 输入和输出语句 ECMAScript 6保留关键字 变量的命名规范 注意事项 JavaScript基础 变量的数据类型 数据类型分类 数据类型转换 转换为字符串型 转换为数字型 转换为布尔型 例题 初识JavaScript JavaScript的组成 Java…

搭建自己的AI模型应用网站:JavaScript + Flask-Python + ONNX

1. 前言 本文作者以一个前端新手视角,部署自己的神经网络模型作为后端,搭建自己的网站实现应用的实战经历。目前实现的网页应用有: AI 语音服务主页AI 语音识别AI 语音合成AI CP号码生成器 欢迎大家试用感受,本文将以博客基于G…

大数据—“西游记“全集文本数据挖掘分析实战教程

项目背景介绍 四大名著,又称四大小说,是汉语文学中经典作品。这四部著作历久不衰,其中的故事、场景,已经深深地影响了国人的思想观念、价值取向。四部著作都有很高的艺术水平,细致的刻画和所蕴含的思想都为历代读者所…

MyBatis使用 PageHelper 分页查询插件的详细配置

1. MyBatis使用 PageHelper 分页查询插件的详细配置 文章目录 1. MyBatis使用 PageHelper 分页查询插件的详细配置2. 准备工作3. 使用传统的 limit 关键字进行分页4. PageHelper 插件(配置步骤)4.1 第一步:引入依赖4.2 第二步:在m…

河南省文化旅游发展相关统计数据(2014-2023年)

数据时间:2014-2023年,近10年 数据格式:excel 数据来源:中国旅游统计年鉴、河南省统计公报 数据内容:包括河南省近10年来游客量、旅游总收入、旅游景区数量(包括A级)、星级酒店数、旅行社数、公…

mongodb-java apispringboot整合mongodb

mongodb入门mongodb-java api的使用springboot整合mongodb评论 一 MongoDB 1.1 MongoDB简介 ​ MongoDB是一个基于分布式文件存储的数据库。由C语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 ​ MongoDB是一个介于关系数据库和非关系数据库之间的产品&…

双链表——AcWing.827双链表

双链表 定义 双链表是链表的一种,它的每个节点有两个指针,一个指向前一个节点,一个指向后一个节点。这样使得链表可以双向遍历。 运用情况 频繁进行前后双向遍历操作时非常有用,比如在一些需要来回移动处理数据的场景。可以方…

嵌入式学习——Linux高级编程复习(TCP编程)——day44

基于TCP聊天: clientA.c clientB.c socket socket connect bind listen acce…

2024年了! 为什么还在用串口服务器?

在数字化飞速发展的2024年,串口服务器这一看似古老的技术仍然在工业自动化、远程监控和数据通信等领域发挥着重要作用。本文将从串口服务器的定义、功能、优势和使用场景四个方面来探讨,为什么串口服务器在今天仍然被广泛使用。 1. 什么是串口服务器 串口…

基于51单片机的红外计数器-1602显示

一.硬件方案 本设计的主要原理为:红外发射管发射红外线,红外接收管接收红外线,并且接收管当有红外线照射的时候,电阻比较小,当无线外线照射的时候电阻比较大,这样就可以通过一个电压比较器和一个基准电压进…

线程池ThreadPoolExecutor使用指南

线程池ThreadPoolExecutor使用指南 🧐使用线程池的好处是什么? 统一管理,减少资源获取创建的开销,提高利用率。 🔧线程池的参数 ​ThreadPoolExecutor​ 3 个最重要的参数: ​corePoolSize​ : 任务队列…

Linux系统编程:基础IO

目录 1.C语言文件回顾 2.系统文件I/O 2.1 系统接口介绍 2.2 文件描述符fd 2.3 重定向 2.4 理解缓冲区 2.5 理解文件系统 1.C语言文件回顾 在学习系统文件的操作之前,还记得C语言是如何进行对文件的操作的吗?下面看C语言接口&…

浪潮信息打造业界首款50℃进液温度服务器 PUE逼近理论极限1.0!

在科技飞速发展的今天,浪潮信息以其前瞻性的技术创新思维,再次突破行业极限,推出业界首个支持50℃进液温度的浸没式液冷服务器NF5180G7。这一创新成果不仅展现了浪潮信息在液冷技术领域的深厚实力,更标志着服务器冷却技术的一次重…

【2024亲测无坑】在Centos.7虚拟机上安装Oracle 19C

目录 一、安装环境准备 1、linux虚拟机安装 2、虚拟机快照 3、空间检查&软件上传 二、Oracle软件安装 1.preinstall安装及其他配置准备 2.oracle安装 三、数据库实例的安装 1.netca——网络配置助手 2.dbca——数据库配置助手 四、ORACLE 19C 在linux centos 7上…

基于PPO的强化学习超级马里奥自动通关

目录 一、环境准备 二、训练思路 1.训练初期: 2.思路整理及改进: 思路一: 思路二: 思路三: 思路四: 3.训练效果: 三、结果分析 四、完整代码 训练代码: 测试代码&#…

MySQL 日志(二)

本篇将继续介绍MySQL日志的相关内容 目录 一、二进制日志 简介 注意事项 删除二进制日志 查看二进制日志 二进制日志的格式 二、服务器日志维护 一、二进制日志 简介 二进制日志中主要记录了MySQL的更改事件(不包含SELECT和SHOW),例如:表的…

Base64编码的工作原理与实际应用

目录 前言 一、什么是Base64编码? 二、Base64编码的原理 三、Base64编码的应用场景 四、为什么要使用Base 64 五、Base64加密解密的实现 前言 当你需要将二进制数据转换为可传输和存储的文本格式时,Base64编码是一个常用的选择。在这篇博客中&#…

C++ 51 之 继承中的构造和析构

对象构造和析构的调用原则 继承中的构造和析构 子类对象在创建时会首先调用父类的构造函数父类构造函数执行完毕后,才会调用子类的构造函数当父类构造函数有参数时,需要在子类初始化列表(参数列表)中显示调用父类构造函数析构函数调用顺序和构造函数相…

可以用来制作硬模空心耳机壳的胶粘剂有哪些种类?

可以用来制作硬模空心耳机壳的胶粘剂有哪些种类? 制作耳机壳的胶粘剂有很多种类,常见的有环氧树脂胶水、UV树脂胶、快干胶、热熔胶等。 这些胶粘剂都有不同的特点和适用场景,可以根据自己的需求选择合适的类型。 例如: 环氧树脂…

Adobe设计替代软件精选列表

Adobe软件的替代列表,最初由 XdanielArt 收集,并由社区改进。您可以随意打开问题或拉出请求,或从数据中创建图像(以便于共享)。列表总是按照免费和开源选项的顺序排列,但根据您的用例,它可能不是最佳选择 替代因素 &am…