2016-05-31 204 views
0

雖然我使用量角器與firefox(ubuntu)46所有我的測試都是綠色的,但是當我使用chrome時,其中一些失敗,因爲命令browser.executeScript('window.scrollTo(0,10000);');無法正常工作。我試圖用:量角器測試在Firefox上運行但在Chrome上失敗

var elm = element(by.sth) browser.executeScript("arguments[0].scrollIntoView();", elm.getWebElement());

scrollIntoView : function(){ arguments[0].scrollIntoView(); }

但他們沒有藏漢工作。

而我的第二個問題是,當我嘗試在Windows上啓動相同的測試時,它們全部失敗,因爲缺少定位符等。是因爲瀏覽器的結構差異或我的測試寫得不好。

回答

1

我解決了問題。 問題是承諾,我們必須把browser.executeScript('window.scroll(0,600);')作爲承諾,所以如果測試太快,就會失敗。 解決方案是使用:

browser.executeScript('window.scroll(0,600);').then(function(){ 
    return this; 
}); 

它還解決問題缺少定位器,becouse將有時間在Windows加載。

0

您確定需要使用scrollIntoView?我在我測試的應用程序中有滾動條,但量角器會在需要時自動滾動。

否則,有關失敗的更多詳細信息會有幫助。你會得到什麼錯誤信息?在什麼情況下稱爲你的功能?你的代碼的提取可能會有所幫助。

+0

不要緊,我討厭我的第一個問題 var sgpt = require('sg-protractor-tools');''' sgpt.scroll.scrollTo ''' 但仍然有問題在Windows上啓動此測試:) – Hikaryu

相關問題