【持续集成_03课_Jenkins生成Allure报告及Sonar静态扫描】

1、

一、构建之后的配置

1、安装allure插件

安装好之后,可以在这里搜到已经安装的

2、配置allure的allure-commandline

正常配置,是要么在工具里配置,要么在系统里配置

allure-commandline是在工具里进行配置

两种方式进行配置

1)直接下载,比较慢

直接保存即可下载

2)通过本地的包配置

也就是到版本号这一级就可以了,不要到bin目录

3、项目构建之后的操作--生成报告

共2个步骤:

1.生成数据(告诉Jenkins你的数据在哪里)

2.通过数据生成报告(Jenkins会给你做)

1)选择要配置的项目

2)点击配置

3) 选择构建后的操作

4) 选择步骤

5)选择构建后进行报告

6)报告内容-配置

6.1)在工作空间查看main文件
6.2)在main文件查看运行结果存放的文件夹的名称
6.3)在allure-report的配置里,这个路径,要配这这个文件夹的名称

7)配置完成后,这里显示allure-report

8)运行生产报告

生成对应的产生的报告

PS:Jenkins在哪里,服务器就在哪里,虚拟环境就在哪里。

9)报告信息通知项目相关人员

9.1)方法一:企业微信-机器人

创建一个企业微信群,并且添加一个机器人,并且复制它的Webhook地址

9.1.1)在企业微信添加机器人

创建机器人,拿到机器人的webhook地址

9.1.2)下载对应程序的插件-Qy Wechat Notification

点击安装后,下载成功

9.1.3) 需要Jenkins能够访问这个地址:在system配置
9.1.4)进入项目,配置构建后的操作--企业微信通知

此时

9.2)方法二:邮件方式 (稍微复杂一点)

第一步:系统管理(ManageJenkins)一>系统配置(System)一>系统管理员邮件地址(发送者),设置邮箱配置

9.2.1)配置发送人邮箱--系统管理员邮箱

在system中配置

配置发送人--系统管理员邮箱(尽量不要使用QQ邮箱)

9.2.2)授权

授权--系统管理(ManageJenkins)一>系统配置(System)一>扩展电子邮件通知(ExtendedE-mailNotification)

在邮箱网页版的设置里面找到smpt的服务器地址

放到Jenkins里面,端口,默认是25

网页版邮箱这里必须是开启的

填写授权码

获取新的授权码

这个授权码一般只会显示一次

复制后,填写

用户名是邮箱地址,密码是授权码,描述也用授权码即可

要选择添加后的授权和账号

9.2.3)项目的配置--构建后的操作

配置四项

第4项要打开高级设置

找到tigger

删掉之前的

添加always

构建后,发送的邮件

打开报告的地址

二、使用Sonar进行静态扫描

1、什么是Sonar

Sonar(SonarQube)是一个开源平台,用于管理源代码的质量

2、Sonar Qube的安装

官网:Code Quality, Security & Static Analysis Tool with SonarQube | Sonar

官网下载的话,会让用jdk19的版本,这个版本太高了,安装比较麻烦,建议使用老师提供的安装包,不要自己在官网下载了。

1)直接安装老师的安装包

(建议用老师的sonar的版本,Sonar 9.7.0的版本,使用 JDK 11的版本)

2)启动

win:在当前目录打开cmd ,输入:StartSonar.bat 直接回车

启动之后,打开下面这个链接:(会有点慢),一直超时,因为比较耗资源

http://localhost:9000/

账号密码:admin admin

打开

3)修改端口号(如果需要的话)

如果上面的9000端口被占用,那么需要修改端口,修改端口号的方法

打开上面这个文件,搜索9000

把9000修改为不一样的端口号,比如8801

4)汉化:(非必要)

汉化后

汉化:因为我们的版本是 9.7 , 但是目前是 10.X的版本,所以我们这个位置需要手动去进行下载对应的jar

包,并且放在:sonarqube-X.X/extensions/plugins目录下,然后重启Sonar Qube

需要下载 这个Jar包

Release sonar-l10n-zh-plugin-9.7 · xuhuisheng/sonar-l10n-zh · GitHub

5)官网下载

如果是官网下载的话,官网界面:

要选择免费的开源的

3、安装SonarScanner(本地/插件)

1)方法一: 通过本地的bat文件进行执行

地址:SonarScanner CLI

拿到地址:

2)扫描器是以一个命令的方式进行执行。,要执行下面4个命令
2.1) 4个命令放的位置

在部署之前要扫描

组成应该是什么样子?

  1. SonarScanner 位置在哪里?

F:\ProjectHcEdu\cicdclass\day03\sonar-scanner\Windows\sonar-scanner-4.7.0.2747-windows\bin\sonar-scanner.bat

  1. 扫描之后项目的名字叫什么?

-D"sonar.projectKey=fuben"

  1. 扫描之后显示在什么位置 ? SonarQube地址

-D"sonar.host.url=http://127.0.0.1:9000"

  1. SonarQube地址对应的账号密码

-D"sonar.login=admin" -D"sonar.password=admin1"

方法二: 通过插件进行执行

第一步:Jenkins安装扫描器的插件:SonarQube Scanner,下载好了最好重启一下Jenkins

第二步:进行配置:tools

第三步:配置对应的信息

3)构建结果

测试就看看有没有什么影响,问题由开发来解决

4、通过插件来执行

插件是不需要执行这3个命令的,

第一个位置是本地安装的位置,插件不需要。

3、4那2个命令是在tools配置的,不需要单独执行

只需要维护项目名字即可

第一步:Jenkins安装扫描器的插件:SonarQube Scanner,下载好了最好重启一下Jenkins

下载完成

第二步:进行配置:tools

第三步:配置对应的信息

添加凭证的方式

上面这个凭证数据(srcret和描述)获取的方式,如下:

进入到Sonar Qube里面

选永不过期

然后回到Jenkins把刚才这个配上

第三步:配置项目

sonar.projectKey=SONAR-{JOB_NAME}-{BUILD_NUMBER}

通过变量方式获取运行项目的名字

然后就可以去构建了。

相关推荐
鸽芷咕23 分钟前
【Python报错已解决】ModuleNotFoundError: No module named ‘paddle‘
开发语言·python·机器学习·bug·paddle
子午34 分钟前
动物识别系统Python+卷积神经网络算法+TensorFlow+人工智能+图像识别+计算机毕业设计项目
人工智能·python·cnn
风等雨归期42 分钟前
【python】【绘制小程序】动态爱心绘制
开发语言·python·小程序
Adolf_19931 小时前
Flask-JWT-Extended登录验证, 不用自定义
后端·python·flask
冯宝宝^1 小时前
基于mongodb+flask(Python)+vue的实验室器材管理系统
vue.js·python·flask
叫我:松哥1 小时前
基于Python flask的医院管理学院,医生能够增加/删除/修改/删除病人的数据信息,有可视化分析
javascript·后端·python·mysql·信息可视化·flask·bootstrap
Eiceblue2 小时前
Python 复制Excel 中的行、列、单元格
开发语言·python·excel
NLP工程化2 小时前
对 Python 中 GIL 的理解
python·gil
极客代码2 小时前
OpenCV Python 深度指南
开发语言·人工智能·python·opencv·计算机视觉
liO_Oil2 小时前
(2024.9.19)在Python的虚拟环境中安装GDAL
开发语言·python·gdal安装