扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:韩小明 来源:CSDN 2007年10月10日
关键字: 韩小明 自动化测试 框架 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确实可以帮助我们解决问题。
那么,我们需要解决哪些问题呢?下面是我列出的一份清单,这份清单是按照顺序列出的:
上面的这些事情,所有需要完成的功能,其实都已经做好了。因为我们通过手工确实可以走到最后。但是要做到覆盖全过程的自动化的想法,还需要各个工具软件互相协调。
首先是软件的安装和卸载,这需要程序保障命令行模式的安静运行。(安装和卸载都是需要人工交互的),刚好我们公司的安装程序支持这个模式,省去了很多麻烦。不过,很多安装软件也都是支持的,只要多查查资料就可以了。
复制文件就简单多了,FinalBuilder和Windows都已经提供了很多命令。
关于自动化测试的执行,就对我们的自动化脚本编辑器提出了需求。针对这个需求,我好几天加班加点才加进去。主要是程序的协同性问题。必须等到目标软件的主窗体完全启动完毕。另外,需要对中途的意外退出,作出严格的防范,保障自动化测试能够有始有终。这里面增加了一个超时的概念,可以保障最后程序的退出。
分析日志更是重要,事实上,没有日志的自动化测试没有人愿意去做。目前还是先根据一些简单的需求,做了一些统计,相信以后还会增加的功能是版本日志对比。这样可以看到系统的稳定性变化趋势。
OK,在使用FinalBuilder之后,我们已经初步将一个完整的自动化测试过程构建起来。不过正如博客上的一位读者所说的,下面要重点关注脚本的方案设计了。
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1779887
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者