“软件测试层次”思索,你又到了第几层?

发表于:2011-05-30来源:未知作者:娃娃点击数: 标签:
序:今天偶然发现一篇很好的说明自动化测试境界的东西,然后分析了一下,看看我们的自动化水平到达第几个境界了? Bill认为软件测试有5个层次。 1. Manual 2. Automated Manual 3. Automated 4. Frameworks 5. Automated Frameworks Manualis where you perfo

  序:今天偶然发现一篇很好的说明自动化测试境界的东西,然后分析了一下,看看我们的自动化水平到达第几个境界了?

  Bill认为软件测试有5个层次。

  1. Manual

  2. Automated Manual

  3. Automated

  4. Frameworks

  5. Automated Frameworks

  Manualis where you perform. the testing entirely manually.

  Don't underestimate this, some parts of your system will always be better tested manually.

  (思索:手工测试执行阶段,其实自动化测试只是一种质量保证,而发现BUG的利器往往还是“自由性”的手工测试)

  Automated Manualis where you automate what was previously done manually.

  This is characterised as the 'Record/Playback' style. of automated testing.

  It is NON-SCALABLE and is the dead end where most automation projects end up failing.

  (思索:手工半自动化阶段,大部分公司都是这种模式,只是简单的依靠录制-回放就想达到自动化测试的规模,但是往往心急吃不了热豆腐,其实想想,要是真的这么简单的话,自动化测试早就成为一种现今必不可少的流程了,还会是如今挣扎的水平?)

  Automatedis when you take the process seriously and apply software development techniques.

  A major aspect of this is refactoring the code base so that duplicate code is eliminated. When an object in the AUT changes 'beyond recognition', you should only have to change one line of code in the entire code base.

  (思索:自动化测试阶段,有了一些脚本化的用例库,有点维护性,但是需要专门的人员进行开发用例,后期开发成本高,拓展性弱,有一部分重视自动化测试的已经达到这种水平了)

  Frameworksare where you open up your automation process to being driven by non-experts.

  This is the only route to a scalable process with a good ROI.

  (思索:自动化测试框架阶段,很少以部门公司达到这种水平,一般都是大型公司,或者一些中小型公司借助商业型的自动化测试工具和一些有自动化测试水平的员工搭成的简单框架;这个阶段需要达到的水平就是一个不懂自动化测试或者不懂脚本的测试人员能够自己组织开发自动化测试用例,且维护性很好)

  Automated Frameworksare when you realise that you can write scripts to AUTOMATICALLY GENERATE other scripts.

  You can automatically detect when an object in the AUT has changed and adapt the code

  (思索:测试自动化框架;与以上不同的是,这是一个测试自动化过程,而上面的为自动化测试框架阶段;这是已经从流程上实现了自动化,自动生成脚本、自动监测变化信息,自动生成测试结果等;这种阶段才是自动化测试的最高境界—“测试自动化”,也许在敏捷测试阶段的持续集成中有所模糊的影子)

  总述:总的来说,自动化测试发展历程:手工测试—>半自动化测试—>自动化测试—>自动化测试框架—>测试自动化。最后那个阶段完全是从整体上实现了自动化,是我们大家都要追求的最高境界,可是这个境界离我们还是很远,而且需要花费大量的经历去做是完全不值得的,我一直觉得,满足需求的自动化测试才是最好的自动化测试,而一味的为了追求自动化测试而自动化测试则会有点得不偿失了,因此,对于我们大都数来说,追求第四个阶段已经足够,我们没有必要去做追求第5种境界的“科学家”和“烈士”,我们追求的“效率”和“实现价值”。但是,那第5个境界,我们可以改一改,我们不去实现测试自动化,但是要实现流程集成化,即将我们的自动化测试与我们自身的测试流程很好的结合起来,那么也可以给我们带来巨大的效率,所以,说白了,自动化测试不是说要达到多么高的技术水平,而是一个定位问题了。

  说这么多的最终目的,还是请我们一起想想,你们公司到了什么阶段,最终又在追求哪个境界,或者,你自己又到了哪个阶段,你自己又在追求哪个境界呢? 

原文转自:http://www.ltesting.net