从事过软件测试的小伙们就会明白会使用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. postman(八):使用newman来执行postman脚本

    通过之前的了解,我们知道postman是基于javascript语言编写的,而导出的json格式的postman脚本也无法直接在服务器运行,它需要在newman中执行(可以把newman看做postm ...

  2. C# 文件/文件夹压缩解压缩

    项目上用到的,随手做个记录,哈哈. 直接上代码: using System; using System.Data; using System.Configuration; using System.C ...

  3. Flutter采坑之路 Run Configuration error:broken configuration due to unavailable

    今天把AndroidStudio升级成了3.3.1 原先还能编译成功的Flutter工程突然连编译都不行了, 错误是 Run Configuration error:broken configurat ...

  4. pycharm 执行unittest 没有生成测试报告

    解决: [第一步] [第二步]

  5. jQuery中的 $.ajax的一些方法

    1. $(document).ajaxConplete(function(){}) 1.8版本之后,只能绑定到document元素上:1.8版本之前,可以帮到其他元素上 当$.ajax执行完成之后,执 ...

  6. 从Excel、CSV文件获取数据

    #region 从Excel获取数据 /// <summary> /// 从Excel获取数据 /// </summary> /// <param name=" ...

  7. [sgu P155] Cartesian Tree

    155. Cartesian Tree time limit per test: 0.25 sec. memory limit per test: 65536 KB input: standard i ...

  8. MapRdeuce&Yarn的工作机制(YarnChild是什么)

    MapRdeuce&Yarn的工作机制 一幅图解决你所有的困惑 那天在集群中跑一个MapReduce的程序时,在机器上jps了一下发现了每台机器中有好多个YarnChild.困惑什么时Yarn ...

  9. 为什么会出现container、injection技术?发展历史及未来发展趋势

    container 原因: 随着软件开发的发展,相比于早期的集中式应用部署方式,现在的应用基本都是采用分布式的部署方式,一个应用可能包含多种服务或多个模块,因此多种服务可能部署在多种环境中,如虚拟服务 ...

  10. Android 音视频深入 十二 FFmpeg视频替换声音(附源码下载)

    项目地址,求starhttps://github.com/979451341/AudioVideoStudyCodeTwo/tree/master/FFmpeg%E7%BB%99%E8%A7%86%E ...