基于Jenkins+Allure+HTML邮件的自动化测试环境部署


前言

作为测试人员,自动化框架和自动化用例写完之后,工作基本完成了一大半了,最后一部就上CI持续集成,这一步不得不做啊,否则不完美。下面就针对自动化代码上持续集成的设置做个介绍。


一、操作步骤

1.新建一个Item

这里选择自由风格的项目
在这里插入图片描述

2.设置git管理源码

  1. 进入刚才建的Item
  2. 点击“配置”进入项目配置页面
  3. 点击“源码管理”,选择Git
  4. 在“Repository URL”处输入git项目地址
  5. 在“Credentials”处选择“添加-Jenkins”
  6. 选择“Username with password”
  7. 用户名填写你git的用户名,密码填写你git的密码,然后保存
  8. 这时候你就可以在“Credentials”里选择刚添加的凭证
  9. 没有红色提示后,保存。
    在这里插入图片描述

3.设置构建脚本

  1. 点击“构建”
  2. 这里填写构建脚本(我这里以python示例)
  3. 保存配置
    在这里插入图片描述

4.配置邮件服务

  1. 安装“Email Extension Plugin”(不再赘述)
  2. 进入Jenkins-Manage Jenkins-Configure System
  3. 找到“邮件通知”,这里我们需要配置默认邮箱服务,这里以腾讯企业邮箱为例
  4. “用户默认邮件后缀”填写你邮箱的后缀
  5. 用户名和密码也填写你的
  6. 重点:这里设置完了往上滑,找到“Jenkins Location”,这里的“系统管理员邮件地址”要和你的保持一致。
  7. 最后,打开“通过发送测试邮件测试配置”,输入一个邮箱测试下是否可以收到邮件。
    在这里插入图片描述
    在这里插入图片描述

5.配置Extended E-mail Notification

这里配置其实和第4步是一样的,就不再多说,如图
在这里插入图片描述

6.添加Allure Report

选择“构建后操作”-“Allure Report”
这里其实就是两个目录路径设置下就可以了,我一般直接默认
在这里插入图片描述

7.添加Editable Email Notification

选择“构建后操作”-“Editable Email Notification”

  1. Project Recipient List:收件人,多个收件人用逗号分隔
  2. Content Type:邮件内容类型,这里我们选择“HTML (text/html)”
  3. Default Subject:邮件主题
  4. Default Content:邮件内容,我们这里写入HTML内容,模板文后提供参考。
  5. 保存
    在这里插入图片描述
    邮件效果图:
    在这里插入图片描述
    HTML模板:
<table width="95%" cellpadding="0" cellspacing="0" style="font-size:16pt;font-family:Tahoma, Arial, Helvetica, sans-serif;">
	<tbody>
		<tr>
			<td>
				<br />
<b><span><span>xx接口自动化构建信息</span></span></b>
				<hr />
			</td>
		</tr>
		<tr>
			<td>
				<ul>
					<div style="font-size:18px;">
						<li>
							构建名称:xx接口自动化测试
						</li>
						<li>
<if $BUILD_STATUS neq "Successful">
							构建结果: <span style="color:red;">Fail</span>
<if $BUILD_STATUS eq "Successful">
							构建结果: <span style="color:red;">Pass</span>
						</li>
						<li>
							触发原因:每日定时测试
						</li>
						<li>
							执行环境:测试环境
						</li>
						<li>
							测试报告地址:<a href="${BUILD_URL}allure/" target="_blank">点击链接,查看报告</a>
						</li>
					</div>
				</ul>
			</td>
		</tr>
	</tbody>
</table>

8.构建测试

构建测试下,不出意外,已经能收到邮件流程


注意点

后面慢慢加吧、、、、

### 概述 搭建集成 **GitHub、Jenkins、Pytest 和 Allure** 的自动化测试平台,主要涉及以下几个方面: 1. 使用 Docker 部署 Jenkins 环境; 2. 在 Jenkins 中配置 Pytest 测试任务; 3. 集成 Allure 报告生成插件; 4. 与 GitHub 进行连接,实现代码推送后自动触发测试流程。 --- ### 使用 Docker 部署 Jenkins 环境 可以使用 `docker-compose.yml` 文件快速部署 Jenkins 容器,并确保其具备运行 Python 自动化测试的能力。以下是一个完整的配置示例: ```yaml version: '3' services: jenkins: image: jenkins/jenkins:lts privileged: true user: root ports: - "8080:8080" - "50000:50000" volumes: - jenkins_home:/var/jenkins_home - /var/run/docker.sock:/var/run/docker.sock - /usr/bin/docker:/usr/bin/docker - /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 volumes: jenkins_home: ``` 启动容器后,在浏览器中访问 `http://<服务器IP>:8080` 即可进入 Jenkins 初始化界面。初始化完成后,登录并进行必要的插件安装和全局工具配置[^3]。 --- ### Jenkins 中配置 Pytest 测试任务 在 Jenkins 中创建一个新的自由风格项目(Freestyle Project),并进行如下配置: #### 1. 源码管理(Source Code Management) 选择 Git,并填写你的 GitHub 仓库地址以及凭据(建议使用 Personal Access Token): ``` Repository URL: https://github.com/yourname/yourrepo.git Branches to build: */main 或 */master ``` #### 2. 构建环境(Build Environment) 勾选 “Delete workspace before build starts”,确保每次构建都是干净的环境。 #### 3. 构建步骤(Build Steps) 选择“Execute shell”或“Windows Batch Command”,根据系统类型执行以下命令: ```bash # 安装依赖 pip install -r requirements.txt # 执行 Pytest 测试并将结果输出到 allure-results 目录 pytest test_your_module.py --alluredir=./allure-results --clean-alluredir ``` --- ### 配置 Allure 报告插件 在 Jenkins 插件管理中安装 **Allure Report Plugin**,然后在项目的“Post-build Actions”中添加“Report Generation”,指定 Allure 结果目录为 `./allure-results`。 完成配置后,每次构建成功后会自动生成可视化的 Allure 测试报告页面。 --- ### 与 GitHub 集成实现持续集成 在 GitHub 仓库中设置 Webhook,指向 Jenkins 的钩子地址,例如: ``` http://<jenkins-server>:8080/github-webhook/ ``` 这样当有新的提交推送到 GitHub 时,Jenkins 就会自动拉取代码并触发构建任务,从而实现完整的 CI/CD 流程。 --- ### 示例:完整 Jenkinsfile 实现(适用于 Pipeline) 如果使用 Jenkins Pipeline,可以在项目根目录下创建 `Jenkinsfile`,内容如下: ```groovy pipeline { agent any stages { stage('Clone Repository') { steps { git branch: 'main', url: 'https://github.com/yourname/yourrepo.git' } } stage('Install Dependencies') { steps { sh 'pip install -r requirements.txt' } } stage('Run Tests') { steps { sh 'pytest test_your_module.py --alluredir=./allure-results --clean-alluredir' } } } post { always { allure includeProperties: false, jdk: '', results: [[path: 'allure-results']] } } } ``` 该文件定义了从代码拉取、依赖安装、执行测试到生成 Allure 报告的全过程。 --- ### 注意事项 - 确保 Jenkins 容器内已安装 Python、Pytest 及相关依赖库; - 若 Jenkins 运行在 Linux 系统上,推荐使用虚拟环境(如 `venv`)隔离测试依赖; - Jenkins 容器需要具有读写权限以生成 Allure 报告; - 如果遇到权限问题,可在容器启动时加上 `-uroot` 参数以提升权限级别。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值