本达人课到目前为止,谈得都是如何实施自动化的测试。但是,无论整个流程多自动化,都需要“人”这个角色来加以设计、开发、管理和维护。这离不开测试人员的全力投入。长期以来,测试人员在开发企业中常常面临着定位不清晰、职业发展路径未明,乃至被管理层认为可有可无的窘境。这一方面,固然与企业对于质量的重视不足有关,需要企业管理层、开发团队负责人员加以改进,另一方面,也的确需要测试人员从自身角度分析原因:怎么样不断提升自己的能力,适应新技术、新架构、新趋势。
在这最后一节课,我想谈谈 QA(质量测试人员)这个角色在微服务架构下的演变方向。
DevOps的出现
早期的软件开发只有软件工程师一人完成,为了提高效率逐渐实行分工模式:开发(Dev)、测试(Test)、运维(Ops)。不同角色担任不同的任务。分工越来越细之后带来了问题也越来越突出,那就是各角色之间的沟通成本越来越高。而全栈工程师、DevOps 和 TestOps 等职位和概念的提出,本质就是把不同的工作集中在一个人身上,或者让一个人涉及到更多方面的工作,从而来降低这种沟通成本。
下面这张图显示的是开发、测试和运维之间的关系。