自动化测试框架: 与FinalBuilder结合

发表于:2009-05-25来源:作者:点击数: 标签:自动化框架FinalBuilder结合
当 自动化测试 的脚本编辑器完成之后,根据使用者反馈,这样确实大大提高了工作效率。并且代码的管理确实变得有效和可控。现在此项目已经开始向另一个管理系统尝试应用。可以预计,会有一些新的功能加入。 不过,我们回过头来思考一个问题——自动化的问题。
自动化测试的脚本编辑器完成之后,根据使用者反馈,这样确实大大提高了工作效率。并且代码的管理确实变得有效和可控。现在此项目已经开始向另一个管理系统尝试应用。可以预计,会有一些新的功能加入。

  不过,我们回过头来思考一个问题——自动化的问题。这是我们最终的目的。虽然说自动化测试框架能够解决软件本身的执行问题,但是一次完整的测试,必然是要覆盖全过程的。很显然,我们的框架不能解决这个问题。

  我做过很多项目的每日版本构造,所以对FinalBuilder比较熟悉。我也同时意识到FinalBuilder可以弥补我们框架在这方面的缺陷。很自然的,我将这个软件引入到我们系统中来。

  这个软件在业界是非常有名的,很多人都很熟悉其用法。不过原来都是开发人员在做,测试人员不是很熟悉。所以我在最近对参与自动化测试的几位测试人员,做了简单的培训。考虑到这篇文章的部分读者也是测试人员,所以我在这里也简单的介绍一下FinalBuilder。如果你使用过FinalBuilder,可以跳过下面这段文字。

  FinalBuilder解决的是任务流的问题。就像我们以前的DOS系统的大部分程序一样,没有界面交互部分,一次输入,直接返回最终处理结果。这点和我们的自动化目标不谋而合。

  在FinalBuilder中,最本质的就是一次任务的执行。任务的执行包括两部分:执行环境+执行数据。执行环境往往包括Windows系统自带的一些程序,包括Copy,XCopy等等Shell命令。也有系统中已经安装的程序,如Delphi、VC、SVN等等。而执行数据,则是指我们的输入了!由于我们要达到在执行中不存在界面交互,那么就必然要求我们将所有需要交互的信息一次性地输入。于此同时,我们的环境程序,也必须同时支持此种模式(一般这种模式,称之为命令行模式)。

  对于使用FinalBuilder的人来讲,就有必要了解相关程序的命令行调用方式。这样有助于我们使用和编写任务。如果是我们自己研发一个程序,那么因为要使用到FinalBuilder中来,也有必要支持命令行模式。

  在FinalBuilder中,最主要的还是顺序流程,当然它也支持条件(if)、分支(case)、循环(loop)。最新的版本还有多线程协同。不过在使用初期,主要还是以顺序流程为主了。

  最关键最有用的就是Run DOS Command和Execute Programe两个Action(任务)了。有了这两个,你几乎可以完成任何事情。当然了FinalBuilder还提供了很多现成的控件,使得你可以通过配置(而不是命令行)来编写任务。这大大降低了使用难度。不过,不可避免的会有一些需求需要我们自己编写命令行,因此着两个Action必须掌握。

  FinalBuilder的自动执行,是使用Windows的计划任务来完成的。在其菜单中有生成计划任务的功能。顺便说一句,FinalBuilder也一样支持命令行模式,因此多个FinalBuilder之间可以互相调用。这对我们的自动化非常有利。

  好了,经过简单介绍之后,我们可以发现,使用FinalBuilder确实可以帮助我们解决问题。

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