原文:
explaining exploratory testing
我刚和一位同事谈过话(其实更像是争论)。这位同事对探索性测试持怀疑态度,并且是“要么提前计划,要么不做测试”思想的死忠。
我很高兴,他最后也认同探索性测试是有用的(当然他还不肯给予探索性测试更好的优先级,如果他这么做了,我就能拿着他的信用卡去酒吧了)。可能是因为我最终找到了一个途径去解释探索性测试的用途。以下是我说的内容:
“软件测试是很复杂的,有很多变化的可能性,从输入、代码执行路径到状态、数据存储和运行环境。实际上,当人们试图处理这些变化时,不管是通过在做测试前写测试计划,还是用一种交替进行计划和测试的探索性方法,这都是一件不可能的任务。不管你怎么做测试,实际情况抖太复杂了,不可能完全测试。
不过,探索性测试允许测试者在测试过程中进行计划,并把测试过程中收集到的信息来影响实际的测试方法。相比先计划后测试的方法,这是个主要优点。试想要在赛季开始前去预测Super Bowl和Premier League谁会最终获胜……在你看到2支队伍的临场发挥、应对竞争和关键队员的伤势情况之前你很难预测。赛季进行当中所揭露出来的信息是做到任何有点靠谱的预测的关键。软件测试也是如此。探索性测试能够利用过去和现在软件的表现和测试结果的信息,将其应用于”测试-计划-再测试“的逐步迭代过程中。
软件测试复杂。但有效的使用探索性测试有助于控制复杂度和作出高质量的软件。”
James Whittaker发表于2009-1-8 星期四
Alex翻译于2009-1-9 星期五
转载请注明作译者
我刚和一位同事谈过话(其实更像是争论)。这位同事对探索性测试持怀疑态度,并且是“要么提前计划,要么不做测试”思想的死忠。
我很高兴,他最后也认同探索性测试是有用的(当然他还不肯给予探索性测试更好的优先级,如果他这么做了,我就能拿着他的信用卡去酒吧了)。可能是因为我最终找到了一个途径去解释探索性测试的用途。以下是我说的内容:
“软件测试是很复杂的,有很多变化的可能性,从输入、代码执行路径到状态、数据存储和运行环境。实际上,当人们试图处理这些变化时,不管是通过在做测试前写测试计划,还是用一种交替进行计划和测试的探索性方法,这都是一件不可能的任务。不管你怎么做测试,实际情况抖太复杂了,不可能完全测试。
不过,探索性测试允许测试者在测试过程中进行计划,并把测试过程中收集到的信息来影响实际的测试方法。相比先计划后测试的方法,这是个主要优点。试想要在赛季开始前去预测Super Bowl和Premier League谁会最终获胜……在你看到2支队伍的临场发挥、应对竞争和关键队员的伤势情况之前你很难预测。赛季进行当中所揭露出来的信息是做到任何有点靠谱的预测的关键。软件测试也是如此。探索性测试能够利用过去和现在软件的表现和测试结果的信息,将其应用于”测试-计划-再测试“的逐步迭代过程中。
软件测试复杂。但有效的使用探索性测试有助于控制复杂度和作出高质量的软件。”
James Whittaker发表于2009-1-8 星期四
Alex翻译于2009-1-9 星期五
转载请注明作译者