2016-10-26 174 views
2

我正在通過Selenium(RobotFramework)對我的網站進行GUI自動化。我面臨的問題是:如何檢查JavaScript文件是否尚未加載或加載

當我的自動化腳本點擊某個元素(按鈕,鏈接等),它應該執行某些操作時,它什麼都不收。這是隨機發生的。當我們手動測試時,它始終都能正常工作。一個觀察是,在較慢的機器/環境下,這往往會發生更多。

我懷疑這是因爲一些相應的JS沒有加載,或者如果有任何這樣的事情稱爲「行動綁定」與每個元素,沒有發生。

一些問題 - 有沒有辦法找出所有的JS調用是否結束? - 如果發生動作綁定,它是否已綁定。

如果您有其他解決方案,請分享。

+0

對於非生產用途(調試)而言,可以使用https://developer.mozilla.org/en-US/docs/Web/API/Console/time – Bloc97

+0

謝謝@ Bloc97。我正在尋找一些不需要對JS代碼進行任何修改的東西。一些可以告訴我JS是否加載的東西。 –

回答

1

你知道什麼是最後加載在頁面上嗎?這應該很容易通過您選擇的瀏覽器中的開發者工具找到。

然後,您可以輕鬆使用Wait Until Keyword(有許多變體)等到最後一個項目出現,如您所期望的那樣,然後繼續進行測試。設置超時長度和間隔將有助於控制時間/性能的開銷。

Wait Until Element Is Visible id=finalElement 10 finalElement did not appear on the screen before timeout period 

http://robotframework.org/Selenium2Library/Selenium2Library.html - 請更多的例子,選擇的文件中的關鍵字