QA in Agile World

Testing is the process of evaluating a product by learning about it through exploration and experimentation.
               —James Marcus Bach 

今天是我在敏捷项目里整两年的日子,从加入这个团队,体会其中不断变化的过程,积累了一些经验和教训,作为敏捷开发团队里的一名QA工程师,对我们经历的磨难有一些深刻的体会。

  • QA 虽然在一个敏捷队伍里,但是他们并没有感觉是敏捷的一部分。 QA只注重找到产品问题,但并没有足够的驱动力去尝试分析解决问题。

  • QA并没有得到足够的时间去完成他们的工作。

  • 需求并没有细节到可以直接编辑为自动化脚本。QA需要搜索更多的细节去转化为可执行的测试脚本。

  • 手动测试重复而繁琐,很难使QA保持兴趣和士气。

  • 和客户间的互动很艰难,很多潜在的问题都源自沟通不畅。

一个出色的QA,最关键的一点就在于分析问题,而目前在职场里关注更多的是自动化测试的能力。当然自动化测试是一个目标,也是一个高效的方法,它可以替代无聊,反复的手动测试,也可以让测试变得更有创新性,更有趣。这是一个连锁反应,以自动化为测试方向,可以让测试团队保持兴趣和主动性,从另一个“面”去检验产品质量,Think outside the box。及时了解行业中的一些新的工具,新的标准和技术对质量保证大有益处。

可对于QA在敏捷团队里的工作,要经历一个“过程”, 一个从繁琐的测试提升到自动化的过程,从简单的需求到不断更正的需求里提取关键信息的过程,从问题bug本身到分析bug对产品整体影响的过程。所以作为一个敏捷团队的QA工程师,应该在日常工作中对系统的要求,规范,问题等,做总结和积累。而作为开发人员将会越来越熟悉QA的工作,在质量控制上取得不同的观点。以测试来驱动开发来提高产品质量,是敏捷团队一致的目标。