软件测试进阶之路(测试路上你问我答)“测试从0到1职业规划“
Posted 测试员小静
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件测试进阶之路(测试路上你问我答)“测试从0到1职业规划“相关的知识,希望对你有一定的参考价值。
大家好,我是小静。今天跟大家分享一下,测试怎样进行学习和进阶。
首先,我们来看一下整个操作系统的简史,整个操作系统可以分为四大时代,
- 第一个时代是 OS 时代,这个时候操作系统才刚刚成型,最早是 1973 年由贝尔实验室开发的UNIX 系统,以及 1982 年与 1991年在 UNIX 系统基础上进行扩展定制的若干变种。
- 第二个时代是 PC 时代,PC 时代崛起于 1975 年,当年乔布斯开发了 Apple 系统,随后 1980 年,比尔盖茨开发了 DOS 系统,从这时起更多的人开始接触操作系统,个人计算机得以普及。
- 第三个时代是 GUI 时代,GUI 时代的代表作是 1979 年乔布斯开发的 Mac 系统与 1990 年比尔盖茨开发的 Windows 系统,以及 1994 年的 Linux 系统,这三个系统影响了整个时代,一直到现在仍被广泛使用。
- 第四个时代是移动 OS 时代,随着移动互联网的发展,移动 OS 也变得越来越重要,在移动 OS 时代,最知名的是 Google 的 android 系统,以及乔布斯的 ios 系统。
你可以看到,从 PC 时代到移动 OS 时代,乔布斯在产品设计、用户体验方面给人类带来了前所未有领先时代的理念,在这里我们也向乔布斯致敬。
Bash 是什么
了解完操作系统简史,我们接下来学习什么是 Bash?我想你一定看过《黑客帝国》这部电影,在电影中有一个镜头是女主角崔妮蒂为了拯救尼奥入侵某个电站时,在交互界面显示了一行行的命令,其实这个交互界面就是 UNIX 系统界面,而这一行行指令便是 Linux Shell 指令,那么 Shell 是指什么呢?它其实是 UNIX 系统下的一个解析器,可以解析这些指令并完成相关操作。而在 Shell 出现之前,人们则需要通过编程的方式输入指令来操作系统,效率非常的底下,往往需要提前设计好大量的程序,才可以正常地操作系统,而有了 Shell 以后,用户操作系统就变得非常便捷。
在 1989 年,随着 Bash 的诞生,标志着一个真正属于 Shell 的时代的来临,Bash 提供了更优秀的语法支持,同时还是开源、开放的项目。从 1989 年起,更多的系统默认使用 Bash 作为主机交互界面。
Shell 的价值
那么对于我们测试工程师而言,Shell 的价值体现在哪里呢?
首先,人机交互经历了这样一个阶段的发展:
- 第一个阶段,我们需要通过 API 调用系统功能。
- 第二个阶段,通过 Shell 完成人机交互。
- 第三个阶段,以 Windows 和 Mac 系统为代表的 GUI 时代,人们可以通过图形界面进行人机交互。
- 第四个阶段,便是未来可能普及的 VR&AR 交互时代。
到目前为止,虽然我们日常以 GUI 人机交互为主,但在测试领域,我们更多地使用 Shell 脚本自动化应用于常见的 Linux、Mac、Android、iOS 等系统,因为 GUI 自动化没有提供很好的编程和调用接口,且存在不稳定的情况,GUI 自动化更多地用于测试 GUI 本身。
而 Shell 作为一款非常优秀的命令解析器,非常适合作为测试工作的黏合剂来处理一些文件处理、环境搭建、测试脚本调度等工作,我们接下来介绍 Shell 的种类。
Shell 的种类
在 Linux 系统中你可以通过 cat 指令来查看 etc/ 下的 shells,可以看到本地支持的 Shell 种类非常多,常见的有 bash、csh、ksh、sh,等等。其中,sh 是 Bash 的早期形态,因为 sh 不是 GNU 项目,所以后期又开发了 Bash。
Windows 系统中,是没有 Shell 环境的,Windows 下的 Shell 其实叫作 command,现在升级为 PowerShell,但是 Windows 指令与 Linux 系统并不兼容,因为它本身不是从 Linux/Unix 系统衍生出来的,所以导致 Windows 与目前的OS,如:Mac、Linux、Android、iOS 的命令不兼容。为了解决这个问题,在 Windows 中你可以使用 Git bash,以及 Cygwin 来模拟 Shell 环境。
如果你的系统是 Mac,那么恭喜你,Mac 系统自带了 Terminal,你还可以安装 iTerm2,它们都是标准的 Shell 环境。在 Linux 环境下,建议你使用 Bash,Bash 是目前行业内使用最广泛的 Shell 环境,在 Windows 环境下,建议你使用 Git bash,它几乎包含了 Linux 常用的全部指令。
如果你想更全面地掌握 Shell,不受限于自己电脑的操作系统,那么可以购买云服务器,目前国内主流的云服务器厂商有阿里云、腾讯云、华为云。国外云服务器厂商有 DigitalOccean 和 Lincode,拥有一台属于自己的云服务器也是一个 IT 工程师的成年礼。
在配置云服务器时,推荐使用 Linux 体系下的 CentOS 和 Ubuntu 系统,CentOS 是红帽发布的一个免费的、开源的系统,Ubuntu 也是非常知名的 UNIX 体系下的操作系统,整体配置时,CentOS 可以作为服务器,而 Ubuntu 作为个人工作机。
Hello world
最后,带你演示如何完成我们的第一行命令,我自己的演示电脑是 Mac 系统,并安装了 iTerm2,我们先输入一个简单的 echo 指令,echo指令用于回显,你输入什么系统就输出什么 ,我们输入一个 echo hello world,你可以看到输出显示了 hello world,你也可以使用 Terminal 终端,虽然与 iTerm2 界面不一样,但本质是一样的。输入 echo hello world 也输出了 hello world。除此以外,你还可以登录自己的云服务器,比如我输入账户和密码后,登录自己的云服务器,也可以支持 echo hello world。
好了,本课时的全部内容就讲完了,通过本课时的学习我们对操作系统简史有了一定的了解,接下来需要你配置好自己的环境,Windows 环境下推荐使用 Git bash,Mac 环境推荐使用 iTerm2 工具,而如果你想体验更丰富的内容也可以通过 ssh 登录云端服务器,进行相关指令的练习,下一课时我将讲解 Linux 的常用命令,记得按时来听课啊,下次分享见。
下面有我整理的一些软件测试资料有兴趣可以一起学习最后祝大家 前程似锦!!
一、测试基础
了解测试的基础技能,掌握主流缺陷管理工具的使用,熟练测试环境的操作与运维
二、Linux必备知识
Linux作为现在最流行的软件环境系统,一定需要掌握,目前的招聘要求都需要有Linux能力。
三、Shell脚本
掌握Shell脚本:包括Shell基础与运用、Shell逻辑控制、Shell逻辑函数
四、互联网程序原理
自动化必经之路:前端开发基础知识以及互联网网络必备知识四、互联网程序原理
五、mysql数据库
软件测试工程师必备MySQL数据库知识,不仅仅停留在基本的“增删改查”。
六、抓包工具
Fiddler,Wireshark,Sniffer,Tcpdump各种抓包工具适用于各种项目,总有一款适合你的
七、接口测试工具
接口测试神器,你绕不开的强大工具:Jmeter。小巧灵活:Postman
八、Web自动化测试Java&Python
了解自动化的目的,熟练掌握TestNG&unittest自动化框架,以及断言与日志处理
九、接口与移动端自动化
专业接口调用、测试解决方案。组建完整的web和接口自动化框架,Appium整体使用
十、敏捷测试&TestOps构建
揭开TestOps的神秘面纱,持续集成Jenkins框架烂熟于心
十一、性能测试&安全测试
软件测试的彼岸:性能测试和安全测试,选个方向努力爬坑吧!
最后:【可能给予你帮助】然后下面分享一些我的自学资料,希望可以帮到大家。
这份资料整体是围绕着【软件测试】来进行整理的,主体内容包含:python自动化测试专属视频、Python自动化详细资料、全套面试题等知识内容。对于软件测试的的朋友来说应该是最全面和完整的备战仓库了,这个仓库也陪伴我走过了很多坎坷的路,希望也能帮助到你。
关注我的微信公众号:【 程序员小濠】免费获取~
加群:175317069,群里有测试大牛分享经验。
最后感谢相遇,感谢缘分,感谢支持,感谢选择,感谢信任。也祝大家可以顺利找到心仪的工作,成功转行软件测试工程师!拿下高薪!
如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!
好文推荐:
6个月软件测试培训出来后的感悟--写给正在迷茫是否要转行或去学软件测试的学弟学妹们!
以上是关于软件测试进阶之路(测试路上你问我答)“测试从0到1职业规划“的主要内容,如果未能解决你的问题,请参考以下文章
Java编程从0到1--手把手教你实现“HelloWorld!”