自动化测试git的使用

news2024/11/29 1:40:30

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

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[Java基本语法] 异常

🌸个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 🏵️热门专栏:🍕 Collection与数据结构 (92平均质量分)https://blog.csdn.net/2301_80050796/category_12621348.html?spm1001.2014.3001.5482 🧀线程与…

Linux 内核 (十二)进程间通讯 之 消息队列

前言 这个系列的上一篇介绍了进程间通讯关于管道相关的内容及代码实例,本章要介绍关于消息队列相关的内容. 消息队列交互图示 函数原型 #include <sys/msg.h> #include <sys/ipc.h> //创建 or 打开队列 成功返回队列ID,失败返回-1 int msgget(key_t key,int fla…

探索AIGC与3D技术的融合:从图像到可探索的3D动态场景

随着人工智能和计算机图形技术的飞速发展,AIGC(人工智能生成内容)与3D技术的结合正在为我们打开一扇全新的创意之门。最近,我深入研究了几个令人兴奋的AIGC+3D方案,它们不仅展示了从单张图片或文本提示生成3D点云的强大能力,还进一步实现了AI虚拟试穿和生成高保真3D数字人…

Qt信号槽的回调机制

问&#xff1a;Qt强大的地方在哪里&#xff1f; 答&#xff1a;跨平台、信号槽。。。 问&#xff1a;信号槽是什么&#xff1f; 答&#xff1a;回调函数 问&#xff1a;怎么个回调法子 答&#xff1a;。。。 成果 信号槽本身实现过程是有些复杂的&#xff0c;所以本人参考…

CDN绕过技术

DNS域名信息收集 简介 Dns域名信息的手机&#xff0c;需要收集域名对应IP&#xff0c;域名注册人&#xff0c;DNS记录&#xff0c;子域名等一系列与域名相关的信息。 Cdn技术简介 Cdn是一个内容分发网络&#xff0c;类似于dns服务器一样&#xff0c;用户发送数据直接发送到…

AI Assistant 2024 震撼登场:AI补全功能惊艳来袭,替换GitHub Copilot Chat最友好的方式!

哈喽!欢迎来到程序视点。 前言 在之前的文章中&#xff0c;我们提到过“JetBrains 2024.1 中&#xff0c;AI Assistant 插件已被解绑&#xff0c;现在作为单独的插件在 JetBrains IDE 中可用”。 这一变化的驱动力是&#xff0c;需要在使用 AI 驱动的技术时提供更大的决策灵活…

【C语言习题】30.使用指针打印数组内容

文章目录 作业标题作业内容2.解题思路3.具体代码 作业标题 使用指针打印数组内容 作业内容 写一个函数打印arr数组的内容&#xff0c;不使用数组下标&#xff0c;使用指针。 arr是一个整形一维数组。 2.解题思路 先定义一个数组&#xff0c;使用指针打印数组内容那就是说我们…

linux驱动学习(八)之内核定制与裁剪

一、内核的配置 1) 把相关硬件平台的配置文件拷贝给.config 2) 执行make menuconfig命令 关于内核配置说明:Arrow keys navigate the menu. 方向键对菜单有效<Enter> selects submenus --->. 如果有该符号"--->",则按Enter表示进入子菜单Highlighted …

可视化图表:如此高颜值柱状图,其实简单配置就能实现。

这不又有某个boss给我图截图一些柱状性图表&#xff0c;说他们的前端觉得很难&#xff0c;说了一堆技术术语&#xff0c;他也不懂&#xff0c;截图我看到后&#xff0c;就给了他一个网址&#xff0c;马上就解决了。 在这里给大家摘录出几个比较有特色的柱状图出来&#xff0c;让…

【网络安全学习】使用Kali做渗透情报收集-01-<域名信息主机信息>

