软件测试,何去何从?想安逸不可能!软饭得硬吃...我整理的超全学习指南【值得每个测试一看】

1979 篇文章 51 订阅
1221 篇文章 21 订阅

在这里插入图片描述
在这里插入图片描述

金三银四是跳槽的高峰期,我也加入了跳槽的大军中,当准备写简历时,我陷入了彷徨,因为我没有任何亮点可以在简历中体现。应该有不少人跟我有同样的迷茫吧,所以我就来说说我对这一行的理解,希望能跟我有相似经历的童鞋们有一点点的指引作用,不要再陷入我这同样的深坑。

1、首先来说说我的经历。

大学期间校企合作培训.NET开发工程师,培训期间很幸运进入了一家物联网公司开始了我的码农生活,在码农的生活中比较累,自觉无法胜任软件开发职位,由于是女孩子,觉得软件测试更适本人一点,毕业后就开始找软件测试相关的工作,当时的愿望还是很美好的,先学习软件的基本理论知识再深入到白盒测试,找了一份软件测试的工作,就这样进入了软件测试行业

2、功能测试也干了两三年了,来说说我的理解吧。

都说软件测试轻松适合女孩子干,这只是一个片面的理解,它只是入门简单,软件开发和软件测试相比,软件开发人员只需要理解自己所负责的功能模块功能有木有实现,而软件测试则需要站在全局上来理解需求,要跟踪整个系统的bug周期、编写各种文档等等,所以软件测试比软件开发更难深入。但事实是总在夸大门槛低,忽视深入难,听得最多的评价就是“不就是点呀点嘛,我也会啊”,听得最多的抱怨就是“这么简单的问题都没测出来,你们是怎么测的”。心伤啊。当已经习以为常这些评价和抱怨时,我的内心是抗拒的,但这是刚入门的软件测试人员必备的能力(抗压),当习惯了且胜任了目前的软件测试工作时,就必须寻找新的发展方向和职业规划。

3、软件测试的发展

曾经很多人问过我,干这行最好的出路就是管理了,可是有多少公司会需要软件测试管理岗位呢,所以还是想想在技术方面有哪些发展吧。

干了测试一年就一直想往技术上发展,可是我是迷茫的,困惑的,看不清自己未来发展的方向,想找个平台指引,可是找不到这样的方向,平时功能测试项目紧,当你抽出点时间学到了点技术,可是工作中根本没有这个平台让你去实践这些技术。当你想跳槽去一个有技术的平台时,人家因为你没有项目实践而被pass掉。平时的软件测试工作连你接触代码的权限都没有,让我们怎样深入软件测试呢?

在这里插入图片描述

所以我想说那些招聘的企业及想招到高技术的软件测试工程师不要总是想引进测试技术,提升产品体验、追求更完美的测试流程,或许你们更应该关注下软件测试的发展。提高软件测试的价值,给软件测试人员提供学习技术的平台。

说到这里,那测试开发工程师都需要具备哪些技能呢? 这里总结了八大模块,建议小白和初级测开可以先掌握1234点。

1、软件测试基础,掌握测试流程、熟悉编写测试用例;

2、数据库基础。增删改查等SQL语句,掌握连接查询的操作技巧;

3、Linux模块。熟练掌握Linux常见命令,文件处理、日志类;

4、项目实战。GitHub开源项目,体验完整测试流程;

5、Python脚本代码。掌握基本语法函数、文件日志等处理;

6、接口测试模块。熟练掌握HTTP协议、抓包工具、postman、Jmeter等工具的使用。

7、性能测试。性能测试基本概念、服务端的指标、压测脚本;熟悉服务器的监控和性能数据分析;

8、自动化测试。接口自动化、APP自动化、web端测试(递进的过程);

初级:1234;中级:123456; 高级:12345678;

1 软件测试基础

万丈高楼平地起,测试先从理论起。

首先你需要知道什么是软件测试,简单来说就是利用一些手段来发现软件中的错误、不合理的地方。

如何发现呢,你需要先知道产品的需求,比如需求说首次打开抖音默认是推荐首页,但你打开却是「我」的页面,这时你就可以勇敢给开发提Bug了。

如何提呢,直接跑去告诉开发你的代码有问题,我不保证开发会不会打你哦。

