本节书摘来自华章出版社《软件测试价值提升之路》一书中的第1章,第1.7节,作者:杨晓慧编著,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1.7 优秀软件公司测试团队职责的启示
总结以上典型软件公司的测试团队职责见表1-1。
通过这些软件公司的测试团队职责,可以看出以下几点:
1)产品的特点和测试的职责有关:如果产品是自运营的,首先,用户使用问题可以第一时间反馈到研发团队;其次,研发团队可以通过灰度发布、沙箱等手段控制缺陷的影响范围,降低缺陷的风险;最后,修改缺陷以后,上线的过程不会太繁琐。缺陷生存的时间较短,可以容忍一部分缺陷在产品上线之后被客户发现。因此自运营的产品研发团队对功能缺陷并不十分敏感,也没有强调测试应该保障质量。这些测试团队通常具有较强的工程能力,能够帮助产品在保证基本功能正确的前提下,尽可能快速地发布产品,有些团队还在“更快获知客户的问题和体验”上进行创新,帮助提升运营维护的效率。
如果产品是客户运营的,研发团队和产品用户之间的联系比较弱,产品缺陷的反馈、确认和修改的链条比较长,产品发布后发现的缺陷,其修复成本会很高。因此研发团队强调测试应该保障质量,尽可能减少发布产品的缺陷,降低研发和维护的成本。
2)测试团队规模和测试的职责有关:以产品日常的功能测试为主要职责的团队,无论是否肩负了“保障质量”的职责,都会需要比较多的测试工程师。而只要做产品日常的测试,无论能覆盖的范围、能达到的深度是什么,都或多或少地承担了质量目标。
3)测试工具开发测试是测试团队绕不过去的工作:并非所有的测试团队都以产品日常的测试为主要职责,但几乎所有的测试团队都进行工具的开发,无论是为了解决测试手段,还是为了提升效率。在测试的工作中总是会发现:要不就是没有合适的工具;要不就是现有的工具还需要一些二次开发,总之,每个测试工程师都需要一定的工具开发能力。