天天看點

【軟體自動化測試-QTP實戰技能 14】== 自動化測試思想之QTP登入腳本

本文為小孩原創,轉載請注明出處:http://www.51testing.com/?117535

遇到過很多測試界的朋友,做了幾年手工測試現在想轉過來做自動化測試,

可是無從下手,比如一個登入的測試腳本,都搞得不知所措,老覺得自動化

跟手工的差別很大,其實非也,什麼是自動化,自動化測試隻不過是使用工具或腳本

代替我們對被測系統操作,然後通過工具的檢查點或是通過我們自己編寫的比較語句

來驗證系統輸出的實際結果和預期結果是不是一緻得。

接下來我們就來看這個腳本,希望大家從腳本中能得到一些體會,如果有疑問可以給我留言

'***********************************************************************************

'                       腳本說明:登入測試腳本

'                       編 寫 者:小孩

'                       編寫時間:2008/09/03

'                       修 改 者:

'                       修改時間:

'                       修改内容:

'***********************************************************************************

Option explicit

on error resume next

Dimoie

Setōie=CreateObject("InternetExplorer.Application")      '建立IE 對象

oie.Visible=true                                          'IE 顯示模式是顯示的(False)

oie.Navigate"http://www.poco.cn"                         '打開www.poco.cn網站

Browser("POCO首頁").Page("POCO首頁").Sync

Browser("POCO首頁").Page("POCO首頁").Image("selector_icon").Click

IfDataTable("Accounts_Type",dtGlobalsheet)="使用者名"Then'判斷輸入的資料是使用者名還是POCOID

    Browser("POCO首頁").Page("POCO首頁").Link("使用者名").Click

 else

    Browser("POCO首頁").Page("POCO首頁").Link("POCO号碼").Click

End If

Browser("POCO首頁").Page("POCO首頁").WebEdit("UserName").SetDataTable("username",dtGlobalsheet) '輸入使用者名或POCOID

Browser("POCO首頁").Page("POCO首頁").WebEdit("PassWord").SetSecure DataTable("password",dtGlobalsheet) '輸入密碼

Browser("POCO首頁").Page("POCO首頁").Image("login_0418").Click 26,13 '點選登陸按鈕

IfBrowser("POCO首頁").Dialog("msgbox").Exist (3)Then'用3秒判斷提示對話是否存在,也可以作為系統的一個标準,如果是異常登陸3秒種不出現提示對話框屬于的BUG的話這個也可以覆寫到了這點

   DataTable("Actual_Result",dtGlobalsheet)=Browser("POCO首頁").Dialog("msgbox").Static("info").GetROProperty("text") '獲得提示對話框裡面的内容

  IfDataTable("Expect_Result",dtGlobalsheet)=DataTable("Actual_Result",dtGlobalsheet)Then'判斷預期結果和實際結果是否一緻

      Reporter.ReportEvent micPass,"異常登記","預期結果"& DataTable("Expect_Result",dtGlobalsheet)_  

  &"實際結果"& DataTable("Actual_Result",dtGlobalsheet)                                                                                             '輸出異常登入pass報告

  else

  Reporter.ReportEvent micFail,"異常登陸","預期結果"& DataTable("Expect_Result",dtGlobalsheet)_    

   &"實際結果"& DataTable("Actual_Result",dtGlobalsheet)                                                                                             '輸出異常登入fail報告

 End If

 Browser("POCO首頁").Dialog("msgbox").WinButton("确定").Click                                                                       '點選提示對話框的确定按鈕

 oie.Quit                                                                                                                                                                                      '  退出IE

 Setōie=nothing                                                                                                                                                                     '釋放資源 

 ExitTestIteration                                                                                                                                                                     '跳出本次運作

End If

 DataTable("Actual_Result",dtGlobalsheet)=Browser("POCO首頁").Page("個人空間").Link("個人域名").GetROProperty("text")      '捕獲實際結果

 If  DataTable("Expect_Result",dtGlobalsheet)=DataTable("Actual_Result",dtGlobalsheet)Then' 判斷預期結果和實際結果是否一緻

  Reporter.ReportEvent micPass,"正常登陸","預期結果"& DataTable("Expect_Result",dtGlobalsheet)_ 

   &"實際結果"&DataTable("Actual_Result",dtGlobalsheet)                                                                                          '輸出正常登入pass報告

 else

  Reporter.ReportEvent micFail,"正常登陸","預期結果"& DataTable("Expect_Result",dtGlobalsheet)_   

  &"實際結果"& DataTable("Actual_Result",dtGlobalsheet)                                                                                            ' 輸出異常登入FAIL報告

 oie.Quit                                                                                                                                                                              '退出IE

    Setōie=nothing                                                                                                                                                           '釋放資源  

    ExitTestIteration                                                                                                                                                            '跳出本次運作

 End If

繼續閱讀