TestComplete测试计算器实例

发表于:2008-05-05来源:作者:点击数: 标签:计算器TestComplete实例
TestComplete测试计算器实例 qiguojie原创文章 最近换了工作,做管理不做技术了,因此钻研东西的时间很少;最近是因为写 自动化测试 规划,要选择一种 测试工具 ,特意学习了TestComplete,不过正在学习中,希望可以和大家分享一些学习的经验,希望和大家多

TestComplete测试计算器实例

qiguojie原创文章

最近换了工作,做管理不做技术了,因此钻研东西的时间很少;最近是因为写自动化测试规划,要选择一种测试工具,特意学习了TestComplete,不过正在学习中,希望可以和大家分享一些学习的经验,希望和大家多多交流,共同进步。

我是在网上找的TestComplete 5,并且破解后使用的(因为Demo版存在若干限制),学习可以,真正要给公司用时我还是希望公司可以出钱买个正版(根据了解,不是很贵好像),也希望大家支持正版软件。

TestComplete的简单使用步骤:
1、打开TestComplete
2、选择菜单 File - New - New Project创建一个新项目
3、选择General - Purpose Test Project,然后选择Language为Delphiscrīpt后OK
4、Select Project Items中默认,然后Finish即可
5、在Project Workspace的Project Explorer中点击脚本对应的Unit1单元文件
6、复制下面的代码到单元文件
7、保存,然后F9执行


//========================
//Author:qiguojie
//Date:2008-04-30
//scrīpt Type: Delphiscrīpt
//========================
procedure Test1;         //执行测试
    var w1 : OleVariant;
    var num : OleVariant;
    var w2 : OleVariant;
    var w3 : OleVariant;
    i : Integer;
begin
//对象定义区
    w1 := Sys.Process('calc').Window('SciCalc', '计算器');   
    w2 := w1.Window('Button', '**');   
    w3 := w1.Window('Button', '=');   
//循环执行10次
    for i := 0 to 9 do
    begin
        num := w1.Window('Button',i);
        num.ClickButton;
        w2.ClickButton;
        num.ClickButton;
        w3.ClickButton;    
    end;
end;

procedure Test2;
    var p1 : OleVariant;
begin
    if not Sys.Process('calc').Exists then
    begin
        p1 := Sys.Process('Explorer');
        p1.Window('CabinetWClass', 'DDT&NameMapping').Window('SHELLDLL_DefView').Window('DUIViewWndClassName').Window('DirectUIHWND').Window('CtrlNotifySink').Window

('SysListView32', 'FolderView').Keys('[Win]r');
        Sys.Keys('[Hold][Win]r[Release]');
        p1.Window('#32770', '运行').Window('ComboBox').Window('Edit').Keys('calc');
        p1.Window('#32770', '运行').Window('Button', '确定', 2).ClickButton;    
    end
    else begin
        log.warning('The calc is running!!');
    end;
end;

procedure Main;
begin
    try
        Test2;
        Test1;
    except
        Log.Error('Exception', ExceptionMessage);
    end;
end;

//=====================

 

脚本说明:

这个是一个使用计算器自动计算 0-9每个数自乘的脚本。
脚本语言我选择的是Delphi,因为TC的C++脚本和LR的C差太多,我感觉读起来非常难懂。


在使用TC中我发现了2个问题:
1、TC的脚本中对中文的处理不是很好,容易出现问题(例如添加中文的注释或者打印Log时输出中文的信息,有时会报错)
2、Main过程如果放在Test1,Test2上面,就无法找到Test1和Test2,我记得是可以声明一下,但是好久没用Delphi不会弄了

通过这个实例,我简单的掌握了TC脚本的一些基本概念,目前还没有找到添加检查点以及其他的一些功能,等以后学习的多了,再总结一下吧。

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