目录
一、安装Docker
二、安装Docker Compose
三、准备测试用例
四、配置docker-compose.yml
五、启动Jenkins
六、配置Jenkins和Allure插件
七、创建含pytest的Jenkins任务
一、安装Docker
在CentOS上,首先更新包管理工具并安装所需的包。
sudo yum update -y
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
接下来,添加Docker的官方仓库,然后安装Docker。
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io
在执行这步骤的时候可能会出现下载Docker不成功,我后面采用aliyun下载的并设置了自己的代理。
启动Docker服务,并设置为开机自启。
sudo systemctl start docker
sudo systemctl enable docker
二、安装Docker Compose
需要下载Docker Compose的当前稳定版本。检查Docker Compose GitHub仓库上的最新版本。
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
这里最开始下载存在问题,我是登录仓库后下载对应的文件后,通过scp命令上传到/usr/local/bin目录下,并重命名为docker-compose
chmod +x docker-compose-linux-x86_64
mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose
验证安装是否成功。
docker-compose --version
三、准备测试用例
准备用pytest编写的测试用例。例如,创建一个简单的测试文件test_example.py
# test_example.py
def test_example():
assert 1 == 1
def test_example_fail():
assert 1 == 2
四、配置docker-compose.yml
创建docker-compose.yml文件来定义Jenkins服务。此配置将Jenkins作为服务运行,并准备了用于持久化数据和与宿主机的Docker守护进程通信的卷。
version: '3.7'
services:
jenkins:
image: jenkins/jenkins:lts
container_name: jenkins
ports:
- "8080:8080"
- "50000:50000"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- jenkins_data:/var/jenkins_home
volumes:
jenkins_data:
五、启动Jenkins
运行以下命令在后台启动Jenkins服务:
docker-compose up -d
六、配置Jenkins和Allure插件
1.访问http:<机器名称>:8080进行Jenkins的初始化配置。
2.安装Allure Jenkins插件:进入管理--》插件管理,在“可选插件”标签页搜索“Allure Jenkins Plugin”进行安装。
3.重启Jenkins以应用安装的插件。
七、创建含pytest的Jenkins任务
1.在Jenkins中创建一个新的“自由风格的软件项目”。
2.在“源代码管理”部分,配置你的项目库(如果你的测试用例放在Git等版本控制系统中)。
3.确保使用Python 3(我的代码是用python3写的)。首先,确保系统中安装了Python 3。如果未安装可以使用以下命令来安装Python3:
sudo yum install -y python3
安装完成后,你可以通过运行python3 --version验证Python 3是否成功安装以及检查其版本。
4.在“构建”部分,添加“执行shell”步骤,填写命令来安装pytest和allure-pytest,并执行测试用例。
python3 -m ensurepip --upgrade # 确保pip3安装/更新
pip3 install pytest
pip3 install allure-pytest
python3 -m pytest --alluredir=allure-results test_example.py
5.运行Jenkins任务并查看Allure报告
运行刚刚配置的Jenkins任务。构建完成后,Jenkins将会显示一个“Allure报告”的链接,点击它即可查看详细的测试报告。
通过上述步骤就可以在CentOS系统上,通过docker-compose安装Jenkins,并通过Jenkins运行pytest编写的Python测试用例,并生成Allure测试报告了。