20.接口自动化-Git

news/2024/6/16 23:04:45

1、Git和SVN–版本控制系统

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
远程服务出问题后,可以先提交commit到本地仓库,之后再提交push远程仓库
git有clone
在这里插入图片描述

Git环境组成部分

常用Git代码仓库服务-远程仓库

GitHub-服务器在国外,慢
GitLab-开源,可以在自己服务器搭建(代码私有性),吃内存
Gitee码云-国内

本机Git操作环境

git环境

Git工作原理(流程)

在这里插入图片描述

fetch和clone的区别

git pull:从远程仓库获取最新代码到本地仓库,直接自动合并merage到本地仓库
一般不用,除非知道远程仓库没有改动
git fetch:从远程仓库获取最新代码到本地仓库,不会自动合并merage到本地仓库,需要手动合并
所以稳妥起见,一般用fetch+merage

Git容器化技术搭建

  • 在容器外usr中创建挂载目录(或者其他目录),/usr目录下新建gitlab文件夹,gitlab文件夹下创建config,logs,data文件夹
  • 启动docker安装搭建gitlab
cd /usr
mkdir gitlab
cd gitlab
mkdir config logs data
# 443https访问 80:http访问 时间同步 /etc/localtime:/etc/localtime:ro
daoker run -di -p 443:443 -p 9000:80 -p 8022:22 --hostname 虚拟机ip --name mygitlab --restart always 
-v /usr/gitlab/config:/etc/gitlab 
-v /usr/gitlab/logs:/var/log/gitlab
-v /usr/gitlab/data:/var/opt/gitlab 
-v /etc/localtime:/etc/localtime:ro --privileged=true
gitlab/gitlab-ce:13.9.2-ce.0#查看各个容器的性能
docker stats

访问:http://虚拟机ip:9000

  • 启动后设置密码\账号
    -

  • 新建工程

  • 本机安装git环境-官网下载git下载
    在这里插入图片描述
    在这里插入图片描述

  • 将远程仓库内容克隆到本地
    右击鼠标-点击【 Git Bash Here】打开命令行

git config --global user.name "zz"
git config --global user.email "123@qq.com"
git clone http://虚拟机ip:9001/root/工程名称.git
输入刚设置的密码和账号
  • 本地修改代码后提交代码到远程仓库
cd myx #(工程名称,这里设位myx)
touch a.txt#随便建一个文件
git status #查看状态-是否被提交
git add a.txt
git status
git commit -m "init a.txt描述" a.txt
git push  origin master

Git-GitLab-Jenkins结合

在这里插入图片描述

在pycharm配置git

Settings-Version control-Git
在这里插入图片描述
pycharm工具栏-VCS-Get from Version Control
在这里插入图片描述
将项目代码复制到刚拉下来的仓库中,然后单独打开该项目

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

实现提交代码后触发自动化测试

(1)打开gitlab

在这里插入图片描述
选择【Outbound requests】
在这里插入图片描述
在这里插入图片描述

(2)Jenkins配置Git

jenkins安装git插件–直接安装

在这里插入图片描述
在工程中进行设置
在这里插入图片描述
在这里插入图片描述
还可以指定分支
点击Gredentials【添加】
在这里插入图片描述

生成路径和token–gitlab配置时需要用到
在这里插入图片描述

向下滑动–点击【高级】
在这里插入图片描述
在这里插入图片描述

(3)选择需要的远程仓库

点击Settings-选择Webhooks-配置jenkins信息-(工程路径和token权限)
选择【push events】,只要提交就会触发事件
在这里插入图片描述

保存配置并测试
在这里插入图片描述
如果配置成功,

  • 则jenkins会新增一条构建记录
  • jenkins挂载目录中会拉取到代码
    在这里插入图片描述

报告存在问题:

在这里插入图片描述
在项目中新建配置文件enviroment.properties并传到gitlab:

Browser=Firefox
Browser.Version=77
Stand=szzz_delivery
ApiUrl=http://121/41/14/39:8082/shop/index.html#/login
python.Version=3.6.5

在这里插入图片描述

在jenkins中shell脚本添加copy指令,将配置文件复制到allure-results中

