【问题标题】:I can not automate the click of the button我无法自动单击按钮
【发布时间】:2017-09-02 11:21:40
【问题描述】:

正在使用 Chrome:60.0.3112.101 64 位、ChromeDriver 2.29.461571、selenium-webdriver:3.4 和 cucumber 2.4。我正在执行测试自动化,我在 ubuntu 16.04 中使用 Ruby 语言和 webdriver 和 cucumber 框架。我无法自动单击按钮。为什么会这样?还是我忘记了什么?我正在使用以下代码。任何帮助表示赞赏。

Quando(/^clicar o botão "([^"]*)"$/) do |botaoSalvar| @navegador.find_element(:id, botaoSalvar).click 结束

  E clicar o botão "SAVE"                                 
# features/step_definitions/criarConta.rb:92
      unknown error: Element <input title="Save" accesskey="a" class="button primary" 
onclick="var _form = document.getElementById('EditView'); 
    _form.action.value='Save'; if(check_form('EditView'))
SUGAR.ajaxUI.submitForm(_form);return false;" type="submit" name="button" 
value="Save" id="SAVE"> is not clickable at point (287, 20). 

其他元素会收到点击:

<a href="#" id="grouptab_1" class="dropdown-toggle grouptab" data-toggle="dropdown">...</a>
                        (Session info: chrome=60.0.3112.101)
                (Driver info: chromedriver=2.29.461571 

(8a88bbe0775e2a23afda0ceaf2ef7ee74e822cc5),platform=Linux 4.10.0-33-generic x86_64) 
(Selenium::WebDriver::Error::UnknownError)
          ./features/step_definitions/criarConta.rb:93:in `/^clicar o botão "([^"]*)"$/'
          features/criarConta.feature:30:in `E clicar o botão "SAVE"'
        Então a conta será cadastrada corretamente              
 # features/criarConta.feature:31

失败的场景: cucumber features/criarConta.feature:7 # Cenário: Cadastrando uma conta

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-4 selenium-webdriver cucumber


    【解决方案1】:

    我有时会遇到这样的场景,水豚驱动程序会以不同于实际浏览器的方式呈现页面,从而导致元素被其他人遮挡或呈现在视口之外。

    在这些情况下,对它们调用.click 会导致类似这样的错误。你试过用.trigger("click")替换.click吗?这通常对我有用。

    【讨论】:

      【解决方案2】:

      我没有成功

      Quando(/^clicar o botão "([^"])"$/) 做 |botaoSave| @navegador.find_elements(:xpath, "//[@id='SAVE']").trigger("click") 结束

      E clicar o botão "SAVE"                                  # features/step_definitions/criarConta.rb:92
            undefined method `trigger' for #<Array:0x00000002bb1730> (NoMethodError)
            ./features/step_definitions/criarConta.rb:93:in `/^clicar o botão "([^"]*)"$/'
            features/criarConta.feature:30:in `E clicar o botão "SAVE"'
          Então a conta será cadastrada corretamente               # features/criarConta.feature:31
      
      Failing Scenarios:
      cucumber features/criarConta.feature:7 # Cenário: Cadastrando uma conta
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-04-07
        • 1970-01-01
        • 2013-06-13
        • 1970-01-01
        • 2018-05-13
        • 1970-01-01
        • 2023-04-11
        相关资源
        最近更新 更多