使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化

一、Jenkins搭建

参考《Docker 安装 Jenkins》

进入 jenkins 容器 CLI 界面

docker exec -itu root jenkins /bin/bash

二、准备条件

1、替换镜像内源

为了安装wget,默认用yum会安装不上wget命令,参考文章《docker容器内如何更换yum源【只想换成国内源而已】》

2、安装wget

yum install wget

三、安装Python3环境

1、安装依赖包

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel
yum install gcc gcc-c++ openssl-devel libffi-devel tk-devel

2、下载源码包

wget https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz

3、解压安装

# 解压压缩包
tar -zxvf Python-3.8.1.tgz  

# 进入文件夹
cd Python-3.8.1

# 配置安装位置
./configure prefix=/usr/local/python3
# 也可以通过 --enable-optimizations 指定使用优化选项
./configure --enable-optimizations --prefix=/usr/local/python3.8 --with-http_ssl_module --with-ssl

# 安装
make && make install

4、Python更换pip源

Linux下永久更换源

#在家目录中创建.pip目录
mkdir -p ~/.pip

#创建pip.conf文件
vim ~/.pip/pip.conf

#输入以下内容并保存
[global]
timeout = 6000
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
trusted-host = pypi.tuna.tsinghua.edu.cn

5、添加软连接

#添加python3的软链接 
ln -s /usr/local/python3/bin/python3.8 /usr/bin/python

#添加 pip3 的软链接 
ln -s /usr/local/python3/bin/pip3.8 /usr/bin/pip

6、openssl

## openssl 版本 要求 OpenSSL 1.0.2+,如果不满足需升级 openssl
# 然而 yum install openssl openssl-devel 的方式也无法升级到1.0.2版本,那也只能手动编译并安装
# 下载 openssl-1.1.1b.tar.gz 新版本的源码包
wget -c https://www.openssl.org/source/openssl-1.1.1b.tar.gz

tar -zxvf openssl-1.1.1b.tar.gz
cd openssl-1.1.1b

./config --prefix=/usr/local/openssl # 指定安装目录为/usr/local/openssl
make && make install #(耗时比较长,需要耐性等待)

# 编译完成后需要拷贝库文件
cp /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
cp /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1

# 替换软链接
rm -rf /usr/bin/openssl
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

7、验证 python3 环境

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第1张图片

 

四、安装项目所需的库

需要在 python 项目生成一个 requirement.txt

具体教程可以看https://www.cnblogs.com/longronglang/p/16311576.html

将 requirement.txt 上传到主机

从主机复制到容器内

docker cp requirement.txt jenkins:/usr/local/src

最后安装项目所需的库

pip3 install -r requirements.txt

跑下所有case,看看报错缺什么库,缺什么到时自己手动装

五、安装 Allure 环境

官网下载 allure 包

去https://github.com/allure-framework/allure2/releases,下载2.7版本

将压缩包传送到容器内

先将包上传到主机,然后从主机复制到容器内

docker cp allure-2.7.0.zip jenkins:/usr/local/src

解压包

unzip allure-2.7.0.zip

 赋予文件夹所有内容最高权限

chmod -R 777 allure-2.7.0

六、配置 allure 和 python 环境变量

cat >> /root/.bashrc << "EOF" 
export PATH=/usr/local/src/allure-2.7.0/bin:$PATH 
export PATH=/usr/local/python3/bin/python3.8/bin:$PATH 
EOF

 记得一行一个回车哦,不然就直接复制粘贴

七、更新环境变量配置文件

source /root/.bashrc

八、验证环境变量 

allure --version
python3 --version

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第2张图片

 九、Jenkins 任务配置构建操作

1、下载插件

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第3张图片

 2、安装配置JDK、Git、Allure Commandline

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第4张图片

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第5张图片

 

3、job配置

添加构建步骤,选择执行 shell

输入shell命令如下:

#!/bin/bash
cd /var/jenkins_home/workspace/pytest-allure-demo
python -m pytest -s -q --alluredir=${WORKSPACE}/allure-results --clean-alluredir
exit 0

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第6张图片

构建后操作

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第7张图片

注意

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第8张图片

不一致会报错如下:

 

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第9张图片

 

十、测试执行 

1、点击构建

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第10张图片

2、查看报告

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第11张图片

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第12张图片

完成,这回啥都有了。

最后我也整理了一些软件测试学习资料,对于学软件测试的小伙伴来说应该会很有帮助,为了更好地整理每个模块

需要的私信我关键字【555】免费获取哦 注意关键字是:555

全套软件测试自动化测试教学视频

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第13张图片

300G教程资料下载【视频教程+PPT+项目源码】

 

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第14张图片

全套软件测试自动化测试大厂面经

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第15张图片

使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化_第16张图片

 

 

你可能感兴趣的:(软件测试,自动化测试,接口自动化测试,jenkins,docker,自动化,软件测试,python)