小编Ami*_*rni的帖子

Rspec + Capybara:如何点击警告框

我已经通过了水豚的帖子+点击提示框,但似乎没有任何工作.以下是我的情景:

场景:当我单击更新按钮时出现一个警告框,其中包含"确定"和"取消"按钮.单击"确定",然后出现新表单.

  1. 我正在编写请求规范,即使用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
    
    Run Code Online (Sandbox Code Playgroud)

    但执行脚本会给我以下错误:

    失败/错误:page.evaluate_script('data-confirm = function(){return true;}')Selenium :: WebDriver :: Error :: UnexpectedJavascriptError:左侧无效赋值#./ spec/summary/user_upgrades_spec.rb :30

  2. 对于第二个例子即

    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 
    
    Run Code Online (Sandbox Code Playgroud)

我收到错误: …

rspec capybara

38
推荐指数
6
解决办法
3万
查看次数

标签 统计

capybara ×1

rspec ×1