Pytest 项目结合Jenkins

一、window安装centos7虚拟机

参考网上其他教程

二、Linux安装Jenkins

进入jenkins.io网址,点击download,选择CentOS版本

1、Linux中安装java环境和git

Jenkins的运行需要java环境;安装git是为代码上传给仓库做准备;

yum - y list java *
下载安装 java11 的所有软件包,中途需要输⼊ y 来确认下载
yum install java - 11 - openjdk
安装成功,输⼊如下命令检查是否安装成功,如果返回正确的版本号则表示安装成功。
java  - version
java 安装⽬录
/ usr / lib / jvm / java - 1.11.0 - openjdk
安装 git
yum install git

2、yum安装Jenkins

下载 Jenkins ,进⼊ data ⽬录 :
  cd / data
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo (输入提示没有wget,则yum install wget)
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
yum -y install jenkins 

3、启动Jenkins

systemctl start jenkins

查看服务器ip:ip addr

关闭防火墙:systemctl stop firewalld)

浏览器访问ip+端口,回车即可打开Jenkins        

4、Jenkins配置

  • 第⼀次启动jenkins,它会⾃动⽣成⼀个密码,它会将这个密码⽣成放到⼀个固定的地⽅,浏览器访问的时候会告诉你该密码的位置,/var/lib/jenkins/secrets/initialAdminPassword,去找到这个密码,cat /var/lib/jenkins/secrets/initialAdminPassword,复制过来。
  • 等待⼀会以后会出现选择⻚⾯,选择安装插件,选择第⼀个
  • 下⾯就是等待插件安装成功,注:插件⼀次可能不会完全安装成功,可以点击Retry再次安装。直到 全部安装成功
  • 配置⽤户名密码,插件安装成功以后让你创建⼀个管理员⽤户,也可以点击右下⻆的使⽤admin账号继续,看个⼈喜好
  • 实例配置,这⼀步不需要修改东⻄,点击保存并完成
  • 点击开始使⽤Jenkins

三、创建git仓库并将代码上传git仓库

1、生成当前环境第三方包

pyhcarm的终端中输入命令:pip freeze

生成requirements.txt

2、将代码上传到git仓库

注册gitee账号,并在账号下创建仓库,创建完成仓库后(且我们依据在第二步中安装了git),根据页面提示在pycharm终端中输入命令,commit--push代码到git仓库。刷新gitee仓库页面新上传好代码文件。

四、Linux安装python3

1、安装依赖环境

输入命令: yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel
readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

2、安装Python3 和Pytest

1.进入opt 文件目录下 cd /opt/
2.下载python3 (可以到官方先看最新版本多少)
输入命令 wget https://www.python.org/ftp/python/3.7.6/Python-3.7.6.tgz
如果出现 找不到 wget 命令,输入 yum -y install wget ,安装其依赖将会被安装
3.安装Python3
安装在 /usr/local/python3 (具体安装位置看个人喜好)
1 )创建目录: mkdir -p /usr/local/python3
2 )解压下载好的 Python-3.x.x.tgz ( 具体包名因你下载的 Python 具体版本不不同⽽而不不同,
如:我下载的是 Python3.7.1. 那我这里就是 Python-3.7.1.tgz)
输入命令 tar -zxvf Python-3.7.6.tgz 解压后出现 python 的文件夹
4. 进入解压后的目录,编译安装。(编译安装前需要安装编译器 yum install gcc
1 )安装 gcc
输入命令 yum -y install gcc ,确认下载安装输入 “y”
2 3.7 版本之后需要一个新的包 libffi-devel
安装即可: yum install libffi-devel -y
3 )进入 python 文件夹,生成编译脚本 ( 指定安装目录 )
cd Python-3.7.6
./configure --prefix=/usr/local/python3
#/usr/local/python3 为上面步骤创建的目录
4 )编译: make
5 )编译成功后,编译安装: make install
6 )检查 python3.7 的编译器: /usr/local/python3/bin/python3.7
5.建立Python3pip3的软链:
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
6.并将/usr/local/python3/bin加入PATH
1 vim /etc/profile
2 )按 “I” ,然后增加下面内容
# User specific environment and startup programs
PATH=$PATH:$HOME/bin:usr/local/python3/bin
export PATH
3 )按 ESC ,输入 :wq 回车退出。
4 )修改完记得执行行下面的命令,让上一步的修改生效:
source /etc/profile
7.检查Python3pip3 是否正常可用
python3 -V
pip3 -V
8.安装pytest:pip3 install -U pytest
9.创建软连接:ln -s /usr/local/python3/bin/pytest /usr/bin/pytest
10. 验证
pytest -- version
pytest 7.1.2
出现则说明安装成功

五、Jenkins创建项目并配置

