从事过软件测试的小伙们就会明白会使用Linux是多么重要的一件事,工作时需要用到,面试时会被问到,简历中需要写到。

对于软件测试人员来说,不需要你多么熟练使用Linux所有命令,也不需要你对Linux系统完全了解,你只需要学会一些常用的基本命令,这些命令足够支撑你去查看日志,定位bug,修改文件,搭建环境就完全OK了。对于Linux系统底层的实现不需要了解,甚至对于绝大多数的命令都不需要知道。

我们是如何在我们的工作中使用Linux呢?

相信很多人都知道,之所以我们会用到Linux,是因为我们的产品将Linux系统作为我们的服务器使用,当我们去测试产品时需要在Linux上部署产品,若产品某个功能出现错误,我们需要去排查出错的原因,出于这二个目的,我们就需要掌握一定的Linux命令。

01

第一个作用:搭建环境

根据每个公司的情况,软件测试人员需要自己在Linux系统上部署测试环境,也有公司是开发人员帮忙在Linux服务器上部署,不需要测试人员自己部署,而现在大部分开始做自动化部署了,就更不需要软件测试人员手工部署,直接在Jenkins上自动部署就完成了,然后打开web界面,新部署上的去的代码就生效了。

现在的部署就这个简单了,基本不用手工了,那如果用手工部署需要用到哪些命令?

王豆豆就列一些在部署时需要用的命令:

基本在部署环境时,主要就会用到这些命令,可能还有其他的,根据实际使用情况。

第二个作用:查看日志

对软件测试人员来说,查看日志恐怕是软件测试人员运用Linux系统最多的功能。

查看日志主要是用于定位bug,或者查看程序执行情况(什么时候调用哪个服务,什么时候在哪个表中写数据,什么时候发起请求等都可以在日志中查询到)。

在查看日志时经常用到的一些命令:

1.查看日志文件的命令

(1)vi

vi/vim 原本是指修改文件,同时可以使用vi 日志文件名,打开日志文件

(2)less

less命令是王豆豆查看日志最常用的命令。

用法:less 日志文件名 --分页显示文件的内容

经常使用这个命令是因为在查看过程中可以根据实际情况翻页和查找,非常的方便。

空格或f 向下翻页

enter键 换行

q或Q 退出

pgup/pgdn 向上/向下一页一页切换

方向键 向上/向下一行一行切换

查找指定字符串:

先输入/,然后在/后面输入要查找的指定字符串,回车

----》显示的一个指定字符串是从当前位置查找到的第一个,可以按“n”继续向下查找其它的

(3)cat

查看文件内容比较少的文件,经常用cat

(4)tail

tail命令的意义是显示文件最后的几行,默认显示十行。

但是王豆豆经常使用的却是另一种场景:

当执行出错时,我们一般都会查看日志,但如果日志过多,查找很麻烦,这时王豆豆一般会使用tail命令动态显示日志。

tail -400f XX.log -->动态就是显示日志文件新增的内容*

2.搜索文件内容

(1)在文件里面搜索

在文件里面搜索,先用less命令查看文件,然后输入指定字符串进行查找。

(2)文件外面搜索

在文件外面搜索特定的字符串,可以用grep命令查找

=》 grep 'ERROR' test.log

查找test.log文件中包含'ERROR'的行,并且显示出来

=》 grep 'ERROR' test.log | wc -l

返回test.log文件中包含'ERROR'行的数目

根据查看日志定位到软件出错时的日志,通过分析日志来解决bug,当然这有可能也定位不出bug, 查看日志是定位bug的手段之一。

03

第三个作用:修改文件

修改文件一般是指修改配置文件,我们只需要掌握简单的几个命令就能学会如何修改文件。

1.进入文件

vi 命令前面有讲过这个命令是找开文件,在我们需要修改文件时,就需要使用vi/vim其意为在vim编辑器中打开文件,达到可以编辑文件的目的。

vi 命令除了可以修改文件 ,还可以作为新增文件的命令。

vi 不存在的文件名 ---》表示新增一个文件,并编辑

vi 存在的文件名 ---》表示可以修改该文件

2.修改文件

vim编辑器有三种模式:

  • 一般模式
  • 使用vi命令进入的那个模式就是一般模式
  • 命令模式
  • 在一般模式下输入:或/ 即进入了命令模式
  • 编辑模式在一般模式下按I,i,A,a,O,o,R 即进入了编辑模式在编辑模式下会提示INSERT REPLACE字样从命令模式或者编辑模式切换到一般模式,按ESC通过vi命令找开文件,初始状态为一般模式,如果要修改文件,需要切换到编辑模式。在一般模式时通过按I,i,A,a,O,o,R 都可以进入到编辑模式,使用哪一个都可以,唯一的区别就是插入的光标所在位置不同,王豆豆一般使用i/I,然后通过移动光标到达目标位置进行修改,所以不用记那么多,记住一个就好,是不是很聪明?

修改的操作就和我们编辑doc文件大致差不多,其他复杂的命令能记住就记住,记不住也不影响我们修改文件,唯一的区别是修改的效率快慢。

