当前位置: 首页 > news >正文

自动化测试git的使用

git是一款分布式的配置管理工具。本文主要讲git如何在自动化测试中安装,上传及拉取下载代码。

1 、git 介绍

每天早上到公司,从公司的git服务器上下载最新的代码,白天在最新的代码基础上,编写新的代码,下班时把“代码走查”通过的代码上传到git服务器。jenkins服务器会拉取git服务器的代码,定时自动执行所有的代码。如果有测试用例执行失败,就会给你手机发邮件。第二天上班定位bug

SVN和Git的区别

SVN是集中式版本控制系统,相当于网游,服务器故障,所有人都不能玩。

Git是分布式版本控制系统。相当于可单击,可网游,服务器故障,每个人可以玩自己的单机。

解决了一个单点故障的问题。一方面svn服务器挂掉,会影响比较大。另一方面太多人访问svn服务器,比较繁忙,比较慢。

每个人的电脑 都是 一个完整的版本库

2 、安装步骤

1、打开官网“https://git-scm.com/”

2、点击按钮“download for windows”

3、双击打开Git-2.35.3-64-bit.exe

4、一路下一步,直到安装完成

这个时候检查鼠标右键,有Git的两个菜单就成功了。

3、 git服务器

目前有三个比较出名的git服务器,分别是github、gitee、gitlab。

github:全球很多公司都会把自己的代码上传到github,是代码管理仓库。

gitee:国内模仿github的网站。国内访问github比较慢。所以很多公司都会把自己的代码上传到gitee上。而且gitee的界面是中文界面,更好上手。

gitlab:公司内部搭建的私服。适合不愿意开源,也不愿意给网站缴费的公司。

4、在gitee上注册

1、打开gitee首页,Gitee - 基于 Git 的代码托管和研发协作平台

gitee也叫码云

2、用手机号加验证码登录,并且登陆后还要绑定邮箱,姓名不要用中文注册

用户名“changcheng1211”

3、注册后,需要登录邮箱,点击gitee确认邮件

5、为本地电脑配置用户名和邮箱

1、右键点击桌面,选择git bash here,这时会打开一个linux命令窗口,可以执行linux命令

2、输入命令

git config --global user.name  "在gitee上注册的账户名(其实可以随便写)"

get config --global user.email "在gitee上注册时使用的邮箱"

上传代码时,gitee仓库会记录这些信息,分辨代码时由谁上传的。

执行命令后,在C:\用户\51Testing下面,会生成一个.gitconfig文件,用记事本打开,可以看到你设置用户名和邮箱

打开查看

6、在pycharm中下载插件

在pycharm里面,点击File--Settings--Plugins,点击Marketplace。搜索gitee,点击Install进行安装。

点击Accept

点击ok后重启pycharm.

7、在pycharm中登录gitee

File-->Sttings-->版本控制-->gitee-->点击“+”-->login in via gitee-->分别输入注册的邮箱和密码-->点击登录-->确定

这里登录只能用邮箱登录

8、把当前项目上传到gitee网站上

菜单栏-->VCS-->Share project to Gitee--->点击Share按钮

这里面第一个是项目名,也是远程仓库的名字,下面的是远程仓库的别名,都不用改,点击设为私有按钮(不分享出去,有些不需要分享),点击Share

这里面让我们勾选一些我们要上传的代码。其中一些需要去勾选。

下面要把代码上传到网页上去。不上传.pytest_cache和report和result文件夹中的内容

.idea  这个不是我们写的代码,是创建项目自动生成的。

Image图片必须要分享。留一个文件,不然空文件夹不让上传。

page_objects自己写的要上传。

report测试报告不需要上传。这是运行代码生成的

resouce是我们的excel文件需要上传,

result不上传

test_cases上传

utils上传

geckodriver.log 不上传

pytest.ini 不上传

完成后点击"add"按钮。

右下角有个进度条

然后我们就可以到gitee里面去看一下代码是否上传上去。可见已经传上去了。

遇见问题1:没有勾选文件直接上传,会上传一个空的项目,可以这样重新上传。

可以点击git--Gitee--Share Project on Gitee

修改一下别名

重新去勾选后点击提交。

遇见问题2:报错:Successfully created project 'autoFuncTest2' on Gitee, but initial commit failed: open("resource/~$test_data.xlsx"): Permission denied unable to index file 'resource/~$test_data.xlsx' warning: LF will be replaced by CRLF in test_cases/geckodriver.log. The file will have its original line endings in your working directory

把原来打开的excel文件关掉,并重新上传项目就行了。

9、上传下载

常用命令
    add
        新建文件时,把文件添加到缓冲区
    commit
        把最新的代码提交到本地
    push
        把最新的代码上传到服务器
    pull
        从服务器上拉取最新的代码

