软件测试中的git

2019-04-13 18:27:27 qq_25162431 阅读数 6796

面试官,你好,我叫Jayce,16年本科毕业,从事软件测试将近3年的时间。在此期间做过一些项目也积累过一些经验,能够独立地完成软件测试流程的一个工作。我之前主要做过的是功能测试,web自动化测试、app专项测试、接口测试、也有用过Jmeter做过一些性能方面的测试。我对于缺陷管理工具比如禅道,版本控制器git与svn能够熟悉应用。数据库、linux、Fiddler、Jmeter这些应用也比较熟悉。我最近有在学习的是一个app的自动化测试,它是使用Pythopn+Appium,结合pytest自动化测试框架,基于PO的思想来实现的。平时我个人会比较喜欢看书、看nba。以上就是我的一些简单的自我介绍,谢谢。

2019-08-14 13:15:18 congfei3795 阅读数 51

Git  基础使用  

环境准备:

   操作系统: Win7 旗舰版  64位

   Git :自官网下载2.22 Windows版本,默认安装

   任意位置新建一个空白文件夹:d:/B03_Git

   在该文件夹中点击鼠标右键,选择“Git Bash Here”,打开Git终端控制窗口

 

初始化(新建)一个仓库:

图中命令依次解释:

命令: pwd  

解释:查看当前所在路径,即新建空白文件夹中(d:/B03_Git)

 

命令: git status

解释:查看当前仓库状态,由于此时还未创建仓库,因此提示“还没有仓库”

 

命令: git  --version

解释:查看当前使用的git版本号,显示当前使用的版本是2.22.0

 

命令: git  init

解释:在当前目录新建(初始化)一个仓库,成功后在本目录下多出一个默认隐藏的.git 文件夹,证明仓库创建成功

 

命令: git  status

解释:再次查看当前仓库状态,提示当前处于主分支(master)中,而且目前没有可供提交的文件。

 

 

 

新增文件操作:

命令: pwd

解释:查看当前所在路径,即新建空白文件夹中(d:/B03_Git)

 

操作:在仓库文件夹(d:/B03_Git)中新增一个子目录(T1),并在该子目录下新增一个文本文件(doc_1.txt)

命令: git add  .

解释:将doc_1.txt文件放入仓库的暂存区(stage)。其中的“.”是相对路径写法,代表当前路径,git会自动搜索当前路径下面新增的文件,并一起自动放入暂存区。

 

命令: git  status

解释:查看当前仓库状态。

       On branch master    当前处于master分支中

       No commits yet      当前内容没有提交

       Changes to be committed:  可以被提交的改变,后面列出发现的被改变的文件(doc_1.txt)

 

操作:继续在T1子目录中新增一个文本文件(doc_2.txt)

命令: git  status

解释:查看当前仓库状态。注意:前面的doc_1.txt已经通过add命令增加到暂存区。而新增的doc_2.txt文件还没有执行add命令。我们对比看此时仓库的状态有哪些提示信息。

      doc_1.txt 文件的提示信息没有发生改变

      untracked files ... : 红色文字提示有未跟踪到的文件doc_2.txt。

 

命令: git  add  ./T1/doc_2.txt

解释:再次执行add命令,通过指明文件名的方式,将doc_2.txt文件放入仓库的暂存区。注意:此时在仓库的暂存区一共有两个文件了doc_1.txt和 doc_2.txt。


 

提交文件操作:

命令: git commit –m  “ 提交两个文件”

解释:将增加到暂存区的文件提交到仓库中

      -m :提交说明选项。git要求提交时必须输入提交的说明信息,即后面的双引号中的内容。

结果:此次提交失败。提示中说明原因是git还不知道你是谁呢,即提交操作需要有一个用户帐户身份。提示中也说明了如何配置用户帐户信息的命令。


 

命令:git  config  --global  user.email  “xxxx@163.com”

      git  config  --global  user.name  “xxxx@163.com”

解释:分配配置你的邮箱帐户和用户名信息。再次执行上面的提交命令,提交成功。

     

 

 

