• 高级测试工程师必备技术:用Git版本控制自动化测试代码


    初识Git版本控制

    自动化测试代码反复执行,如果借用持续集成工具会提高测试效率,那么需要我们把自动化测试代码发布到正式环境中,这时候用Git版本控制工具高效、稳定、便捷。

    分布式版本控制

    Git可以把代码仓库完整地镜像下来,有完整的历史记录,它可以与远端代码库进行交互。

    简史

    Git诞生于2005年,速度快,极适合管理大项目。

    Git是什么

    其他版本控制系统如SVN,是随时间变化的差异性文件比较,在某时间段某些文件进行更新。

    Git是快照流,存储项目随时间改变的快照,几乎大部分操作都只需要访问本地文件和资源。保证完整性,用哈希Hash,一般只添加数据,不删除。

    Git三种状态:

    已修改:在工作区修改文件,但没保存到数据库

    已暂存: 在暂存区对已修改的文件做标记,使其包含在下次提交的快照中

    已提交:在Git目录安全地保存数据到本地数据库

    基本Git工作流程:

    ①工作区修改文件;

    ②暂存区将下次提交的更改选择性暂存,修改部分添加到暂存区;

    ③提交更新,找到暂存区的文件,将快照永久保存在Git目录。

    命令行

    所有人都有命令行工具,会命令行则应该会GUI。

    安装Git

    本次实践安装的最新版2.36.0,官网下载windows版本https://git-scm.com/download/win。

    初次运行Git前的配置

    1. 设置用户信息,以下命令: git config --global user.name “” git config --global user.email “” 如果想给特定项目设置用户信息,则在该项目目录下运行无--global的命令。

    2. 设置文本编辑器,如未配置,Git会使用操作系统自带的编辑器。 设置notepad++为文本编辑器: git config --global core.editor “’d:\dev\notepad++\notepad++.exe” -multiInst -notabbar -nosession -noPlugin”

    3. 检查配置信息:

    git config --list

    可逐项检查,如:

    git config username

    获得帮助

    git help +Verb,例如git help config。如果不用全面只需快速参考,使用命令git +Verb -h,例如git add -h。

    Git基础

    获取Git仓库

    两种获得Git项目仓库的方式:

    ①对尚未进行版本控制的本地目录转换为Git仓库;

    ②从其他服务器克隆一个已存在的Git仓库。

    (1)对已存在目录中初始化仓库

    如果有一个尚未进行版本控制的项目目录,想要用Git控制它,那么需要进入该项目目录中。

    在Windows上:

    cd c/user/my_project

    之后执行:

    git init

    该命令将创建名为.git的子目录,这个子目录含有你做初始化的Git仓库中所有的必须文件,这些文件是Git仓库的骨干。这时,我们仅仅是做了一个初始化的操作,你的项目里的文件还没有被跟踪。

    如图所示:

    图1

    图2

    图3

    如果在一个已存在文件的文件夹(非空文件夹)中进行版本控制,应该开始追踪这些文件并进行初始提交。

    可以通过git add命令指定所需的文件进行追踪,然后执行git commit:

    git add *.c

    git add LICENSE

    git commit -m ‘initial project version’

    如图所示:

    图4

    这样已经得到了一个存在被追踪文件与初始提交的Git仓库。

    (2)克隆现有的仓库

    如果想获得一份已经存在了的Git仓库的拷贝,比如说,想为某个开源项目贡献自己的一份力,这时就要用到git clone命令。

    如果对其他VCS系统(比如Subversion)很熟悉,请留心以下所使用的命令是“clone”而不是“checkout”。这是Git区别于其他版本控制系统的一个重要特性,Git克隆的是该Git仓库服务器上的几乎所有数据,而不是仅仅复制完成你的工作所需要文件。

    当你执行git clone命令的时候,默认配置下远程Git仓库中的每一个文件的每个版本都将被拉取下来。实际上,如果服务器磁盘坏掉了,通常可以使用任何一个克隆下来的用户端来重建服务器上的仓库(虽然可能会丢失某些服务器端的hook设置,但是所有版本的数据仍在)。

    克隆仓库的命令是git clone。比如,要克隆Git的自建项目HTMLTestRunner,可以用下面的命令:

    git clone https://github.com/mingming1205/HTMLTestRunner

    这会在当前目录下创建一个名为“HTMLTestRunner”的目录,并在这个目录下初始化一个.git文件夹,从远程仓库拉取下所有数据放入.git文件夹,然后从中读取最新版本的文件的拷贝。

    如果打开这个新建的HTMLTestRunner文件夹,会发现所有项目文件已经在里面了,准备就绪等待后续的开发和使用。

    如下图:

    图5

    图6

    如果想在克隆远程仓库的时候,自定义本地仓库的名字,可以通过额外的参数指定新的目录名:

    git clone https://github.com/mingming1205/HTMLTestRunner myhtmltestrunner

    这会执行与上一条命令相同的操作,但是目标目录名变成了myhtmltestrunner。

    如下图:

    图7

    图8

    Git支持多种数据传输协议。以上的例子使用的是https://协议,不过也可以使用git://协议或者使用 SSH 传输协议,例如user@server:path/to/repo.git。

    至于所有这些协议在服务器端是如何配置使用,以及各种方式之间的利弊请查看“在服务器上搭建 Git”的介绍。

    记录每次更新到仓库

    执行命令:

    git commit -m “描述”

    查看提交历史

    执行命令:

    git log

    如果附带一系列总结的文字,执行命令:

    git log --stat

    如果限制日志查看数量,执行命令git log -p -2,当退出log时,在冒号“:”后面敲q即可。

    以下表格引自官网:

    感谢大家的阅读,希望你们能从中有所收获!

    最后:

    可以到我的个人号:atstudy-js,可以免费领取一份10G软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!其中包括了有基础知识、Linux必备、Mysql数据库、抓包工具、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试等。

    这些测试资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

  • 相关阅读:
    熬夜整理的40份可视化报表,改个数据就能直接用,赶紧点赞收藏
    vue开发环境准备
    hyper-v导入硬盘无法启动解决方法
    服务器上创建搭建gitlab
    【WinSDK】信号量不能看作弱化版互斥体
    如何看待Java上层技术与JVM
    从0开始的计组学习!让我们踏上计组的奇妙学习之旅叭~
    【DNS系列】什么是正向DNS和反向DNS
    8位bmp文件获取像素
    JavaScript-mooc(纯分享)
  • 原文地址:https://blog.csdn.net/deerxiaoluaa/article/details/127968876