从普通走向优秀
一名普通自动化/单元测试工程师与一名优秀的自动化/单元测试工程师之间,最大的差别是什么?
- 是对软件测试理解的深刻程度。
- 是对测试理论掌握的熟悉程度。
- 是对测试技术运用的熟练程度
一些测试员仗着编程能力较好,看不起基本的测试技术(如边界值、等价类,还有诸如决策表、因果图、状态机等)。
事实上,优秀的测试工程师首先需要具备的就是扎实的测试技术功底。只有掌握了最最基本的测试技术后,无论做什么测试(黑盒、白盒、自动化、性能或是单元测试),都能游刃有余,设计的测试用例也才能真正深入进入,进而发现隐藏的bug。
如果不打好这个基本功,哪怕编程能力再好,设计的用例也漏洞百出,发现不了问题的根源。以“不同格式视频文件测试”为例,如果要确保测试到位,就一定要设计各种不同格式的播放文件(类型、编码格式、分辨率、比特率、帧率、音频格式、声道、频率等等),所以有此测试。
大家不难看出,设计这个用例的单元测试工程师是多么的不厌其烦,一点点地从细节上去把控。而很多同学却认为这些琐碎的小事情不值得花时间,或认为没有技术含量而只是草草写上几个,相比Google的大牛们,难道不汗颜吗?
发展方向
- 专注于研究某种测试,比如网页,app,安全,性能,接口,自动化。等到一定阶段,对研究的领域有了自己的见解,就可以称为这一领域的专家。
- 各种领域都有所狩猎,知识面广,某个东西出来立马就会有方案。这种可以去做测试leader。
- 对测试规范有一定的掌握,写文档整理表格能力非凡,管理层非你莫属。
- 对整个项目有宏观和微观的把握,能从各个角度去寻求方案,对各个测试技术也有一定的把握,走向技术主管的路线。
- 测试一两年后,对技术感兴趣而且有一定基础,就可以转型做开发啦。因为对测试有一定了解,所以开发时会更多的考虑一些场景。