1、安装allure插件

系统管理--插件管理--可选插件中搜索allure并安装

系统管理--全局工具配置中,Allure Commandline--新增,选择最新版本,应用,保存

2、新建freestyle项目

create a job 输入项目名称并确定,进入项目设置中

General :

丢弃旧的构建

源码管理:

Credentials--添加--选择Jenkins--类型选择Usename with password,输入git仓库的用户名和密码--添加--外部选择该仓库

构建触发器:

勾选定时构建:eg输入:* 7 * * *,即每天早上七点运行一次

构建环境:

构建:

选择:执行shell,写入命令

 #!/bin/bash
2 cd ${WORKSPACE}
3 pip3 install -r requirements.txt --user 
4 pytest

WORKSPACE是环境变量,指代当前创建的工作项目

-r:循环安装,每次构建都安装requirements.txt中的第三方包

构建后操作:

选择Allure report,填入Pah

点击应用保存,至此项目创建成功

点击立即构建,查看执行情况

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/282420.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

AI与数字化映像:颜值开端,功能至上_光点科技

在人工智能的浪潮中,AI数字人的兴起正成为一个不可忽视的现象。随着ChatGPT等生成式AI算法的进步,AIGC(人工智能生成内容)的应用呈现出爆发性增长,不仅在技术圈引起广泛关注,也为元宇宙及其相关产业链带来了…

读算法霸权笔记08_反馈

1. 关开门 1.1. clopening 1.2. 指的是一个职员工作到很晚,关闭门店或者咖啡店,几小时后又在天亮之前回来开门 1.3. 极度不规律的工作时间安排越来越常见 1.3.1. 首当其冲的是星巴克、麦当劳和沃尔玛等企业的低薪职工 1.3.2. 不规律的工作时间安排是…

大一c语言期末复习题

第16题&#xff1a; 答案&#xff1a; #include<stdio.h> void hello_world(void) {printf("Hello,world!\n"); } void three_hellos(void) {int i 0;for (i 0; i < 3; i) //调用3次函数{hello_world();} } int main() {three_hellos();return 0; } 知…

Self-attention学习笔记(Self Attention、multi-head self attention)

李宏毅机器学习Transformer Self Attention学习笔记记录一下几个方面的内容 1、Self Attention解决了什么问题2、Self Attention 的实现方法以及网络结构Multi-head Self Attentionpositional encoding 3、Self Attention 方法的应用4、Self Attention 与CNN以及RNN对比 1、Se…

【Java开发岗面试】八股文—Java基础集合多线程

声明&#xff1a; 背景&#xff1a;本人为24届双非硕校招生&#xff0c;已经完整经历了一次秋招&#xff0c;拿到了三个offer。本专题旨在分享自己的一些Java开发岗面试经验&#xff08;主要是校招&#xff09;&#xff0c;包括我自己总结的八股文、算法、项目介绍、HR面和面试…

[Linux]Ubuntu noVNC使用

又到了逛大型程序员交友 网站的时间了&#xff0c;今天你准备好了吗。 今天要推荐的一个有趣的项目是noVNC setup好以后是这个样子的&#xff0c;可以在浏览器登陆vnc&#xff0c;不需要再安装一个vnc client. setup的过程比较简单&#xff0c;分为以下几步&#xff1a; 1. v…

关于时间与空间复杂度的学习

关于时间与空间复杂度的学习 算法时间复杂度定义标准算法度量单位渐近记号1、Θ&#xff08;big-theta&#xff09;2、O&#xff08;big-oh&#xff09;3、Ω&#xff08;big-omege&#xff09; 推导时间复杂度步骤与法则步骤法则 示例1.常数阶2、线性阶3、对数阶4、平方阶5、立…

数据结构 模拟实现LinkedList单向不循环链表

目录 一、链表的简单介绍 二、链表的接口 三、链表的方法实现 &#xff08;1&#xff09;display方法 &#xff08;2&#xff09;size得到单链表的长度方法 &#xff08;3&#xff09;addFirst头插方法 &#xff08;4&#xff09;addLast尾插方法 &#xff08;5&#xf…

SSM图书馆管理系统----计算机毕业设计

项目介绍 基于ssm的图书馆管理系统.主要功能包括&#xff1a;图书查询、图书管理、图书编辑、读者管理、图书的借阅与归还以及借还日志记录等。 用户分为两类&#xff1a;读者、图书馆管理员。图书馆管理员可以修改读者信息&#xff0c;修改书目信息&#xff0c;查看所有借还…

C++初阶——基础知识(内联函数)

目录 1.内联函数 内联函数的示例代码 1.内联函数 是一种 C 中的函数定义方式&#xff0c;它告诉编译器在每个调用点上插入函数体的副本&#xff0c;而不是像普通函数那样在调用时跳转到函数体所在的地址执行。这样可以减少函数调用的开销&#xff0c;提高程序的执行效率。 …

