好久没用“必读”这两个字了,毕竟没啥内容是所有人都得必读的(当然,测试君这里也只是用了“入门到玩转”,“精通”可不敢乱用 。
行业新人特别喜欢用“精通”二字(测试君曾经刚入行时,犯了同样错误),特别是简历上“精通xxx”遍地都是;学无止境,测试君没啥精通的,但带大家轻松玩转测试从业者必备Linux知识,是完全没问题的)。
很多从业者,在测试职业混了五六年,依然都某些知识一窍不通。但照样混的好好的,带着一批小弟。每天不亦乐乎。开开会、排排计划、跟进下结果,日复一日、年复一年。
人嘛,还是得跟自己比,去了解行业趋势,而不是去瞄准身边的个例 。你身边的朋友,基本上是与你处于同一水平或同一阶层的,没有太多参考价值。
很多同学,习惯性的,喜欢说,我某个朋友… ,某个朋友又… ,我能不能…
OK ,如上几句唠叨,觉得有用可仔细看,欢迎讨论。亦可忽略之,如下是正文。
曾经,在公众号,伤心的辣条,写过不止十篇Linux文章。今天,更系统性的分享一次Linux知识 。
从整个测试职业来说,Linux知识必须掌握
现在多数服务器部署在Linux系,你至少得学会看Log
如果没有持续集成体系,至少得会更新部署包;
至少得会简单的问题判断;
不要成为一个什么都不懂的Tester 。
想玩性能?Linux是必须掌握的知识 。
想玩自动化?Linux必须掌握 。
测试君现在招人的必备条件是:掌握Linux基础知识 。
也许你会说,现在完全没接触过Linux,工作中也用不上。
嗯,是的;你迟早会用上的 。
如何准备一套Linux环境 ?
Linux常用150个命令 ?
150个常用的Linux命令一网打尽
基础的Linux环境部署 ?
测试从业者,Linux实战问题 ?
正文 :
再次整体Linux专题文,缘于百人计划成员对Linux知识的薄弱以及测试君前几天发起的Linux专题分享;发现多数软件测试从业者,Linux基础太薄弱,甚至很多从业者根本没有Linux基础;
还在用那套Windows的思维,玩Linux 。
之前写过很多Linux文章,虽然文章步骤写的非常清楚,还是有大部分同学,根本不知道如何下手操作 。
如下,简单梳理下,最需要掌握的Linux内容。
玩Linux之前,首先要有Linux的环境可以玩,否则都是浮云 。
公司如果有Linux服务器可以让你玩耍的,更好,直接玩就行(注意,别在服服务器上玩,小心把服务器玩挂了)。
或者土豪的,可以买个云服务器,一年几百块,也不贵 。
测试君更建议大家安装个虚拟机,随便怎么折腾都行,也不怕玩坏 。
Windows下,虚拟机软件推荐:VMware 或 VirtualBox
虚拟机安装搞定后,在虚拟机安装个Linux操作系统,测试君推荐Centos 6.5 ,至于怎么安装?(公众号后台,回复“Linux入门”有安装文档)
系统安装搞定后,剩下的就是安装个终端连接工具,每次在虚拟机操作甚是不便,推荐工具:SecureCRT 或 Xshell
注:安装Centos,建议安装服务版,桌面没有太大价值。
系统安装后,剩下的就是在Linux部署你需要的各种服务了,各种安装操作,少不了的一步就是往服务器上传/下载各种安装包(当然,也可以wget直接获取),有两个非常简单方便的命令rz / sz ,可能很多系统默认没安装此服务 。
安装sz/rz一步搞定,执行命令
yum install lrzsz
剩下就简单了,在Xshell:
输入rz,会弹出文件选择框,上传文件到Linux
输入sz 文件名,会下载文件到Windows~
Linux初学者,经常容易出的问题~
cd 进入某个目录,如测试君一般安装文件会放在/usr/local/webserver,此时你要进入此目录,执行:
cd /usr/local/webserver
如果目录不存在怎么办呢?肯定是创建目录,执行:
mkdir -p /usr/local/webserver
多数时候,你执行命令,提示找不到文件,此时可执行:
pwd
查看下你当前的目录是否对 。
然后就是压缩/解压tar -xvf / tar -cvf
剩下的可能就是vi的常用操作,很多同学可能完全没有概念,记住如下几个模式:
命令模式,可以执行各种命令 。
编辑模式,各种文本编辑操作 。
剩下的,google一下你就知道 。
对于Tester,最常见的操作,需要更改环境变量文件 。
vi /etc/profile
然后按 i,进入编辑模式,到文件末尾,添加环境参数 。
添加完后,按esc,进入命令模式 。
执行:wq,保持此次修改 。
然后,就是执行soucre /etc/profile
使更改生效 。
注:还有很多其他命令,有兴趣,自己折腾。
常见的问题定位思路,需要用到的一些命令 。
查看某个服务是否启动,执行:
ps -aux|grep 服务名
查看启动了哪些端口:
netstat -nltp
实时查看某个服务的日志:
tail -100f /APP/web/logs/log.log
关掉某个进程:
kill -9 PID
如上,如果都掌握了,至少Linux入了个门 ,知道Linux是什么?能够上去自己折腾基础命令 。
下面,聊点进阶的内容,部署应用,升级应用等等。
--准备一套Linux环境--
可以直接在公众号后台,回复“Linux入门”获取之前整理的pdf安装文档。
--环境部署--
实际工作中,常见的部署服务如下。
Tomcat
JDK
Nginx
Mysql
Redis
MongoDB
Zookeeper
Ruby
node.js
Python
Maven
Jenkins
Git
注:如上没个服务具体如何部署,之前测试君也写过文章;另外,这类内容,网上大把,随便一搜就有。重点是,自己去折腾,去部署,一定会遇到各种问题的,逐步去解决。
--温馨提醒--
Linux实战过程中,一定会遇到各种问题。
有两个非常有用的东西,可以解决你的多数问题。
最后,补充几段测试君的观点:
自学三要素:
自律
有计划
目标驱动
测试君核心观点:
学习,实践才是王道 。
那些看起来好像都懂的东西,其实你并没有懂 。
再送一句:
针对某一个知识,不要以为自己玩过一遍就什么都懂了!真的懂了吗?
最后,说说测试君对于学习的观点、以及路径:
学习新知识、新技术,首先去看看相关文章,掌握整体知识(当然,最系统的还是书籍)
针对文章或书籍不懂的问题,网上主动搜索资料、求知。勿做伸手党
再有不懂的,加职业技术群(加纯交流技术的,而不是那种闲聊吹水群,浪费时间~)
如上三个动作后,还是不懂的,可以加测试君的个人微信HUACE1024留言,问题陈述清楚,也许会回复。或者加“软件测试圈”深度交流。
测试君有一个纯技术的“软件测试 之 Linux体系”微信群,交流所有测试从业者LInux相关问题。当然,不是所有人都邀请,看缘分 。
最后: 大家可以去我博客首页看下侧边栏! 进去有许多资料共享!资料都是面试时面试官必问的知识点,也包括了很多测试行业常见知识,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。
转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!
面试经:一线城市搬砖!又面软件测试岗,5000就知足了…
面试官:工作三年,还来面初级测试?恐怕你的软件测试工程师的头衔要加双引号…
什么样的人适合从事软件测试工作?
那个准点下班的人,比我先升职了…
测试岗反复跳槽,跳着跳着就跳没了…