再次熟悉一下整个操作过程

操作:在T1目录中新建第三个文件doc_3.txt

命令: git  add  .

解释:将新建文件增加到暂存区

 

命令: git  commit  -m  “aaaaaa”

解释:将暂存区文件提交到仓库,并增加注释信息

      [master  a6ce48a] aaaaaa   文件被提交到master分支成功,并自动赋予版本号a6ce48a

 

命令: git  status

解释:查看仓库状态。

On branch master 当前处于master分支

Nothing to commit, working tree clean    没有可提交内容,工作目录中也没有改变的内容

 

 

 

 

在提交命令中,如果没有输入 –m 选项(提交注释说明),git会自动打开vi编辑器(安装git的时候默认选择的编辑器),要求输入提交的注释说明信息,此时直接输入并保存即可。

 

查看提交日志:

命令: git log

解释:显示每次提交的版本日志(版本号、最新位置、提交人、提交时间等)

 

 

查看操作日志:

命令: git  reflog

解释: 显示使用命令操作的日志。如图中分别执行的5次(0~4)操作,包括初始化仓库、提交文件、回退版本等操作。

 

 

 


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69914734/viewspace-2653636/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/69914734/viewspace-2653636/

2018-04-25 09:17:09 qq_40293864 阅读数 1565
Git是分布式的版本控制系统。
  作为一名Git的小白使用者,一开始接触很懵逼,因为总担心自己一不小心误操作影响代码仓库的代码,网络上关于Git的使用多从开发的角度,很少有人从测试的角度来介绍Git的使用,下面就把自己这段时间的学习做一个简单的总结,算是抛砖引玉吧~
【新系统刚搭建完测试环境】
  在这种情况下,我们的本地服务器只是安装了Git,但是本地服务器上并没有远程代码,这时候我们需要两步即可轻松搭建本地的Git仓库,并将远程代码部署到测试环境。
 1.确保本地服务器上配置了Git,
【本地Linux服务器上配置Git】
     当我们需要拉取远程服务器代码到本地服务器时,我们首先要确定已经配置了正确的Git账号,可以从~/.gitconfig文件(为隐藏文件,需要使用ls -a查看),以及~/.ssh下的id_rsa.pub来确定本地服务器上是否已经配置了正确的ssh key;
  若无上述提到的文件:则需要在本地服务器上完成以下1~6步配置Git;
  若有上述文件,则需要校对文件的正确性,即.gitconfig中账户及邮箱是否正确(可以使用用户名登陆GitLab则视为正确),id_rsa.pub是否为账户对应的ssh key,若否则参考下面的步骤,更改为正确的值即可;
【Linux服务器上配置Git完整过程】

1.git config --global user.name "****"      ****替换为自己的用户名,是GitLab的登录用户名;

2.git config --global user.email xupp@***.com,完成1~2步可以使用“cat .gitconfig”查看设置是否生效,我的配置见下图;

3.cd ~/.ssh,如果目录下有文件id_rsa.pub 或 id_dsa.pub,可以手动编辑成自己的sshkey,也可以使用步骤4的命令,生成新的public key;
4.ssh-keygen -t rsa -C "xupp@***.com"  -- 生成新的public key,xupp@***.com对应 .gitconfig文件中的email参数值;
5.id_rsa.pub文件内容即为SSH key,将这些信息复制到GitLab的Add an SSH key页面,新增一个Keys,Title中可以为该key设置一个别名,我自己习惯使用“用户名-应用名”的形式,随意定就好;
6.chmod 700 id_rsa,更改文件的权限,否则在git  clone的时候会报“Permissions 0664 for '*******/.ssh/id_rsa' are too open.”的错;
本地Linux服务器上配置Git完成后
  2.在本地服务器上构建一个代码仓库,使用:
  git clone git@git.*****.git wedata-framework  (wedata-framework为自定义的本地仓库名,建议和远程仓库的保持一致,仓库路径为执行本命令的路径);
  执行完后,使用 ls 即可查看到本地仓库,cd wedata-framework进去就可以看到当前部署的分支代码,默认是克隆master,可以使用 git branch 查看到;
  至此,代码仓库已经在本地服务器上建好,下面我们要做的就是【开发分支部署】。
