您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 > Selenium
Selenium執(zhí)行測試腳本穩(wěn)定性的經(jīng)驗
作者:網(wǎng)絡轉(zhuǎn)載 發(fā)布時間:[ 2012/12/24 9:48:19 ] 推薦標簽:

  關于工作中使用Selenium執(zhí)行測試腳本穩(wěn)定性的一些經(jīng)驗分享

  公司的自動化WEB測試框架IATA已上線運行了一段時間,期間發(fā)現(xiàn)一些腳本穩(wěn)定性的問題,與大家分享一下。

  CASE執(zhí)行游覽器:ie firefox chrome

  穩(wěn)定性問題

  一、在持續(xù)執(zhí)行WEB自動化的過程中,如需持續(xù)執(zhí)行腳本,比如持續(xù)跑腳本24小時,48小時,甚至一周時間。測試CASE會間歇性發(fā)生持續(xù)加載頁面無響應的情況。此現(xiàn)象發(fā)生后,測試CASE會因為持續(xù)加載頁面這個動作而無響應。后續(xù)CASE也不會執(zhí)行直到當前人為手工解決當前的測試進程。

  現(xiàn)象:頁面持續(xù)加載 無反應,測試CASE 中斷無法繼續(xù)執(zhí)行。

  解決方案:

  1)如上圖

  建議使用線程的方式來監(jiān)控測試進程的WEB加載執(zhí)行狀態(tài)。若超時后則從線程中FAIL當前CASE,使腳本可以持續(xù)運行。

  方法

  在頁面會發(fā)生跳轉(zhuǎn)的時候 啟一個 Thread來監(jiān)控進程的狀況,在Thread的run方法定義一個 計時器,如果計時器超時,則可以刷新頁面,計時器清零,若此時刷新頁面后,計時器再次超時,則線程會關閉當前進程的游覽器,F(xiàn)AIL掉當前的CASE,TestNG會自動啟動下一個測試CASE。并且在全部測試CASE執(zhí)行完畢后,TestNG會記載執(zhí)行失敗的CASE,然后從新執(zhí)行CASE。

  部分Thread 代碼

  Refresh  code:

  干掉線程的 code

  這里是關掉chrome的進程 來達到關閉游覽器的目的。

  通過上述步驟則可以控制游覽器加載的過程從而解決CASE中加載頁面無響應導致的CASE暫停問題。

上一頁12下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd