`
kuwoleft
  • 浏览: 1101703 次
文章分类
社区版块
存档分类
最新评论

TestComplete的内建函数

 
阅读更多
TestComplete的内建函数
陈能技
2007-9-8
TestComplete通过BuiltIn对象访问所有内建的函数,这些函数基本上可以在TC支持的各种脚本语言中使用,提供各种常用的功能。本文介绍脚本编写中经常用到的函数。
文件和目录
文件和目录操作可以使用BuiltIn.CopyFiles和BuiltIn.RemoveFolders两个内建函数,CopyFiles把文件或文件目录拷贝到一个新的位置。RemoveFolders把某个目录删除。
数组
创建数组可以使用BuiltIn.CreateVariantArray、BuiltIn.CreateVariantArray2和BuiltIn.CreateVariantArray3,分别用于创建一维数组、二维数组和三维数组。需要注意的是这三个内建函数不支持在JScript, C++Script 和 C#Script中使用。
下面脚本创建一个三维数组,并为其赋值:
// Creates a three-dimensional array [0..1, 1..2, 2..3]
w := CreateVariantArray3(0, 1, 1, 2, 2, 3);
w[0,1,2] := 'Element 0,1,2';
w[0,2,2] := 'Element 0,2,2';
w[1,2,2] := 'Element 1,2,2';
w[1,2,3] := 'Element 1,2,3';
另外还可以使用BuiltIn.VarArrayHighBound和BuiltIn.VarArrayLowBound来获取某个数组的范围,使用BuiltIn.VarArrayRedim来调整数组的大小。需要注意的是这几个函数所操作的数组必须是用CreateVariantArray、CreateVariantArray2、CreateVariantArray3方法来创建的数组。
暂停
使用Delay函数来暂停脚本的执行一段时间。例如,下面脚本暂停脚本执行5000毫秒:
var ms, HelpStr: OleVariant;
...
ms := 5000;
HelpStr := 'Delaying test run for ' + BuiltIn.VarToStr(ms) + 'milliseconds.';
BuiltIn.Delay (ms, HelpStr);
COM服务路径
要想取得的某个COM服务的路径,可以使用BuiltIn.GetCOMServerPath函数。例如下面脚本返回Word的路径:
PathToWord := GetCOMServerPath('Word.Application');
CSV文件
使用BuiltIn.GetCSVItem和BuiltIn.GetCSVCount来获取CSV文件的内容。
对象属性的设置和读取
对于某个对象的属性的读取或设置,可以使用BuiltIn.GetValue和BuiltIn.SetValue函数。例如下面脚本获取某个窗体的Caption属性:
w := p.Window('MainForm', '', 1);
Log.Message(GetValue(w, 'Caption'));
而下面脚本则相反,设置某个窗体的Caption属性:
w := p.Window('MainForm', '', 1);
SetValue(w, 'Caption', 'New Caption');
还可以使用BuiltIn.IsSupported函数来判断某个对象是否包含指定的方法或属性,用BuiltIn.CallMethod来调用某个对象的指定方法。例如下面脚本首先判断记事本窗体对象是否支持Position方法,如果支持,则调用该方法,改变窗体的位置和大小:
p1 := Sys.Process('notepad');
w:=p1.Window('Notepad', '*');
if (BuiltIn.IsSupported(w, 'Position'))
then
begin
BuiltIn.CallMethod(w, 'Position', 100,100,100,100)
end;
重启并继续测试
有时候测试某些应用需要重新启动操作系统然后继续测试,例如测试某些安装程序,这时候可以使用BuiltIn.RebootAndContinue内建函数。该函数使用方法如下:
BuiltIn.RebootAndContinue(Param1,Param2,Param3,Param4)
该函数有4个参数,其中第一个函数用于指定重启之后要执行的脚本程序,第2、3、4个参数分别指定登录操作系统时的密码、帐号和域。
保存信息到文件或发送到邮件
在测试过程中,有时候需要把信息记录起来或通知大家,这时候可以使用函数BuiltIn.SaveStrToFile把字符保存到文件,可以指定是重写文件还是添加到文件。
可以使用BuiltIn.SendMAPIMail发送邮件。BuiltIn.SendMAPIMail通过微软的MAPI(Messaging Application Programming)接口发送邮件。
变量处理
变量处理函数包括VarClear,VarToBool, VarToFloat, VarToInteger, VarToString, VarToWString。
VarClear用于将变量设置为空。VarToBool, VarToFloat, VarToInteger, VarToString, VarToWString分别用于将变量转换成布尔类型、浮点型、整型、字符串型和宽字符串类型。例如下面代码将整型转换成字符串类型:
Int1:=1;
Log.Message(VarToString(Int1));
另外BuiltIn.VarType用于返回变量的类型。返回值可以是下表中的一个:
Constant
Value
varEmpty
0000h
varNull
0001h
varSmallint
0002h
varInteger
0003h
varSingle
0004h
varDouble
0005h
varCurrency
0006h
varDate
0007h
varOleStr
0008h
varDispatch
0009h
varError
000Ah (操作系统错误代码)
varBoolean
000Bh
varVariant
000Ch
varUnknown
000Dh (未知的 OLE 对象)
varByte
0011h
varArray
2000h
varByRef
4000h (对某种类型的值的引用,用低位字节表示,例如4007h 是对日期的引用)
分享到:
评论

相关推荐

    TestComplete自动化测试培训

    4. **TestComplete脚本高级技巧**:这部分涵盖异常处理机制、动态对象识别、内建对象和函数的使用,如NativeWebObject、Find系列方法、Dynamic HTML处理以及动态下拉菜单的处理等。 课程大纲还包括了动手实践环节,...

    bash shell内建命令

    这只是bash内建命令的冰山一角,其他命令如`dirs`、`disown`、`echo`、`enable`、`eval`、`exec`、`exit`、`export`、`fc`、`fg`、`getopts`、`hash`、`history`、`jobs`、`kill`、`let`、`local`、`logout`、`popd`...

    Delphi聊天狗小程序..rar

    单元测试框架如DUnit或TestComplete也能确保代码质量。 由于提供的压缩文件列表只包含"codefans.net",无法直接获取具体的代码细节。不过,这表明项目可能包含了源代码或者与CodeFans网站相关的资源。CodeFans是一...

    Delphi快速入门经典

    10. **单元测试**:Delphi支持单元测试,如TestComplete或DUnit,通过编写测试用例确保代码质量。 "Delphi快速入门经典"这本书将引导你逐步掌握这些知识,并通过实例教学来巩固理论。随着对Delphi的深入学习,你将...

    Delphi基础知识

    Delphi支持单元测试,通过DUnitX或TestComplete等工具,开发者可以对代码进行自动化测试,确保程序的质量。同时,其IDE内建的调试工具也非常强大,包括断点、变量查看、内存检查等功能,便于问题定位和修复。 8. *...

    黄昏狼制作编程技巧收集大全【Delphi篇】

    9. **单元测试与持续集成**:Delphi支持单元测试框架,如DUnit或TestComplete。学习编写和执行单元测试,以及如何设置持续集成环境,保证代码质量。 10. **国际化与本地化**:Delphi提供了丰富的工具支持软件的国际...

    Delphi培训课程

    - **单元测试**:通过TestComplete或DUnit等第三方库进行单元测试,确保代码质量。 **6. Delphi7详解** - Delphi7是Delphi的一个经典版本,虽然较旧,但因其稳定性和广泛的社区支持,仍被许多开发者使用。 - Delphi...

    oracle详解

    2、IGNORE、GRANTS和INDEXES,其中IGNORE参数将忽略表的存在,继续导入,这个对于需要调整表的存储参数时很有用,我们可以先根据实际情况用合理的存储参数建好表,然后直接导入数据。而GRANTS和INDEXES则表示是否...

    ZendFramework中文文档

    7.8.4. 内建的动作助手 7.8.4.1. 动作堆栈(助手) 7.8.4.2. AutoComplete 7.8.4.2.1. AutoCompletion with Dojo 7.8.4.2.2. AutoCompletion with Scriptaculous 7.8.4.3. ContextSwitch and AjaxContext 7.8....

Global site tag (gtag.js) - Google Analytics