蛊毒传说
这个问题在自动化测试工具发展的最初阶段就有人问了。工具销售商已经给我们提供了一个观点,并且业界专家也给我们提供了各种不同的观点。最初,销售商提供基本的捕获/回放工具,这些工具已逐渐发展成了一些复杂的高度集成的测试套件。他们似乎想让从业者来决定基本的捕获/回放模型之外的一些东西。测试自动化方面的专家写过很多的文章和书籍,他们引用成功的阻及失败的自动化测试来做研究,最后在我们必须做什么上稍微达成一致意见,但是就我们如何来做并没有任何进展。在这一节,我们将给出我们关于如何做测试自动化的观点。我们认为业界就该做什么已经争论太久。我们一直拥有一个能使用的自动化框架工作原型,直到工具套件达到一个新高度以及直到它们更复杂。为了知道自动化程度需要达到什么程度才足够,我们必须了解这些领域:能自动化的测试过程以及应该自动化的测试过程。测试工具和测试过程是不相同的。工具是用于促进测试过程的。工具能被用于实现一个过程并执行测试过程的各种规范。在很多情况下,工具自带的内建程序可以被理解为过程。然而,它们往往也是不完整的,不能正确反映过程。最好的测试工具是你能够将它和你的测试需求达成一致。而且它们提供高度可自定义的工作流程和跟踪报告能力。我们应该考虑测试过程的哪些方面呢?一般包括以下几个方面:测试计划、测试设计、测试构建、测试执行、测试结果的捕获和分析、测试结果验证和测试报告。还有一些活动是和测试活动紧密相连的,它们包括问题(缺陷)跟踪和解决、配置管理以及测试度量。总之,测试过程的这些活动是密不可分的,就好像开发过程一样,由好的项目管理技术粘结在一起。所有领域的自动化水平应该达到这样一种程度。它能够根据时间和成本适应于你的组织。你实现的自动化程度越高,你的测试过程就越好越有效。这种观点总是对的,只要你的工具是适合的,并且被正确地实现。