6.3. 测试是过程的一部分
最近我和一家公司一起工作,这里测试人员对软件的理解都来自于程序员。
程序员为新功能编写了代码,他们向测试人员解释这个功能,然后测试人员严重程序是否表现出所描述的行为。
一般情况下,程序都能通过测试,但轮到用户开始使用时,却总出现这样那样的问题。
问题当然是出自测试人员总是按照程序员的描述去测试。如果没有客户或用户的参与,我们不会真正从他们的角度来测试软件。
测试是开发过程中的一部分,而不是在编码完成后要做的事,这点对使用用户故事非常重要。
一般情况下,产品经理和测试人员共同负责列出详细的测试。产品经理带来驱动项目的公司目标的知识;测试人员则带来了怀疑的心态。
在一轮迭代开始阶段,他们应该一起列出尽可能多的测试。但这还不够,也不是他们每周碰一次就足够了。随着故事细节逐步展现,往往又能找出更多的测试。