2011-09-08 92 views
9

有沒有一種優雅的方式來做到這一點?目前,我只是使用自定義步驟 「等待10秒鐘」以絕對確定,iframe有足夠的時間準備好。我不希望此功能在我的動力不足的CI虛擬機上因爲小型網絡問題或CPU峯值而失敗。但這意味着功能套件浪費了大量時間,正如您所知,如果測試套件需要很長時間,則通常不會在CI服務器之外運行它。告訴水豚等到iframe已經加載(準備就緒)

+1

你在使用什麼驅動程序? –

+0

selenium-webdriver with chrome –

回答

15

如果你知道發生了什麼事情在你的iframe中,你可以這樣做:

within_frame 'iframe_selector' do 
    wait_until(10) do 
     page.should have_content("Content you're waiting for") 
    end 
end 

wait_until方法將繼續等待10秒,直到條件page.should返回true。

+0

thnx,那應該是足夠的 –

+10

請注意,隨着最新的水豚have_content自動等待,所以你將不需要wait_until –

+0

謝謝你的回答.. :)它的作品很棒.. – Selvamani