(5)关键字驱动的核心框架
有了前面几个函数的基础,就可以写出下面一个简单的关键字驱动的核心框架:
//.............................................................................
// 目的:关键字驱动的核心框架
// 输入参数:
// 返回结果:
// 注意事项:
// 作者:陈能技
// 日期:2008-6-3
//.............................................................................
Procedure Driver;
Var TestObject,I;
begin
// 1、读入关键字
ReadKeyWordFromExcel('D:\Code\MyTestSuite\Data\KeyWord.xls','Select * from [KeyWord$]');
// 2、遍历关键字,创建测试对象、执行测试操作
For I := 0 to VarArrayHighBound(KeyWord_TestObject,1) do
begin
// Log.Message(VarToStr(KeyWord_TestObject[I])+ ' | '
// + VarToStr(KeyWord_Operation[I])+' | '
// + VarToStr(KeyWord_Parameters[I]));
// 创建测试对象
TestObject := getObject(Sys.Process('flight4a'),VarToStr(KeyWord_TestObject[I]));
// 执行测试操作
DoOperation(TestObject,VarToStr(KeyWord_Operation[I]),VarToStr(KeyWord_Parameters[I]));
end;
end;
经试验,这种方法是可以实现类似QTP的关键字驱动测试框架,但是仅仅是一个非常基础的关键字驱动测试框架,如果想把这个框架应用在实际项目中的话,还需要进一步地修改和完善,还有很多工作要做,包括:
(1)关键字编辑器的编写。
目前采用直接在Excel文件中填写测试关键字的方法,存在效率和可用性问题,需要创建一个类似QTP的更加好用的关键字视图编辑器。
(2)添加更多的测试操作和方法。
目前作为试验,仅仅添加了 Keys 和 Click 的测试操作,还有很多控件的很多测试方法需要封装,例如List控件的ClickItem、SelectItem等,另外,对测试对象的属性赋值操作、属性检查操作(类似于QTP的CheckPoint)等都需要进一步地编写框架代码来处理。
(3)关键字代码与测试脚本之间的同步。
仅仅依赖Excel的关键字数据来实现整个项目的自动化测试未免过于理想化了,QTP提供了很好的代码生成机制,关键字视图的数据与专家视图的测试脚本之间可以随时同步、切换,因此这个关键字驱动测试框架还缺少一个代码生成器,如何建立Excel数据与测试脚本之间的映射关系是下一步的主要工作之一。
文章来源于领测软件测试网 https://www.ltesting.net/