前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化

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

作者头像
软件测试君
发布2023-09-14 16:42:37
1K0
发布2023-09-14 16:42:37
举报
文章被收录于专栏:测试人生
一、Jenkins搭建

参考《Docker 安装 Jenkins》

进入 jenkins 容器 CLI 界面
代码语言:javascript
复制
docker exec -itu root jenkins /bin/bash

二、准备条件

1、替换镜像内源

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

2、安装wget
代码语言:javascript
复制
yum install wget

三、安装Python3环境

1、安装依赖包
代码语言:javascript
复制
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、下载源码包
代码语言:javascript
复制
wget https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz
3、解压安装
代码语言:javascript
复制
# 解压压缩包
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下永久更换源

代码语言:javascript
复制
#在家目录中创建.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、添加软连接
代码语言:javascript
复制
#添加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
代码语言:javascript
复制
## 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 环境

四、安装项目所需的库

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

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

将 requirement.txt 上传到主机

从主机复制到容器内

代码语言:javascript
复制
docker cp requirement.txt jenkins:/usr/local/src
最后安装项目所需的库
代码语言:javascript
复制
pip3 install -r requirements.txt

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

五、安装 Allure 环境

官网下载 allure 包

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

将压缩包传送到容器内

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

代码语言:javascript
复制
docker cp allure-2.7.0.zip jenkins:/usr/local/src
解压包
代码语言:javascript
复制
unzip allure-2.7.0.zip
赋予文件夹所有内容最高权限
代码语言:javascript
复制
chmod -R 777 allure-2.7.0

六、配置 allure 和 python 环境变量

代码语言:javascript
复制
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

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

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

代码语言:javascript
复制
source /root/.bashrc

八、验证环境变量

代码语言:javascript
复制
allure --version
python3 --version

九、Jenkins 任务配置构建操作

1、下载插件
2、安装配置JDK、Git、Allure Commandline
3、job配置
添加构建步骤,选择执行 shell

输入shell命令如下:

代码语言:javascript
复制
#!/bin/bash
cd /var/jenkins_home/workspace/pytest-allure-demo
python -m pytest -s -q --alluredir=${WORKSPACE}/allure-results --clean-alluredir
exit 0

构建后操作

注意

不一致会报错如下:

十、测试执行

1、点击构建
2、查看报告

完成,这回啥都有了。

- END -

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022/05/27 08:30:00,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 软件测试君 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 进入 jenkins 容器 CLI 界面
  • 二、准备条件
    • 1、替换镜像内源
      • 2、安装wget
      • 三、安装Python3环境
        • 1、安装依赖包
          • 2、下载源码包
            • 3、解压安装
              • 4、Python更换pip源
                • 5、添加软连接
                  • 6、openssl
                    • 7、验证 python3 环境
                    • 四、安装项目所需的库
                      • 需要在 python 项目生成一个 requirement.txt
                        • 将 requirement.txt 上传到主机
                          • 最后安装项目所需的库
                          • 五、安装 Allure 环境
                            • 官网下载 allure 包
                              • 将压缩包传送到容器内
                                • 解压包
                                  • 赋予文件夹所有内容最高权限
                                  • 六、配置 allure 和 python 环境变量
                                  • 七、更新环境变量配置文件
                                  • 八、验证环境变量
                                  • 九、Jenkins 任务配置构建操作
                                    • 1、下载插件
                                      • 2、安装配置JDK、Git、Allure Commandline
                                        • 3、job配置
                                          • 添加构建步骤,选择执行 shell
                                            • 构建后操作
                                            • 十、测试执行
                                              • 1、点击构建
                                                • 2、查看报告
                                                相关产品与服务
                                                容器镜像服务
                                                容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
                                                领券
                                                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档