探索式测试:探索是为了学习
作者:网络转载 发布时间:[ 2011/1/31 14:13:31 ] 推荐标签:
探索式测试在本质上鼓励测试人员去自由地探索、创造和应用。
→ 《软件测试经验与教训》:“探索是带着使命在某个空间中有目的的漫游,但没有预先确定的路线。探索包括不断学习和实践”。
→ 在探索式测试中,测试者创造出一切有助于学习和实践的数据和工具。它们包括输入数据、结果检查脚本、数据分析报告、业务流程图表等。
→ 探索式测试者持续应用他所学到的知识。所谓“学而时习之,不亦说乎”,探索式测试将学习与应用作为相互支持的活动逐步展开,为测试者的知识提升提供了平滑的学习曲线。
→ 探索式测试是一项富有智力挑战的活动,充满了乐趣。如果你没有感到智力的快感,那么一定是哪里做错了。
此外,Andy也指出,为了鼓励自由的探索,我们需要“安全的”环境。
→ 测试者应该拥有独立且隔离的测试环境,他的测试活动所照成的破坏性后果不会影响团队的其他成员。
→ 当测试者破坏了他的测试环境,他可以快速地创建新测试环境。虚拟化技术可以提供多样的软、硬件和网络配置。版本管理系统、自动化构建和全自动安装有助于部署特定版本的软件。
→ 在测试中使用产品数据甚至产品系统是有很有帮助的。这时,应该将测试环境置于某种沙箱(sand-box)中,使测试导致的产品崩溃或数据损坏不会被沙箱以外的系统所感知。
→ 测试环境中内建丰富的开发、测试、调试、监控工具。它们是探索所必需的指南针、GPS、电筒、绳索、背包和帐篷。有经验的探险家不会空手上路。
后,值得强调的是,所谓“探索”和“学习”都是隐喻(metaphor)。它们是指南针,不是规程手册。Steve McConnell在《代码大全》中用了整整第2章来讨论“用隐喻来更充分地理解软件开发”,很值得一读。通过丰富的案例和分析,他很好地论述了隐喻的威力和范围:
与其说一个软件隐喻是一张路线图,还不如说它是一盏探照灯。它不会告诉你到哪里去寻找答案,而是告诉你该如何寻找答案。隐喻的作用更像启发性方法,而不是算法。
A software metaphor is more like a searchlight than a road map. It doesn‘t tell you where to find the answer; it tells you how to look for it. A metaphor serves more as a heuristic than it does as an algorithm.

sales@spasvo.com