2014-11-24 65 views
0

我嘗試使用watir製作一個測試腳本來進行自動化測試。我有一個問題,當我點擊鏈接顯示模式對話框,但它不能找到模式對話框中的元素(例如:Dropdownlist元素)。在watir中處理模式對話框

我已經試過這樣,但它不工作。

browser.window(:標題=> 「惱人的彈出」)用做 browser.button。(:ID => 「關閉」)點擊 結束

,我可以使用什麼方法,使其當活動頁面是modaldialog時,可以找到我們嘗試測試輸入的字段嗎?請幫我..

許多謝謝..

回答

0

你可以試試這個,如果你認爲標題拋出其關閉,以將瀏覽器設置:否則

browser.window(:index => 1).use

,我建議以下:

modal = browser.modal_dialog 
modal.button(:id => 'close').click 

modal.link(:text => 'close').click

將模態設置爲modal後,您可以調用通常在瀏覽器上調用的任何方法。

+0

我已經試過你的回答,但是我得到了這個錯誤信息,說C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-4.0.1/lib/watir-classic/elemen t.rb:328:在'assert_exists':無法找到元素,使用{:TAG_NAME => [ 「SELEC 噸」],:ID => 「ctl00_m_g_8f040f77_8a11_4762_a6b0_500e731fb4ed_ff19_1_ctl00_DropDownC hoice」}(的Watir ::異常:: UnknownObjectException): ID => 「ctl00_m_g_8f040f77_8a11_4762_a6b0_500e731fb4ed_ff19_1_ctl00_DropDownC hoice」}(的Watir ::例外:: UnknownObjectException) – user2109 2014-11-24 06:02:03

+1

可能有幾件事情,會導致錯誤。該錯誤源於'watir'無法找到您的元素。這可能是因爲你需要在元素上調用'.when_present'來允許它加載,或者元素在一個框架內,你需要指定它。你可能會指定錯誤的元素類型('button' vs'link')。可能有任何數量的問題,但沒有看到代碼很難確定你的確切情況。 – JMac 2014-11-24 17:44:37