软件测试是一个深不可测的行业,它的一大特点就是入门简单深入很难,说实话作为一个老测试人员,我也不敢十分肯定的说自己已经到后期了。
做测试的一定要精通一门编程语言,比如Python、JAVA、C++都可以,这是深入学习测试的基础。一些的入门测试人员不懂还可能可以糊弄过去,但是楼主说的测试后期不懂编程语言是肯定不行的。除了语言以外,就是要互联掌握一种性能测试的工具,比如JMeter、LoadRunner等等,这些都是测试人员的基础,我就不详细说了,不会的可以去网上找课程自学,很方便的。
测试的后期,我认为需要具备很好的测试思维。你需要从全盘去考虑分析问题,可能一个软件的某一小点有个漏洞,你需要做的是找出来他对全盘的影响,并给软件设计人员一个修补的建议,这也是我现在正在建立的测试思维。
我现在习惯在做测试工作的时候用MindMaster软件画一张思维导图,随着测试阶段的进行,来不断丰富导图,哪一个环节有问题也可以直接标注在导图上,这样在完成测试后可以回头看,根据一个BUG就可以一目了然的看出对软件的上下不同阶段有什么影响,这样就更能培养自己的测试思维。
除了自己画导图,为了锻炼测试思维,我经常去MindMaster的“导图社区”里看IT大神们做的测试导图,学习他们做测试的思路,真的能发现脑回路惊奇的大神,对自己的测试习惯也会有所帮助。
我还养成了总结的习惯,我把这些年所有做过的测试导图都整理了下来,放在手机的一个文件夹里,没有思路或者忘记什么的的时候就去翻翻,还很有成就感,对整体的工作和测试知识结构的建立都会有很大的帮助。
除了这些,我还有一点体会,就是现在的测试员光做功能测试是不行的,很多公司的招聘简章中都会要求软件测试员有自动化测试的经验,所以你可以尝试现在去充实一下性能测试或者自动化测试的知识。我现在自己在学Python3,还有接触一些接口自动化方面的测试。还有一点,测试http接口也很重要,我们需要掌握http协议,这里推荐一本书 http权威指南,你感兴趣可以先自己学习试试。
最后一点就是数据库的要求了,就算你掌握不了一种数据库,最起码得能熟练编写SQL语句。作为测试人员,必须能熟练编写SQL语句,尤其是多表连接查询,一定要掌握,跳槽时就会发现非常有用。!如果经常测试接口的话,那么我们可以学一下接口自动化测试框架。如果经常用Linux的话,可以学一下常用的命令,这都是根据你目前的工作可以选择的攻克不同的方向了。
最后的最后,学习是痛苦的,但是收获的喜悦是谁也不能给你的。所以,你要想有所突破,就一定要坚持学习,每天1-2小时,日积月累,你会超越很多人,加油!