cd Delivery_System_0908/testCase
pytest -s --allureddir=${WORKSPACE}/allure-results
cp ${WORKSPACE}/Delivery_System_0908/enviroment.properties ${WORKSPACE}/allure-results/enviroment.properties
exit 0

在这里插入图片描述
[说明]
在这里插入图片描述
【发现构建时间和代码提交时间不一致】

#更新同步服务器宿主机时间--
ntpdate ntp1.aliyun.com
# 容器时间
docker exec -it 容器id /bin/bash
#查看时间,如果发现不正确
date
#退出容器
exit
#更新 将时间同步到容器中
docker cp /usr/share/zoneinfo/Asia/Shanghai 容器id:/etc/localtime
#重启容器
docker restart 容器id
还不行的话就在jenkins中修改时区

在这里插入图片描述

也可以在Jenkins中设置定时触发,以上是webhook触发

在这里插入图片描述

WebHooks–勾子

目标:希望在代码被push,jenkins会自动构建
是一个url,携带特定参数,一种web回调或者http的push API,是向APP或其他应用提供实时信息的方式。
Webhook在数据产生时立即发送数据,也就是能实时收到数据


http://www.mrgr.cn/p/25105854

相关文章

基于Springboot的实习生管理系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的实习生管理系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&a…

库的移植

