Selenium :: WebDriver :: Error :: ElementNotVisibleError:元素不可交互

时间:2018-11-26 18:58:14

标签: capybara hidden-field google-chrome-headless

我需要在接受测试中选择一种颜色。隐藏的颜色字段使用jquery-minicolors@2.1.10呈现。我使用以下代码设置颜色:

find('#colour', visible: false).set('#fefacb')

我使用capybara (3.11.1)selenium-webdriver (3.141.0)ChromeDriver 2.44.609545 (c2f88692e98ce7233d2df7c724465ecacfe74df5)。我在无头模式下运行测试

但是我的测试失败:

element not interactable
  (Session info: chrome=70.0.3538.110)
  (Driver info: chromedriver=2.43.600229 (3fae4d0cda5334b4f533bede5a4787f7b832d052),platform=Mac OS X 10.14.1 x86_64) (Selenium::WebDriver::Error::ElementNotVisibleError)

我的代码有什么问题?我该如何解决?

1 个答案:

答案 0 :(得分:1)

就像用户将无法进行的操作一样,您也无法与非可见字段进行交互(设置,点击等)。相反,您需要与jquery-minicolors创建的页面上的可见元素进行交互-这些元素将完全取决于您如何配置jquery-minicolors,但是通过检查页面应该相对明显。