QTP 同步的五種方案

2021-05-10 16:25:11 字數 807 閱讀 2028

自動化測試中,同步等待也是乙個很重要的問題,特別是ajax的出現,使這個問題更為複雜.做過自動化測試的都清楚,要對測試物件操作的前提是物件已存在甚至是可見,否則就可能出錯,甚至指令碼執行不下去. 這也是自動測試執行中較為常見的指令碼錯誤之一.現在總結下qtp的幾個同步等待方法.

1>物件的預設等待時間. 執行qtp指令碼過程中要對某個物件進行操作時, qtp會根據物件庫中物件的屬性或是物件描述的屬性對進行搜尋此物件,如果在一段時間內仍未找到相應物件則認為些物件不存在.而這個時間則是物件的預設等待時間.可以在file-->settings-->run-->object synchronization中設定,預設時間是20秒.

3>物件的waitproperty ("property","expectvaue",timeout)方法.幾乎每個物件都有這個方法,此方法是指在timeout時間內等待此物件的某個屬性值為期望值.如果在timeout內屬性期望值出現則立刻執行下一步否則等待timeout. 注意此也是qtp設定同步點的方法:在錄製狀態下,選擇insert-->synchronization point,選擇要同步的物件,設定要同步的屬性則可設定乙個同步點了.

4>synce方法.這個是web中專用的,主要用於頁面載入時.使用範圍較小但簡單實用.

5>wait方法,也被形象戲稱為"死等**".即是執行到這一步時暫停執行指令碼,然後等待一段時間,時間滿後繼續執行下一步.wati(timeout),此方法的唯一引數當然是等待時間了,它由秒跟毫秒組成.

大概來說qtp有5種同步等待方法,實際中運用哪個就要看具體情況了,我的建議也是按上面的順序...

QTP三種同步方式

當乙個應用在執行了乙個步驟之後,需要一定時間的響應,而此時指令碼是按照指令碼 的執行策略,並沒有準備等待系統的響應,而是直接執行下一行指令碼,那麼此時qtp可能由於系統響應過慢而丟擲錯誤。而同步點的作用就是插入一段等待時間後再執行下一步操作。在qtp中一共有三種同步的方式 1 sync用法 brow...

iOS多執行緒互斥同步五種解決方案

在ios中有幾種方法來解決多執行緒訪問同乙個記憶體位址的互斥同步問題 方法一,synchronized id anobject 最簡單的方法 會自動對引數物件加鎖,保證臨界區內的 執行緒安全 cpp view plain copy print?synchronized self 方法二,nslock...

多執行緒同步的五種方法

為什麼要執行緒同步?當多個執行緒同時訪問乙個變數或物件時,如果這些執行緒既有讀又有寫操作時,就會導致變數值或物件的狀態出現混亂。1 synchronized關鍵字修飾的方法 2 同步 塊 既有synchronized修飾的語句塊,語句塊會自動加上鎖 3 使用特殊變數volatile實現執行緒同步 v...