开发分支部署
  这里只要了解Git的基本命令即可;
  1.git branch -a  //显示所有的分支:本地分支+远程分支(以remotes/origin/开头)
  2.git pull           //取回远程主机的分支更新;在本地没有分支A时,使用该命令后,可以看到远程分支A,在本地部署了分支A后使用该命令,会将远程仓库A分支更新到本地,如果本地的和远程的没有任何区别,那会显示“Already up-to-date”;
  3.git checkout -b  A /remotes/origin/A  //将远程A分支拷贝到本地,并在本地部署A分支;
  不出意外的话,输入命令后会回显说已经checkout到了A分支;
  若在此处出现警告,提示需要先提交,如果不提交则可以使用“git reset --hard”和“git pull”,之后可以使用第3步的命令
2020-01-14 18:52:47 weixin_45630042 阅读数 187

       首先Git的安装,这里不多做阐述,直接去Git官方网站下载后并傻瓜式安装即可。
       如何判定已安装好Git呢? ------------- 随便打开一个目录,鼠标右键点击可看到多了两个 git gui here 和 git bash here

新创建一个目录 如github 在该目录下右键打开里面弹窗的git bash here的命令提示窗

输入git init 初始化仓库 也就是创建版本库,然后就可以看到该目录下多了个.git目录文件,若看不到,则设置电脑显示隐藏文件。这个目录是GIt跟踪管理版本库的。

在git bash here中输入echo case01 >>suite1.txt 创建了一个txt文件并输入内容 case01

输入查看文件内容的命令 cat suite1.txt


Git使用步骤 ------- 主线任务

   步骤1:首先要有个版本库   git init   /    git clone

   步骤2:将文件添加到版本库(添加到暂存区)

                  ① git add xxx.txt

                  ② git commit -m "修改信息"     把文件提交到仓库

    首次使用会提示:please tell me who you are  遇到这种情况 只需要敲下面两句命令后,继续commit即可。

    git config --global user.name "xxx"

    git config --global user.email "xxx@163.com"

    再以后提交到仓库后,可以直接用一条命令代替即可:git commit -a -m "备注"

    以下两条命令常用的:

                                  git config --list   查看所有的配置信息

                                  git status  查看当前的git仓库状态 

处理意外情况 ------- 支线任务

    场景1  --- 撤销修改     git checkout --suite1.txt

    场景2  --- 读取之前的存档      git reset HEAD suite1.txt

    提交到版本库的记录 用命令 git log   里面有版本号等

    回退到某个版本的命令   git reset --hard 版本号   还有个简单方法:git reset --hard HEAD^    一个^表示上一个版本   两个^表示上上个版本

    git reflog     查看所有分支的所有操作记录,包括已经被删除的commit记录

    git log         查看日志,但是不能查看已删除了的commit的记录

云备份 同步工作记录

    选择远程GIT服务器: 国内 --- 码云 https://gitee.com

                                 国外 --- Github https://github.com

    创建远程仓库:选择国内的码云平台,在平台先创建一个仓库

    Git全局设置:   git config -- global user.name "xxx"

                         git config -- global user.email "xxx@163.com"

    创建git仓库:没有仓库就创建。

                          已有仓库?本地仓库和远程仓库进行关联 origin代表远程仓库的名称,也可以自定义名字。

                                     git remote and origin git@gitee.com:leijun/testsuite.git

    查看远程服务器名称  git remote

    查看远程服务器的详细信息 git remote -v

    SSH公钥生成:操作步骤如下:

                                  ① ssh-keygen -t rsa -C "xxx@163.com"

                                  ② 按照提示完成三次回车,即可生成ssh key

                                  ③ 查看获取public key 用命令cat ~/.ssh/id_rsa.pub   或者   直接去电脑盘用户下的.ssh目录下的id_rsa.pub文件,直接用鼠标右键 git fui here打,最后复制粘贴到码云添加公钥。

