作为自动化测试工程师,刚入门的时候很容易陷入工具和框架的汪洋大海里。从静态代码扫描到单元测试,再到接口测试,UI测试,性能测试,安全测试,测试数据管理,测试环境管理,测试报告,测试结果分析,测试结果可视化,测试结果回归,测试结果持续集成,每一个细分领域的工具都有很多。
但是,工具之后呢?
相对于开发岗,测试类岗位的职业发展体系相对模糊,我观察过业界自动化测试人员的职业发展路线,有的公司有自动化测试架构师这个职位,有的公司设立了测试架构师,自动化架构算作测试架构师的职责之一,更多的公司根本就没有自动化测试的高级角色,各个产品线测试和开发混在一起玩。
那么,为什么要做自动化测试?对自动化测试的预期是什么?
答案是五花八门的,通常是节省手工开支,或者说是业界趋势,还有的是因为领导非常重视。在团队中,基本认识都出现了这么大的差别,后面的乱象就出来了,项目投入不稳定,可多可少跟着感觉走。自动化测试人员严重缺乏表达自己工作价值的话语权,被迫和开发人员一起内卷技术工具。
经历过这个阶段的人,甚至会怀疑自动化测试工作的尽头就是工具,随后一边卷工具,一边在忙碌中迷茫。
在我看来,无法清晰认知自动化测试工作的价值,测试工作就会举步维艰,自动化测试项目的最终交付价值是它产生的收益,也就是投入回报比ROI。一个成功的自动化测试项目必然获得了高ROI收益。
一个优秀的自动化测试工程师或者说是测试架构师,不仅仅是写代码让自动化测试跑起来,而是能够超脱于工具框架的层面,对测试需求与自动化项目ROI一起抽象建模,对自动化测试项目的最终ROI负责。