1.收集开源情报 开源情报(Open Source Intelligence&#xff0c;OSINT)是指从各种公开的渠道中寻找和获取有价值的信息 如&#xff1a;互联网、媒体、社交网络、公共数据库等开源情报具有以下特点&#xff1a; - 丰富性&#xff1a;开源情报涵盖了各种类型和领域的信息 - 可…

香橙派鲲鹏Pro(orange pi kunpeng) 开箱测试,和在娱乐功能(电视盒子),深度机器学习应用方面的测试报告

摘要 对Orange Pi kunpeng这个开发板进行综合评测&#xff0c;特别关注其作为电视盒子的性能以及在深度学习应用中的算力和稳定性。通过一个月的测试&#xff0c;我们评估了其硬件性能、软件兼容性、用户体验和实际应用潜力 引言 5月份&#xff0c;我收到了csdn 对Orange P…

论文阅读笔记:Instance-Aware Dynamic Neural Network Quantization

论文阅读笔记&#xff1a;Instance-Aware Dynamic Neural Network Quantization 1 背景2 创新点3 方法4 模块4.1 网络量化4.2 动态量化4.3 用于动态量化的位控制器4.4 优化 5 效果 论文&#xff1a;https://openaccess.thecvf.com/content/CVPR2022/papers/Liu_Instance-Aware_…

班子考核评价的重要性与实施方法

在组织管理领域&#xff0c;班子考核评价是一项至关重要的工作&#xff0c;它不仅关系到组织的发展方向和速度&#xff0c;更直接影响到组织的凝聚力和战斗力。一个科学、公正、有效的班子考核评价体系&#xff0c;能够准确反映班子的工作成效&#xff0c;激励班子成员积极作为…

前后端分离对于后端来说,是利好还是利弊呢?

前后端分离已经成为前端开发的主流模式&#xff0c;这种模式极大的解放了后端&#xff0c;让后端人员不再即当爹又当妈了&#xff0c;那么这种模式对于后端来说是利好还是利弊呢&#xff0c;如何趋利避害呢&#xff0c;贝格前端工场为大家分享一下。 一、什么前后端分离的开发…

新一代大核卷积反超ViT和ConvNet!同参数量下性能、精度、速度完胜

大核卷积网络是CNN的一种变体&#xff0c;也是深度学习领域的一种重要技术&#xff0c;它使用较大的卷积核来处理图像数据&#xff0c;以提高模型对视觉信息的理解和处理能力。 这种类型的网络能够捕捉到更多的空间信息&#xff0c;因为它的大步长和大感受野可以一次性覆盖图像…

ORB算法特征提取

声明&#xff1a;学习过程中的知识总结&#xff0c;欢迎批评指正。 ORB算法提取两路输入图像&#xff08;图像A&#xff0c;图像B&#xff09;的特征点&#xff0c;根据提取的特征点进行特征匹配得到特征对。 ​ 图像金字塔 因为在现实世界中&#xff0c;同一个物体可能会以…

leetcode-09-[232]用栈实现队列[225]用队列实现栈[20]有效的括号[1047]删除字符串中的所有相邻重复项

重点&#xff1a; 栈和队列 Java中 栈不建议用stack来实现 建议用 ArrayDeque和Linkedlist来实现 队列建议用ArrayDeque和Linkedlist来实现 两者效率比较&#xff1a; java - Why is ArrayDeque better than LinkedList - Stack Overflow 基于Linkedlist是链表等&#xff0c;除…

MySQL数据操作与查询-T5 MySQL函数

一、数学函数和控制流函数 1、数学函数 &#xff08;1&#xff09;abs(x) 计算x的绝对值。 1 select abs(‐5.5),abs(10) &#xff08;2&#xff09;pow(x,y) 计算x的y次方的值。 1 select pow(2,8),pow(8,2) &#xff08;3&#xff09;round(x) 和 round(x,y) 对数字x进…

力扣hot100:75. 颜色分类(双指针)

75.颜色分类 本题是经典的「荷兰国旗问题」&#xff0c;由计算机科学家 Edsger W. Dijkstra 首先提出。 75. 颜色分类 1、遍历两遍 遍历两遍&#xff0c;第一遍放置0的位置&#xff0c;第二遍放置1的位置&#xff0c;我们只需要维护一个当前放置位置即可。 class Solution…