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.anti-gravitydesign.com