这里说一下git文件颜色有的不太一样

白色:和服务器一致的,已经提交过的

绿色:新建的文件,尚未加入版本控制

蓝色:被Git监控到发生了修改

9.1 首先添加一个文件上传

先添加一个py的文件。把文件添加到缓冲区

写好之后,点击提交,这个提交只是把最新的代码提交到本地

必须要添加注释,否则提交不了。

Commit是只提交到了本地,

想要提交到网站,需要用push推送。

可以看到写的注释已经上传到网上了

当然也可以在网页端修改,提交。注意一定要添加注释,不然提交不了

如何把别人写的测试用例也拉下来呢?

比如,别人在修改了代码提交后,点击pull拉去下来。会提示是否要合并,点击ok.

这时就看到一个文件被更新了

点进去就会看到更新的文件。

10、如何从git服务器上拉取项目

进入公司后,老板会把公司现有项目的git地址发给你

https://gitee.com/changcheng1211/autoFuncTest2.git

新建一个项目,打开项目所在的文件夹,关闭pycharm,,把新建的项目文件夹删除,重新打开pycharm,
选择“来自版本控制的项目”-->输入git地址,修改项目路径(确保不重名,如果没有重名项目就不用改),确定即可

新建一个项目

把PyCharm关了

把项目删了。

再打开pycharm,点击Get from VCS

从我们的网址创建项目,要改下项目名,不然重复了。然后点击Clone

这里好了后,需要重新换一下以前的解释器,保证解释器能读取这个项目。

相关文章:

自动化测试git的使用

git是一款分布式的配置管理工具。本文主要讲git如何在自动化测试中安装,上传及拉取下载代码。 1 、git 介绍 每天早上到公司,从公司的git服务器上下载最新的代码,白天在最新的代码基础上,编写新的代码,下班时把“代码…...

MyBatis系列四: 动态SQL

动态SQL语句-更复杂的查询业务需求 官方文档基本介绍案例演示if标签应用实例where标签应用实例choose/when/otherwise应用实例foreach标签应用实例trim标签应用实例[使用较少]set标签应用实例[重点]课后练习 上一讲, 我们学习的是 MyBatis系列三: 原生的API与配置文件详解 现在…...

Jenkins构建 Maven项目(微服务)并自动发布

前面讲了docker 安装Jenkins和gitlab代码管理工具,接下来我们讲一下Jenkins怎么构建 Maven项目。 1. 首先Jenkins配置下面3中工具类 首先是在本地安装三个jenkins自动配置相关的工具 1.1 JDK 由于我们使用docker来启动jenkins,其自带有jdk,…...

简单易用的多功能图床Picsur