婴幼儿家庭护理百科知识,宝宝健康成长育儿实用课程

一、教程描述 本套教程由具有丰富育儿经验的多名专家精心打造而成&#xff0c;也是专门提供给准爸妈们学习的实用课程&#xff0c;可以解决宝宝的日常护理、日常喂养、饮食调理、疾病防治、意外护理等多方面问题。课程不仅可以丰富你的育儿知识&#xff0c;而且能够让你把这些…

中央集成式架构量产时代,openVOC方案将引发软件开发模式变革

2024年&#xff0c;中央计算区域控制架构正式进入规模化量产周期&#xff0c;汽车智能化正式迈入2.0时代&#xff0c;产业生态、应用创新、开发模式都将迎来巨大变革。 同时&#xff0c;随着ChatGPT引发的AIGC领域的爆发式增长&#xff0c;人工智能技术掀起全球万亿级信息化应…

63页!嵩山版Java开发手册分享

作为广受欢迎的编程语言之一&#xff0c;Java在软件开发领域扮演着重要的角色。然而&#xff0c;由于Java的灵活性和广泛应用&#xff0c;很容易出现代码质量低下、可读性差、维护困难等问题。为了解决这些问题&#xff0c;阿里巴巴集团发布了一份权威指南——阿里嵩山版Java开…

揭秘HTTP与HTTPS:保障安全的网页传输协议之争

目录 1、前言 2、HTTP与HTTPS的概念及区别 2.1 HTTP的定义与特点 2.2 HTTPS的定义与特点 2.3 HTTP与HTTPS的区别 3、HTTP的工作原理及安全隐患 3.1 HTTP的工作流程 3.2 HTTP的安全隐患 4、HTTPS的工作原理及优势 4.1 HTTPS的工作流程 4.2 HTTPS的加密算法 4.3 HTTP…

java springboot将接口查询数据放在系统中 一小时系统更新一次 避免用户访问接口查询数据库缓慢

真到了公司 很多数据库表 特别是常用的功能业务对应的 都是几百万条起步的数据 查询会比较缓慢 那么 我们就可以不用每次都真的查询数据库 例如 我这里有一个接口 通过 封装的 IBookService.list 函数去查询数据库 接口返回是这样的 我们先在启动类 条件装配上 这个接口所在的…

Jenkins 系列:Jenkins 安装(Windows、Mac、Centos)和简介

文章目录 简介发展历史应用场景 Jenkins 安装部署先决条件硬件要求软件包下载war 包部署linux 系统部署mac 系统部署windows 系统部署安装后基本配置解锁自定义 jenkins 插件创建用户配置更新站点 配置文件 简介 Jenkins前身是 Hudson&#xff0c;使用 java 语言开发的自动化发…

VS2019+OpenCV4.7.0+OpenCV_contrib4.7.0+CUDA安装+配置视频硬解码保姆级别教程

在算法开发过程中&#xff0c;涉及基于opencv的rtsp流硬解码&#xff0c;这里设计结合当前所有的资料&#xff0c;实现了现有opengl相关的所有跟视频硬解码相关的功能&#xff0c;下面对opencv4.7.0的编译流程进行说明&#xff1a; 一、准备工作 下载opencv &#xff1a;open…

Linux服务器搭建笔记-006:拓展/home目录容量

一、问题说明 Ubuntu服务器在使用过程中创建的新用户&#xff0c;每位用户会在/home目录下生成一个属于其个人的主文件夹。如果不限制各个用户的使用空间&#xff0c;所有的用户都会共用/home所挂载的硬盘。在这种多用户情况下&#xff0c;会很快的填满/home目录&#xff0c;导…

移动应用开发:揭秘内侧APP封装台的高效

在数字化浪席卷下&#xff0c;移应用已经成连接企业与用户纽带。为了抢占市场先机&#xff0c;快速发布高质量的移动应用成为业竞争的关键。侧APP封装平因此而诞生&#xff0c;成为了应开发者的得助手。以下是内侧APP封装台的全面解读&#xff0c;助在应用开发海洋中乘风破浪。…

国产芯片ACL16_S 系列 ,低成本物联网安全,可应用物联网认证、 SIM、防抄板和设备认证等产品上

ACL16_S 芯片是针对物联网认证、 SIM、防抄板和设备认证需求推出的高安全芯片。芯片采用 32 位 ARMCortex™-M0 系列内核&#xff0c;片内集成多种安全密码模块&#xff0c;包括 RSA/ECC DES/TDES、 SHA-1/-256、 AES-128/-192/-256 等国际安全算法&#xff0c;支持真随机数发…