这里涉及到Bug的管理和跟踪,常用的工具有禅道、JIRA等,功能基本包括项目类型、Bug所属项目、影响的版本、类型、指派人、优先级、严重程度等等。

一般提交完成bug后,需要跟踪bug的状态,如果验证通过了才可以关闭此bug。除此之外,你还需要掌握测试用例的设计和编写。

例如让你测试微信登陆页面,你需要测试哪些方面,如何测试,预期结果如何等等。

测试基础还有很多,诸如,黑盒白盒测试、软件的生命周期、测试报告编写等等。

2 数据库基础

数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作。

常用的数据库有MySQL、SqlServer、Oracle等,但不管是哪种数据库,你都一定要掌握数据库数据的增删改查操作以及连接和查询。

这一块就没啥好说的了,就是作为一个开发的基本修养。

3 Linux模块

需要掌握Linux常见的命令,尤其是文件处理、日志查看之类的,用到的频率很高。比如cd,mv,pwd,ping啊之类的。

因为在测试的过程中,需要对不同环境进行兼容性的测试。因此对不同的系统的熟悉也有一定的要求。

4 项目实战

项目经历是面试必备问题,对于应届生来说,可能缺乏项目经验,建议可以去GitHub寻找开源项目,跟着项目测试,体验完整测试流程。

从中可以强化理解系统测试项目的实时过程和技术细节。经过一番实操之后,面对面试官的提问才会更有信心和底气,遇到技术细节也不用担心啦。

初级测试满足前面提到的1-4步,需要进阶的参考1-6,可能大佬级别的就是1-8都精通了吧。

5 Python编程基础

掌握Python的基本语法规则、函数、数据类型等,可以独立进行常用的文件日志处理脚本的编写。

打好基础,为后面的自动化测试做好准备。

6 接口测试模块

首先需要对网络协议有一定了解,一般与网络相关的都离不开协议,接口测试也和HTTP协议等密切相关。

还需要会使用接口测试工具,读懂接口文档,会写接口用例,会去实现接口的脚本,比如说没有文档的时候我们还要会去抓包(Fiddler)。

除此之外,postman、Jmeter等接口测试工具的使用也很重要,毕竟工具用的好,涨薪少不了。

7 性能测试

性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。

例如,淘宝双十一有上亿人同时抢购,为避免到时候服务器承受不住如此巨大的用户量出现崩溃,就需要提前测试,那总不能找上亿个人来帮你测试吧,这里就需要用到性能测试工具了。

除次之外,常见的服务端指标要知道,例如平均负载、进程/线程交换率、CPU利用率等等。此外熟悉服务器的监控和性能数据分析也很有必要。

8 自动化测试

这需要有一定的编程基础以及测试基础,是个循序渐进的过程,需要提升的技术很多,例如接口自动化、APP自动化、web端测试逐步递进。

开发能力很大程度上也是为了能够自主编写出自动化测试的工具或者平台。

在大公司,其实测开很多都跟普通的开发没啥区别,只不过是开发测试相关的工具,为普通开发者以及普通的测试服务。

所以测试开发并不是一个简单而无脑的工作,反而更像是开发的子集,能够在一个更专的领域进行代码输出。

不管任何时候,努力提高自己的技术都没有错,尤其是大热的互联网行业,薪资水平还是很香的。

如果你是没有任何经验的小白,并且开发能力稍微弱一点,同时也喜欢找茬,软件测试开发工程师或许是比较合适的选择。

如果你想要去更好的平台,想跳槽互联网大厂,那就持续提升吧。

在这里插入图片描述

最后: 可以关注公众号:伤心的辣条 ! 进去有许多资料共享!资料都是面试时面试官必问的知识点,也包括了很多测试行业常见知识,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!推荐软件测试交流学习群:914172719 里面会分享一些资深架构师录制的视频录像


好文推荐

转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!

面试经:一线城市搬砖!又面软件测试岗,5000就知足了…

面试官:工作三年,还来面初级测试?恐怕你的软件测试工程师的头衔要加双引号…

什么样的人适合从事软件测试工作?

那个准点下班的人,比我先升职了…

测试岗反复跳槽,跳着跳着就跳没了…

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值