什么是 Picsur ? Picsur 是一款易于使用、可自行托管的图片分享服务,类似于 Imgur,并内置转换功能。支持多种格式的图片,包括 QOI、JPG、PNG、WEBP(支持动画)、TIFF、BMP、GIF(支持动画&#xf…...

数据库-查询语句习题

SELECT Sname 姓 名,year of birth: 出生年,YEAR(GETDATE())-Sage BIRTHYEAR,LOWER(SNAME) SNAME --起别名 没有特殊字符不需要引号,有特殊字符要加引号;别名(解释作用显示给用户看)用空格或as连接 FROM STUDENT; --消除重复行 DI…...

进程间通信以及线程的同步互斥机制

1.进程间通信机制 常用的六种通信机制: 管道、消息队列、共享内存、信号灯集、信号、Socket 管道(Pipe)和无名管道(匿名管道): 管道是一种半双工的通信方式,数据只能单向流动,通常…...

优思学院|做车企的质量工程师转行跳槽能干嘛?

前言 质量工程师,是现代制造业和服务业中不可或缺的重要角色。他们负责制定和执行提高产品质量和优化业务流程的战略。这不仅涉及设立质量标准、开发测试系统,还包括记录生产过程中的问题并找到解决方案。尤其在汽车行业,由于对质量的高度要…...

ctfshow-web入门-命令执行(web53-web55)

目录 1、web53 2、web54 3、web55 1、web53 这里的代码有点不一样,说一下这两种的区别: (1)直接执行 system($c); system($c);这种方式会直接执行命令 $c 并将命令的输出直接发送到标准输出(通常是浏览器&#xff…...

【INTEL(ALTERA)】make: nios2-swexample-create:未找到命令

目录 说明 解决方法 说明 由于外部内存接口英特尔 Stratix 10 FPGA IP 出现问题,如果在 Windows 平台上使用英特尔 Quartus Prime Pro Edition Software v20.4 或更早版本的"使用软Nios处理器进行片上调试"选项,编译Nios II 片上处理器调试…...

一周刷爆leetcode!(b站视频)

文章目录 一、排序思想的题目二、使用步骤1. 一、排序思想的题目 跟着b站一周刷爆leetcode这个视频开始刷一下leetcode的题目 进行一下记录啥的 二、使用步骤 1. 315. 计算右侧小于当前元素的个数 代码如下: 写了一下暴力解法,没有通过 使用归并排序…...

1.xshell传不了文件输出0000如何解决.....2.k8s中metalLB文件内容

xshell传不了文件输出0000如何解决 centos版本 1,因为没有工具下载即可 yum -y install lrzszk8s中metalLB文件内容 2.metalLB文件内容 cat metallb-native.yaml apiVersion: v1 kind: Namespace metadata:labels:pod-security.kubernetes.io/audit: privilegedpod-securit…...

01- ES6语法

1.ES6相关概念 1.1 什么是ES6 1.1.1 简介 ES6, 全称 ECMAScript 6.0 ,是 JavaScript 的下一个版本标准,2015.06 发版。 ES6 主要是为了解决 ES5 的先天不足,比如 JavaScript 里并没有类的概念,但是目前浏览器的 Ja…...

STM32MP135裸机编程:配置RCC,修改主频到1GHz

0 工具准备 STM32CubeMX v6.11.1 STM32CubeIDE v1.15 STM32CubeProgrammer v2.16.0 STM32MP13xx参考手册 STM32MP13勘误手册 STM32MP135AD数据手册 正点原子stm32MP135开发板 1 确认时钟源 本例使用的时钟源均由外部晶振提供,分别是24MHz的HSE、32.768KHz的LSE。原…...

观察 jvm 运行时数据区内存大小(native memory tracking)

jvm 运行时数据区 jvm 运行时数据区包括且不限于以下几个部分: 堆(heap): 用于存储对象实例和数组。堆内存的分配和释放由垃圾回收器进行管理。方法区(method area): 用于存储类的信息、静态变量、常量等。jdk 8 后方法区位于 metaspace。虚拟机栈(vm stack): 用于存储方法的…...

【论文阅读】-- 时间空间化:用于深度分类器训练的可扩展且可靠的时间旅行可视化

Temporality Spatialization: A Scalable and Faithful Time-Travelling Visualization for Deep Classifier Training 摘要1 引言2 动机3 问题定义4 方法论4.1 时空复合体4.2 复数约简 5 实验6 相关工作7 结论参考文献 摘要 时间旅行可视化回答了深度分类器的预测是如何在训练…...

Windows系统部署本地SQL_Server指引

Windows系统部署本地SQL_Server指引 此指引文档环境为Windows10系统,部署SQL_Server 2019为例,同系列系统软件安装步骤类似。 一、部署前准备; 下载好相关镜像文件;设备系统启动后,将不必要的软件停用,避…...

Aptos Builder Jam 亚洲首站|议程公布,无限畅想 Aptos 生态未来

作为一个新兴的 Layer1 公链,Aptos 自诞生之日起的理想便是 “A Layer 1 for everyone” 当 Web3 深陷熊市阴影之时,Aptos 奋力为开发者找到了全新的技术路径,正有 200 项目正在开发,并且已有大量 DeFi 项目落实部署工作&#xff…...

Vue3使用component动态展示组件

前言: 最近在研究gitHub中的一个项目并将与自己之前完成的项目进行结合,其中有一个功能就是需要使用根据不同的字段,渲染不同的组件,查阅资料发现可以使用component完成这个功能,在实现的过程中也会遇见一些坑&#x…...

嵌入式中间件_2.嵌入式中间件的分类

1.中间件的分类 中间件的范围十分广泛,针对不同的应用需求涌现出了多种各具特色的中间件产品。因此,在不同的角度或不同的层次上,对中间件的分类也会有所不同。 根据IDC在1998年对中间件进行的分类,把中间件分为终端仿真/屏幕转换…...

论文精读——KAN

目录 1.研究背景 2.关键技术 2.1 原始公式 2.2 KAN结构 2.3 缩放定律 3.技术扩展 4.模型效果 5.相关讨论 6.总结 文章标题:《KAN: Kolmogorov–Arnold Networks》 文章地址: KAN: Kolmogorov-Arnold Networks (arxiv.org)https://arxiv.org/a…...

全国产城市轨道交通运营公安AI高清视频监控系统

方案简介 城市轨道交通运营公安高清视频监控系统解决方案针对运营部门和公安部门的安保需求,选用华维视讯的各类前端和视频编解码、控制产品,通过统一平台提供视频监控服务和智能应用,满足轨道交通运营业主客运组织和抢险指挥的需求&#xff…...

python连接mysql数据库、FastAPI、mysql-connector-python

方法工具一、FastAPI 建议使用fast api中的pymysql pip3 install fastapi pip3 install pydantic pip3 install "uvicorn[standard]" pip3 中的3是 Python 3 版本的包管理器命令,用于安装和管理 Python 3 版本的第三方库。在某些系统中,同时…...

【idea】解决springboot项目中遇到的问题

一、Maven报错Could not find artifact com.mysql:mysql-connector-j:pom:unknown in aliyunmaven解决及分析 报错 创建springboot项目,勾选数据库驱动,springboot版本为3,现在改成了2.7.2,Maven就发生了报错Could not find art…...

ubuntu22.04禁止自动休眠的几种方式

在Ubuntu 20.04中,您可以通过以下几种方式禁用自动休眠功能: 使用systemd设置: sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target 修改/etc/systemd/logind.conf文件: sudo nano /etc/systemd/logind.conf 找…...

智能网站管理系统

智能网站管理系统,即智能化的网站管理工具,是为了提高网站管理效率和简化操作流程而开发的一种软件系统。它集合了各种先进的技术和功能,为网站管理员提供了一套强大而可靠的解决方案。 智能网站管理系统的核心功能是网站内容管理。传统的网站…...

Android Service学习笔记

1、Service介绍 Android Service(服务)是 Android 四大组件之一,主要作用是执行后台操作。它是一个后台运行的组件,执行长时间运行且不需要用户交互的任务。即使应用被销毁也依然可以工作。 Service并不是运行在一个独立的进程当…...

amr文件怎么转换成mp3?超好用的四种转换方法介绍!

amr文件怎么转换成mp3?在当今数字化时代,音频格式的多样性给我们带来了更广泛的选择,其中AMR格式就是其中之一,AMR格式在录音和通话领域得到广泛应用,但与此同时,它也存在一些挑战和局限性,尽管…...

翻转数位00

题目链接 翻转数位 题目描述 注意点 可以将一个数位从0变为1找出能够获得的最长的一串1的长度(必须是连续的) 解答思路 参照题解使用动态规划解决本题,对于任意一个位置i,dp[i][0]表示到达且包含第i位不翻转0最长1的长度&…...

工具:安装R语言的R包的各种方法

欢迎大家关注全网生信学习者系列: WX公zhong号:生信学习者Xiao hong书:生信学习者知hu:生信学习者CDSN:生信学习者2 介绍 R语言提供的大量R包为众多研究者提供了足够的工具,但是如何安装R包是很多人在使…...

注意力机制和Transformer模型各部分功能解释

文章目录 Transformer1、各部分功能解释2、通过例子解释a.输入预处理位置编码b.Encoder 的处理c.Decoder的输入Decoder的工作流程d.输出预测总结 Attention代码和原理理解 Transformer 运行机理: (1)假设我们需要进行文本生成任务。我们将已…...

wordpress阿里云域名转移/关系网站优化公司

2019独角兽企业重金招聘Python工程师标准>>> 一、虚拟存储器 内存管理最基础的概念,恐怕是虚拟存储器(Virtual Memory,简称VM)了,它是计算机系统(注意我没写操作系统,因为其中还有部…...

element ui设计网站/seo薪酬如何

前言 很多朋友都在用Windows Live Writer在园子里写博客吧,同样也有很多朋友都会在文章结束的时候加上版权信息,更有利于保护自己的合法权益。 这些版权信息的样式很多,例如: 再如: 如果每次写文章的时候都重新写一段这…...

精准营销软件/seo是如何做优化的

Django路由Path方法 在前一节,我们详细了解了 Django 1.x 版本中 url 方法匹配路由的规则,在本节我们将讲解 Django 2.x 版本中 path 方法,希望对大家掌握路由系统的相关知识能够有所帮助。 1.初识path()方法 Django 2.0 可谓是 Django 的…...

武宣县住房和城乡建设局网站/百度热线电话

这些软件测试常识你必须牢记: 01、软件测试(软件测试存在的意义) 1、发现程序中的错误而执行程序的过程 2、检验产品是否符合用户需求 3、提高用户体验 02、软件测试原则(常识) 1、尽早介入(需求分析…...

wordpress博客主题制作/编程培训机构加盟哪家好

网传2017春节快递停运时间表: 网络上疯传的2017春节快递停运时间表 “2017年快递停运春节放假时间通知”是真的? 2017年春节期间快递真的停运吗 ❤❤❤喜讯:2017年春节期间快递不放假❤❤❤ 近日,一张“2017春节快递放假时间安排…...

购物网站建设 属于信息系统管理与设计么/企业推广网站有哪些

一、获取HTTPS安全证书 在操作之前,请将你的域名的隐私保护去掉,让证书服务商能通过域名解析查看到域名管理者的邮箱,否则验证证书时会无法进行。 登录阿里云管理控制台,【云盾】菜单选择【证书服务】 选择购买证书 在购买页面&…...