Я прошел пост Капибара + нажмите на окно оповещения, но ничего не работает.Вот мой сценарий:
Сценарий : Когда я нажимаю кнопку обновления, появляется окно с предупреждением, содержащее кнопки «ОК» и «Отмена».Нажмите «ОК», после чего появится новая форма.
Я пишу спецификации запроса, т.е. использую rspec и capybara.Основная проблема состоит в том, чтобы нажать на окно предупреждения: Ниже приведен мой код:
context "update" do
before(:all) do
Capybara.current_driver = :selenium
end
after(:all) do
Capybara.use_default_driver
end
it "update user to trainer" do
click_button('Search')
sleep 3
page.evaluate_script('data-confirm = function() { return true; }')
page.click('OK')
click_button('Upgrade')
end
end
Но выполнение скрипта выдает мне следующую ошибку:
Ошибка / Ошибка: page.evaluate_script ('data-verify = function () {return true;} ') Selenium :: WebDriver :: Error :: UnexpectedJavascriptError: неверное назначение левой стороны # ./spec/requests/user_upgrades_spec.rb:30
Для второго примера, например
page.driver.browser.switch_to.alert.accept
Мой код:
context "update" do
before(:all) do
Capybara.current_driver = :selenium
end
after(:all) do
Capybara.use_default_driver
end
it "update user to trainer" do
click_button('Search')
sleep 3
click_button('Upgrade')
page.driver.browser.switch_to.alert.accept
end
end
Я получаю сообщение об ошибке:
Сбой / Ошибка: page.driver.browser.switch_to.alert.accept Selenium :: WebDriver :: Error :: UnhandledError:
Пожалуйста, дайте мне знать, что делать дальше