zl程序教程

您现在的位置是:首页 >  工具

当前栏目

Docker 实战(2)- 在 Jenkins 容器上的搭建持续集成环境和完成自动化测试

2023-09-27 14:25:57 时间

如果你还想从头学起 Docker 可以看看这个系列的文章哦

https://www.cnblogs.com/poloyy/category/1870863.html

 

搭建 Jenkins 容器

就是实战第一篇文章 https://www.cnblogs.com/poloyy/p/13954637.html

 

Jenkins 初始化流程访问 Jenkins查看本机 IP

ifconfig

 

查看容器运行端口

docker ps

image.png

我的是用主机 80 端口映射到容器的 8080 端口

 

浏览器访问 Jenkins

http://ip:80

 

查看管理员密码进入到页面


image.png

查看密码有两种方式

 

第一种 查看容器日志

docker logs jenkins1

image.png

打码那一行就是密码哦

 

第二种  去文件夹查看

cat /var/jenkins_node/secrets/initialAdminPassword

image.png

因为我创建 Jenkins 容器时 将主机的 /var/jenkins_node 目录映射了容器的 /var/jenkins_home 目录所以可以直接在主机查到管理员密码 而无需进入容器再查看

 

初始化流程

image.png

创建管理员用户

自己配啥记住就行了 没啥特别要求

image.png

实例配置

默认会给一个地址的 不改也可以

image.png

配置完成

image.png


进入主界面

image.png


下载插件

需要的插件 gitlab、gitlab hook、allure

image.png

image.png

image.png

在它安装完后 自己重启 Jenkins 容器

docker restart jenkins1

 

将插件源切换国内源

直接看这个教程 https://www.cnblogs.com/poloyy/p/12785401.html

 

Jenkins 汉化

直接看这个教程 https://www.cnblogs.com/poloyy/p/13955209.html

 

Jenkins 全局工具设置

image.png


配置 JDK

image.png


配置 Git

image.png


配置 allure

image.png

应用保存 即可

 

Jenkins 邮件功能测试

image.png

配置 Extended E-mail Notification

image.png


自定义电子邮 件通知的默认收件人列表

image.png

可以在项目中使用 $DEFAULT_RECIPIENTS 来包含此默认收件人列表 下面创建项目时讲到这个变量 若要向某人抄送或密件抄送 不是将其放在“收件人”列表中 请在电子邮件地址之前添加 cc: 或密件抄送 bcc: 例如 cc:someone example.com bcc:bob example.com

 

配置邮箱通知


image.png

使用 Jenkins 实现自动化测试将项目放到主机映射到容器的目录下

通过  xftp 将项目上传到主机

image.png

有 28 个测试用例都跑通了哦

 

Jenkins 创建任务工程新建任务

image.png

image.png

Jenkins 任务配置构建后操作

在完成系统设置后 还需要给需要构建的项目进行邮件配置

image.png

image.png

image.png

重点 这里就有 $DEFAULT_RECIPIENTS  上面也有讲到这个环境变量 默认收件人列表 如果需要添加新的收件邮件 需要用 , 隔开

image.png

邮件模板

直接复制粘贴到内容框就行

 !DOCTYPE html 

 html 

 head 

 meta charset UTF-8 

 title ${ENV, var JOB_NAME }-第${BUILD_NUMBER}次构建日志 /title 

 /head 

 body leftmargin 8 marginwidth 0 topmargin 8 marginheight 4 

 offset 0 

 table width 95% cellpadding 0 cellspacing 0 style font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif 

 本邮件由系统自动发出 无需回复 br/ 

 各位同事 大家好 以下为${PROJECT_NAME }项目构建信息 /br 

 td font color #CC0000 构建结果 - ${BUILD_STATUS} /font /td 

 /tr 

 td br / 

 b font color #0B610B 构建信息 /font /b 

 hr size 2 width 100% align center / /td 

 /tr 

 li 项目名称 ${PROJECT_NAME} /li 

 li 构建编号 第${BUILD_NUMBER}次构建 /li 

 li 触发原因 ${CAUSE} /li 

 li 构建状态 ${BUILD_STATUS} /li 

 li 构建日志 a href ${BUILD_URL}console ${BUILD_URL}console /a /li 

 li 构建 Url a href ${BUILD_URL} ${BUILD_URL} /a /li 

 li 工作目录 a href ${PROJECT_URL}ws ${PROJECT_URL}ws /a /li 

 li 项目 Url a href ${PROJECT_URL} ${PROJECT_URL} /a /li 

 li 测试报告 a href ${PROJECT_URL}allure ${PROJECT_URL}allure /a /li 

 /ul 

 h4 font color #0B610B 失败用例 /font /h4 

 hr size 2 width 100% / 

$FAILED_TESTS br/ 

 h4 font color #0B610B 最近提交(#$SVN_REVISION) /font /h4 

 hr size 2 width 100% / 

${CHANGES_SINCE_LAST_SUCCESS, reverse true, format %c , changesFormat li %d [%a] %m /li }

 /ul 

详细提交: a href ${PROJECT_URL}changes ${PROJECT_URL}changes /a br/ 

 /td 

 /tr 

 /table 

 /body 


image.png

image.png

最后保存

 

进行第一次构建

image.png

查看控制台输出

image.png

邮件发送成功

 

Jenkins 任务配置构建操作

主要两个任务

配置 pytest 命令生成 allure 报告

 

配置 pytest 命令

image.png

生成 allure 报告

image.png

image.png

这张图是重点哦

 

保存 就成功了

 

进行第二次构建

image.png