库移植的步骤从官网下载需要移植的库的源码包。解压压缩包,解压后找到自述文件README,打开README了解libjpeg库的使用规则!根据源码包中的install.txt的文本,学习libjpeg库的移植和安装的步骤,移植libjpeg的步骤分为三步:配置(./configure) + 编译(make) + 安装(make in…

【算法】并查集

并查集是一种树形的数据结构,通常可以用于高效的合并多个集合和查询两个数是否属于同一个集合的情况。 其原理在于,把每个集合变成一棵树,树根的值就是整个集合的编号,通过查找两个数所在树根是否相同即可判断是否在同一个集合&a…

苍穹外卖Day06笔记(复习了jwt的加密解密和传递)

疯玩了一个月,效率好低,今天开始捡起来苍穹外卖~ 1. 为什么不需要单独引入HttpClient的dependency? 因为我们在sky-common的pom.xml中已经引入了aliyun-sdk-oss的依赖,而这个依赖低层就引入了httpclinet的依赖,根据依…

2022——蓝桥杯十三届2022国赛大学B组真题

问题分析 看到这个问题的同学很容易想到用十层循环暴力计算&#xff0c;反正是道填空题&#xff0c;一直算总能算得出来的&#xff0c;还有些同学可能觉得十层循环太恐怖了&#xff0c;写成回溯更简洁一点。像下面这样 #include <bits/stdc.h> using namespace std; in…

【SRC实战】前端脱敏信息泄露

挖个洞先 https://mp.weixin.qq.com/s/xnCQQCAneT21vYH8Q3OCpw “ 以下漏洞均为实验靶场&#xff0c;如有雷同&#xff0c;纯属巧合 ” 01 — 漏洞证明 一、前端脱敏&#xff0c;请求包泄露明文 “ 前端脱敏处理&#xff0c;请求包是否存在泄露&#xff1f; ” 1、获取验…

uniapp wifi调试

adb 版本大于 30无线调试 -> 使用配对码配对设备终端输入命令: adb pair ip地址:port端口 (替换为对应的ip和端口),回车后,继续输入WLAN配对码成功提示 Successfully paired to 192.168.137.21:38583 [guid=adb-xxxxxxx]最后 adb connect ip地址:port端口 (替换为对应的i…

水库大坝安全监测预警系统解决方案介绍

一、方案背景 随着社会的快速发展&#xff0c;水库大坝作为重要的水利工程设施&#xff0c;承载着防洪、灌溉、发电等多重功能。然而水库大坝的安全问题也日益凸显&#xff0c;一旦发生事故&#xff0c;后果将不堪设想&#xff0c;因此&#xff0c;建立一套高效、准确的水库大…

mysql数据库标识符的使用

ddl CREATE TABLE student (id int(11) NOT NULL AUTO_INCREMENT COMMENT 学号,createDate datetime DEFAULT NULL,userName varchar(20) DEFAULT NULL,pwd varchar(36) DEFAULT NULL,phone varchar(11) DEFAULT NULL,age tinyint(3) unsigned DEFAULT NULL,sex char(2) DEFAU…

2023年全国职业院校技能大赛(高职组)“云计算应用”赛项赛卷1(私有云)

#需要资源&#xff08;软件包及镜像&#xff09;或有问题的&#xff0c;可私聊博主&#xff01;&#xff01;&#xff01; #需要资源&#xff08;软件包及镜像&#xff09;或有问题的&#xff0c;可私聊博主&#xff01;&#xff01;&#xff01; #需要资源&#xff08;软件包…

RAG应用中的路由模式

依据的用户查询意图在 RAG 应用程序使用“路由控制模式”可以帮助我们创建更强大的 RAG 应用程序。我们通常希望用户能够访问的数据可以来自各种来源,如报告、文档、图片、数据库和第三方系统。 对于基于业务的 RAG 应用程序,我们可能还希望用户能够与其它业务系统进行交互,…

【C语言/数据结构】栈:从概念到两种存储结构的实现

目录 一、栈的概念 二、栈的两种实现方式 1.顺序表实现栈 2.链表实现栈 三、栈的顺序存储结构及其实现 1.栈的声明 2.栈的初始化 3.栈的销毁 4.栈的压栈 5.栈的弹栈 6.栈的判空 7.返回栈顶元素 8.返回栈的长度 四、栈的链式存储结构及其实现 1.栈的声明 2.栈的…

文件流-ASCII文件(中北大学-程序设计基础(2))

目录 题目 源码 结果示例 题目 编写程序实现以下功能&#xff1a;【要求处理ASCII文件】 &#xff08;1&#xff09;按职工号由小到大的顺序将5个员工的数据&#xff08;包括号码、姓名、年龄和工资&#xff09;输出到磁盘文件中保存&#xff1b; &#xff08;2&#xff…

项目冲刺day6

这个作业属于哪个课程 软工4班这个作业要求在哪里 作业要求1.会议1. 照片 线上会议:2. 昨日已完成: 商品分类,购物车功能。部分完成轮播图功能。3.今天计划完成的工作 完成剩下的轮播图、用户头像、文件上传功能,争取尽早将后端部分部署于云端。2.燃尽图3.每人的代码签入记…

3.整数运算

系列文章目录 信息的表示和处理 : Information Storage&#xff08;信息存储&#xff09;Integer Representation&#xff08;整数表示&#xff09;Integer Arithmetic&#xff08;整数运算&#xff09;Floating Point&#xff08;浮点数&#xff09; 文章目录 系列文章目录前…

泛微E9开发 添加多个多选框,实现单选框的效果

利用多个多选框实现单选框的效果 1、功能背景2、展示效果3、实现效果 1、功能背景 如下图所示&#xff0c;在表单中新增四个“选择框-复选框”类型的字段&#xff0c;并且设置其中的选项&#xff0c;每个多选框都只有一个选项&#xff0c;通过代码块实现单选框的效果 1.显示模…

DS:顺序表、单链表的相关OJ题训练(2)

欢迎各位来到 Harper.Lee 的学习世界&#xff01; 博主主页传送门&#xff1a;Harper.Lee的博客主页 想要一起进步的uu欢迎来后台找我哦&#xff01; 一、力扣--141. 环形链表 题目描述&#xff1a;给你一个链表的头节点 head &#xff0c;判断链表中是否有环。如果链表中有某个…

在线抽奖系统的测试报告

上一篇博客解析了在线抽奖系统的难点,这篇博客是在线抽奖系统的测试报告 本文主要就是展示在线抽奖系统各个模块的测试用例以及使用自动化工具测试核心功能 一、测试用例 1、注册页面测试用例2、登录页面测试用例3、奖项设置页面测试用例 4、抽奖页面测试用例二、功能测试 测试…

AVL树的完全指南:平衡与性能

文章目录 AVL树简介AVL的操作建立一个AVL树插入操作删除操作 书写代码1.构造函数和析构函数2.获取最大值和最小值3.树的高度和节点个数3.前序中序和后序遍历4.判断树是否为空树5.四个旋转操作6.获取平衡因子7.插入操作8.删除操作9.搜索节点.h文件中的定义 总结 AVL树简介 AVL树…