2016-12-13 4 views
0

Если я получаю сообщение об ошибке, таких как ...Могу ли я избавиться от UnhandledAlertError?

Modal dialog present: "The data could not be loaded." (Selenium::WebDriver 
::Error::UnhandledAlertError) 

Ошибка Extended

 And save the product. 
    # features/step_definitions/setup_sd.rb:35 
    Modal dialog present: "The data could not be loaded."(Selenium::WebDriver 
::Error::UnhandledAlertError) 
    [remote server] file:///C:/Users/blah/AppData/Local/Temp/webdriver-profi 
le20161219-65588-1gtvf51/extensions/[email protected]/components/command-p 
rocessor.js:12770:in `nsCommandProcessor.prototype.execute' 
    [remote server] file:///C:/Users/blah/AppData/Local/Temp/webdriver-profile20161219-65588-1gtvf51/extensions/[email protected]/components/driver-component.js:9576:in `Dispatcher.executeAs/<' 
    [remote server] file:///C:/Users/blah/AppData/Local/Temp/webdriver-profile20161219-65588-1gtvf51/extensions/[email protected]/components/driver-component.js:9723:in `Resource.prototype.handle' 
    [remote server] file:///C:/Users/blah/AppData/Local/Temp/webdriver-profile20161219-65588-1gtvf51/extensions/[email protected]/components/driver-component.js:9670:in `Dispatcher.prototype.dispatch' 
    [remote server] file:///C:/Users/blah/AppData/Local/Temp/webdriver-profile20161219-65588-1gtvf51/extensions/[email protected]/components/driver-component.js:12544:in `WebDriverServer/<.handle' 
    [remote server] file:///C:/Users/blah/AppData/Local/Temp/webdriver-profile20161219-65588-1gtvf51/extensions/[email protected]/components/httpd.js:2054:in `createHandlerFunc/<' 
    [remote server] file:///C:/Users/blah/AppData/Local/Temp/webdriver-profile20161219-65588-1gtvf51/extensions/[email protected]/components/httpd.js:2387:in `ServerHandler.prototype.handleResponse' 
    [remote server] file:///C:/Users/blah/AppData/Local/Temp/webdriver-profile20161219-65588-1gtvf51/extensions/[email protected]/components/httpd.js:1223:in `Connection.prototype.process' 
    [remote server] file:///C:/Users/blah/AppData/Local/Temp/webdriver-profile20161219-65588-1gtvf51/extensions/[email protected]/components/httpd.js:1677:in `RequestReader.prototype._handleResponse' 
    [remote server] file:///C:/Users/blah/AppData/Local/Temp/webdriver-profile20161219-65588-1gtvf51/extensions/[email protected]/components/httpd.js:1525:in `RequestReader.prototype._processBody' 
    [remote server] file:///C:/Users/blah/AppData/Local/Temp/webdriver-profile20161219-65588-1gtvf51/extensions/[email protected]/components/httpd.js:1393:in `RequestReader.prototype.onInputStreamReady' 
    [remote server] resource://gre/components/nsPrompter.js:394:in `openModalWindow' 
    [remote server] resource://gre/components/nsPrompter.js:491:in `ModalPrompter.prototype.openPrompt' 
    [remote server] resource://gre/components/nsPrompter.js:543:in `ModalPrompter.prototype.alert' 
    [remote server] file:///C:/Users/blah/AppData/Local/Temp/webdriver-profile20161219-65588-1gtvf51/extensions/[email protected]/components/prompt-service.js:4800:in `ObservingAlert.prototype.alert' 
    [remote server] http://10.20.13.39:17007/ScriptResource.axd?d=OwfU9dJwZwohiTGVGwSmnis5Sz77zh88m4xormA1BrE_-VNmQFnovvsDzNzH0qQCr6JjS2t6QbrSRBO86wKNXm1cO31z7GUAtLwQK7eaJqY5kZhHVmGxOxCJOEbh_mzvIE82nn2eWB69U7ZhzAQgCM43cXTVpLMGGjDVeilur_aPJt6ieH-q_9a1xO06Hhnb0&t=5df05159:1:in `_z19F' 
    ./features/step_definitions/setup_sd.rb:37:in `/^save the product\.$/' 
    features/product_setup/Setup05_template_var_textbox.feature:8:in `And save the product.' 

я могу спасти вне дома?

When(/^save the product\.$/) do 
    pf = blah_page.new 
    within_frame('blah') do 
    sleep(2) 
    begin 
     find(:css, pf.LOC_BTN_SAVE_BLAH).click 
    #rescue Selenium::WebDriver::Error::UnhandledAlertError #error still raises 
    rescue #error still raises 
     page.accept_alert 
     sleep(0.05) 
    end 
    end 
end 

я смог спасти из element_not_found, мне было интересно, если есть что-то предотвращение от спасения из этой ошибки типа, а также.

Любые идеи?

+0

Вы можете спасти эту ошибку. Но, возможно, ошибка возникает перед вашим блоком спасения. Does 'inside_frame ('blah') {}' поднять? –

+0

нет, '' 'find (: css, pf.LOC_BTN_SAVE_BLAH) .click''' создает окно предупреждения, которое вызывает ошибку – TangibleDream

ответ

1

Selenium :: WebDriver :: Ошибка :: UnhandledAlertError может быть определенно спасен, если вы поймаете его в конце блока, где он был выброшен. В зависимости от того, какой браузер вы используете, вы можете (некоторые браузеры автоматически очистить при поднятии ошибки), чтобы очистить оповещение, вызывая page.accept_alert, прежде чем продолжить, в противном случае действие следующей страницы будет повторно поднимать ту же ошибку.

+0

, к сожалению, необработанная ошибка оповещения, ушла, поэтому я буду держать часы и отмечать это ответом как можно быстрее. – TangibleDream

+0

К сожалению, ошибка вернулась, даже с исправлением, я добавил всю ошибку. – TangibleDream

+0

@TangibleDream, который является строкой 37 setup_sd.rb? –

Смежные вопросы