如何在jenkins容器中安装python+httprunner+pytest+git+allure(一)

2023-12-18 21:01

本文主要是介绍如何在jenkins容器中安装python+httprunner+pytest+git+allure(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

背景:

API接口自动化使用python语言实现,利用httprunner框架编写自动化用例场景(执行的时候还是依赖pytest),使用jenkins自动构建git上的源代码,并产生allure报告可视化展示API执行结果。

步骤

1.进入jenkins容器

注意使用root身份进入容器
docker exec -it -uroot jenkins bash

2、具体安装步骤

## 见上篇https://blog.csdn.net/dghrty_show/article/details/134445662?spm=1001.2014.3001.5502

3、验证python安装是否成功

在这里插入图片描述

4、安装过程中遇到的问题

##编译python执行make时,遇到如下报错导致未编译成功,报错这个会导致pip3无法使用,所以必须要解决这个
zipimport.ZipImportError: can't decompress data; zlib not available
make: *** [Makefile:1102: install] Error 1
#问题原因
当前路径下缺少zlib相关依赖包
#解决办法cd ~apt-get install zlib# #一定要回到python的安装路径下,/opt/py3.6次编译cd /opt/py3.6/makemake install
##问题:执行shell脚本时,使用pytest -s -q testcases/ --alluredir=reports/ --clean-alluredir时进行jenkins构建一直报错
/tmp/jenkins138024061767095240.sh: line 3: pytest: command not found
##解决办法:
python3 -m pytest -s -q testcases/ --alluredir=reports/ --clean-alluredir
##原因:
1执行shell脚本的时候报找不到pytest命令,但是自己的库里其实已经通过pip安装了pytest,执行pip list也是可以查询到pytest的版本信息
2本来想通过设置环境变量解决,但是最终失败(如下设置)
cat  ~/.bash_profile
验证是否添加成功echo $PATH
3最终原因是:我自己通过pip去安装的pytest 并不会使其成为系统命令,所以需要通过:python -m  pytest 命令执行,使其成为系统命令
问题:在jenkins容器内安装了pytest但是就找不到pytest在哪里?
1使用whereis/which pytest无法找到
2使用 pip3 show pytest
root@localhost:/# pip3 show pytest
Name: pytest
Version: 5.4.3
Summary: pytest: simple powerful testing with Python
Home-page: https://docs.pytest.org/en/latest/
Author: Holger Krekel, Bruno Oliveira, Ronny Pfannschmidt, Floris Bruynooghe, Brianna Laugher, Florian Bruhin and others
Author-email: 
License: MIT license
Location: /usr/local/src/py3.6/lib/python3.6/site-packages
Requires: attrs, importlib-metadata, more-itertools, packaging, pluggy, py, wcwidth
Required-by: allure-pytest, httprunner, pytest-html, pytest-metadata

其实在jenkins中安装python后,安装的各种插件都是在py3.6/lib/python3.6/site-packages下的

这篇关于如何在jenkins容器中安装python+httprunner+pytest+git+allure(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/509743

相关文章

Python中模块graphviz使用入门

《Python中模块graphviz使用入门》graphviz是一个用于创建和操作图形的Python库,本文主要介绍了Python中模块graphviz使用入门,具有一定的参考价值,感兴趣的可以了解一... 目录1.安装2. 基本用法2.1 输出图像格式2.2 图像style设置2.3 属性2.4 子图和聚

Python使用Matplotlib绘制3D曲面图详解

《Python使用Matplotlib绘制3D曲面图详解》:本文主要介绍Python使用Matplotlib绘制3D曲面图,在Python中,使用Matplotlib库绘制3D曲面图可以通过mpl... 目录准备工作绘制简单的 3D 曲面图绘制 3D 曲面图添加线框和透明度控制图形视角Matplotlib

一文教你Python如何快速精准抓取网页数据

《一文教你Python如何快速精准抓取网页数据》这篇文章主要为大家详细介绍了如何利用Python实现快速精准抓取网页数据,文中的示例代码简洁易懂,具有一定的借鉴价值,有需要的小伙伴可以了解下... 目录1. 准备工作2. 基础爬虫实现3. 高级功能扩展3.1 抓取文章详情3.2 保存数据到文件4. 完整示例

使用Python实现IP地址和端口状态检测与监控

《使用Python实现IP地址和端口状态检测与监控》在网络运维和服务器管理中,IP地址和端口的可用性监控是保障业务连续性的基础需求,本文将带你用Python从零打造一个高可用IP监控系统,感兴趣的小伙... 目录概述:为什么需要IP监控系统使用步骤说明1. 环境准备2. 系统部署3. 核心功能配置系统效果展

基于Python打造一个智能单词管理神器

《基于Python打造一个智能单词管理神器》这篇文章主要为大家详细介绍了如何使用Python打造一个智能单词管理神器,从查询到导出的一站式解决,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 项目概述:为什么需要这个工具2. 环境搭建与快速入门2.1 环境要求2.2 首次运行配置3. 核心功能使用指

Python实现微信自动锁定工具

《Python实现微信自动锁定工具》在数字化办公时代,微信已成为职场沟通的重要工具,但临时离开时忘记锁屏可能导致敏感信息泄露,下面我们就来看看如何使用Python打造一个微信自动锁定工具吧... 目录引言:当微信隐私遇到自动化守护效果展示核心功能全景图技术亮点深度解析1. 无操作检测引擎2. 微信路径智能获

Python中pywin32 常用窗口操作的实现

《Python中pywin32常用窗口操作的实现》本文主要介绍了Python中pywin32常用窗口操作的实现,pywin32主要的作用是供Python开发者快速调用WindowsAPI的一个... 目录获取窗口句柄获取最前端窗口句柄获取指定坐标处的窗口根据窗口的完整标题匹配获取句柄根据窗口的类别匹配获取句

利用Python打造一个Excel记账模板

《利用Python打造一个Excel记账模板》这篇文章主要为大家详细介绍了如何使用Python打造一个超实用的Excel记账模板,可以帮助大家高效管理财务,迈向财富自由之路,感兴趣的小伙伴快跟随小编一... 目录设置预算百分比超支标红预警记账模板功能介绍基础记账预算管理可视化分析摸鱼时间理财法碎片时间利用财

Win安装MySQL8全过程

《Win安装MySQL8全过程》:本文主要介绍Win安装MySQL8全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Win安装mysql81、下载MySQL2、解压文件3、新建文件夹data,用于保存数据库数据文件4、在mysql根目录下新建文件my.ini

Python中的Walrus运算符分析示例详解

《Python中的Walrus运算符分析示例详解》Python中的Walrus运算符(:=)是Python3.8引入的一个新特性,允许在表达式中同时赋值和返回值,它的核心作用是减少重复计算,提升代码简... 目录1. 在循环中避免重复计算2. 在条件判断中同时赋值变量3. 在列表推导式或字典推导式中简化逻辑