3.保存文件

修改文件之后,需要保存修改的内容,这样才算修改成功。

根据上面的使用场景来看是不是觉得掌握Linux命令非常的简单,真正需要你记的也不是很多,能记住常用的命令就完全足够我们使用了,其他的命令就随着我们在实际使用时再查再记,也是OK的。

作者:

链接:https://www.imooc.com/article/26961

来源:慕课网

本文原创发布于慕课网 ,转载请注明出处,谢谢合作

转-软件测试人员在工作中如何运用Linux的更多相关文章

  1. 软件测试人员在工作中如何运用Linux

    从事过软件测试的小伙们就会明白会使用Linux是多么重要的一件事,工作时需要用到,面试时会被问到,简历中需要写到. 对于软件测试人员来说,不需要你多么熟练使用Linux所有命令,也不需要你对Linux ...

  2. 我在华为,软件测试人员在工作中如何运用Linux?

    从事过软件测试的小伙们就会明白会使用Linux是多么重要的一件事,工作时需要用到,面试时会被问到,简历中需要写到.对于软件测试人员来说,不需要你多么熟练使用Linux所有命令,也不需要你对Linux系 ...

  3. 工作中常用的Linux命令:mkdir命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6076075.html (转载请注明出处) 在Linux系统中,mkdir命令用来创建一个目录或一个级联目录. ...

  4. 工作中常用的Linux命令:crontab命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6060252.html (转载请注明出处) crontab是一个用来设置.删除或显示供守护进程cron执行的定时 ...

  5. 工作中常用的Linux命令:ipcs/ipcrm命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6057100.html (转载请注明出处) ipcs 1. 命令格式 ipcs [resource-option ...

  6. 工作中常用的Linux命令:find命令

    本文链接:http://www.cnblogs.com/MartinChentf/p/6056571.html (转载请注明出处) 1.命令格式 find [-H] [-L] [-P] [-D deb ...

  7. 总结工作中常见的linux命令

    本文是总结下自己在工作中遇到的常见linux 命令,会持续更新! 1.文件路径切换 进入 cd 返回上一级  cd .. 2.复制 cp 源文件名 目标文件夹 cp log.log test5 3.编 ...

  8. 在工作中常用的Linux命令

    前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 之前写过一篇 < 在公司做的项目和自己在学校做 ...

  9. linux——实际工作中如何使用linux

    实际工作中,linux系统都不会在我们自己的电脑上,linux系统安装在机房的服务器上,我们操作linux不可能跑到机房去,所以我们需要有一个工具,能在公司通过网络远程连接到机房的linux服务器上 ...

随机推荐

  1. dijkstral改编

    题意:给你包含n个点的连通图,每个点都有一个权值.给定起点和终点.问你起点到终点的最短路条数,并且输出路径最短且权值之和最大的一条路径. 思路:1.如何根据父节点更新子节点.x,y是父子节点.如果从起 ...

  2. JavaScript自定义求和函数

    我爱撸码,撸码使我感到快乐!大家好,我是Counter,当看到这个标题到时候是不是感觉很简单,千万不要大意哦,你说0.1 + 0.2 = 0.3 ?有时候计算机并不是我们所说绝对精确,这个时候就要我们 ...

  3. HDFS初次编程

    hadoop是用Java语言实现的开源软件框架,可以支持多种语言,我学习的时候用得自然就是Java了. 在开始编程之前需要做一些配置工作: Hadoop开发:Hadoop为HDFS和Mapreduce ...

  4. Robot Framework问题记录

    robotframework运行时后台报错UnicodeDecodeError UnicodeDecodeError :'utf-8' codec can't decode byte 0xb2 in ...

  5. 机器学习实战1-1 KNN电影分类遇到的问题

    为什么电脑排版效果和手机排版效果不一样~ 目前只学习了python的基础语法,有些东西理解的不透彻,希望能一边看<机器学习实战>,一边加深对python的理解,所以写的内容很浅显,也许还会 ...

  6. xml.libxml2_添加带tagname的xml文本(xmlNewTextChild)

    1. 2.例子代码: int TgText::NodeNew_G2SVG(xmlNode* _pNodeCurrent_G, xmlNode* _pNodeParent_SVG, xmlNode** ...

  7. Node.js的缺陷

    Node.js最大的优点是事件机制,一切皆在回调中触发(不阻塞).我想缺点或许有正在于此,方法没有返回值,而只能在回调中使用返回结果,会导致事件回调嵌套,代码结构很差. 在jQuery中有一套很好的机 ...

  8. linux-Centos7安装python3并与python2共存

    1.查看是否已经安装Python CentOS 7.2 默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的是python2.7.5. 使用 python -V 命令查看一下是否安 ...

  9. vsto-Word相关操作

    //添加页码到页脚 Document doc = Globals.ThisAddIn.Application.ActiveDocument; HeaderFooter hprimary= doc.Se ...

  10. 微信小程序textarea组件在fixed定位中随页面滚动

    如果 textarea 是在一个 position:fixed 的区域,需要显示指定属性 fixed 为 true https://developers.weixin.qq.com/miniprogr ...