如何把本地代码上传?

   操作步骤:

        ① git init  建仓库

        ② git add 添加代码到本地仓库(暂存区)

        ③ git commit -m "备注"    提交到本地缓存

        ④ git remote add origin https://github.com/leijun/suite.git   提交到远程仓库

        ⑤ git push -u origin master   push到master分支

遇到问题??

    提交到远程时,提示:fatal:romote origin already exists

    解决办法是:删除远程git仓库  用命令 git remote rm origin

若想从远程仓库将文件做更新,可以克隆一下文件地址(复制):

   通过git clone git@gitee.com:xxx/testsuite.git

   具体步骤:① 可以在本机盘符里新建一个目录,以便存放克隆下来的文件

                 ② 在该目录下打开git bash here  输入git clone git@gitee.com:xxx/testsuite.git

                 ③ 该目录下就能看见从远程仓库克隆下来的文件了

如何多人同时开发维护代码?

   得先 git  pull 拉取当前分支最新代码

   最后一步 git push origin master 才是push到远程的master分支上

【课堂小测试】

1、git是由什么语言编写的?

使用C语言编写。git很快,C语言通过减少运行时的开销来做到这一点

2、git可以安装在哪些操作系统上?

Linux Windows Mac

3、git属于什么类型的版本管理系统?

分布式

4、git与svn的区别?

git是分布式;svn是集中式。

git是第三代;svn是第二代。

git的push/pull操作更快;svn的push/pull操作较慢。

git离线也可以提交;svn只允许在线提交。

git可以在其本地系统上克隆整个存储库;svn版本历史记录存储在服务器端存储库中。

5、git config的功能是什么?

用来更改你的git配置,包括你的用户名

6、如何在存储库创建存储库?

要创建存储库,先要为项目创建一个目录,然后运行命令git init

通过运行此命令,将在项目的目录中创建.git目录。

7、怎么将N次提交压缩成一次提交?

git reset -soft HEAD~N &&

git commit

2018-11-30 23:37:32 qq_28817739 阅读数 763

        大家好,今天我们这期来讲真实面试中,你要get的技能点(一)

        通常我们的面试流程一般是,先跟人事的沟通,确定一下面试时间和相关事宜,接收到面试邀请,接着面试者的面试流程一般会先进行笔试,再进行面试,当然可能还会有多次的复试,如果公司感觉你可以,会确定一下薪资等事情。

        那我们在这期 中,就主要说明一下软件测试面试中的笔试题部分,根据我的统计发现,软件测试的笔试题中通常会包含 测试基础问题,linux 命令, sql 语句编写 和 技能点的简答,可能也会有简单的代码实现。

        其中关于测试基础和技能点的描述,我们这期不做阐述。

        那我要说下关于常考的 linux命令和sql语句:

        常考的 linux 命令,sql 语句命令说一下。

 1查看本机的ip地址
 2ifconfig
 3查看程序进程号
 4ps -aux | grep  "程序名"
 5查看cpu占用情况
 6top
 7查看硬盘使用情况
 8df
 9打包命令
10tar -cvf   打包文件名  打包目录
11linux文件的权限是 755 
12所属用户的权限是  读写可执行
13所属用户当前组的权限是   读可执行 
14其他组的权限是  读可执行
15tar –zcvf 创建一个tar.gz的压缩文件
16tar –zxvf 解压一个tar.gz的压缩文件
17rpm –ivh 安装一个.rpm的安装文件
18rm –rf + 目录/文件名 删除目录或文件
19chmod 改变文件或目录的权限 r:4 w:2 x:1 755 777
20ps -aux | grep + 服务名 查看服务是否启动
21Kill -9 进程ID 查询出进程后根据进程ID删除

        sql 这一块,增删改查,条件查询,分组查询 group by,关联查询(内关联,左关联,右关联)一些聚合函数,求和,求个数,最大值,最小值。

 

GitFlow详解教程

阅读数 18825