【发布时间】:2016-07-15 23:47:43
【问题描述】:
在我的视图中,只有当它包含 div 时,可点击图标才可见(使用 Knockout JS,SCSS)。像这样的:
HTML
<div id="button_div">
<i id="icon" data-bind="click: dosomething"></i>
</div>
SCSS
i {
display: none;
}
#button_div:hover {
i {
display: block;
}
}
页面上一切正常,但我似乎无法弄清楚如何单击 Capybara 中的元素。我尝试将 :visible 符号添加到方法中,但没有运气:
find('#icon', visible: false).click
这给了我一个“Selenium::WebDriver::Error::ElementNotVisibleError”错误。
使用:
Capybara.ignore_hidden_elements = false
给了我完全相同的错误
我也尝试过使用 Selenium Action,例如:
button_div_element = find('#button_div').native
button_element = find('#button', visible: false).native
page.driver.browser.action.move_to(button_div_element).click(button_element).perform
虽然这不会引发错误,但它也不会单击按钮。
有人知道我做错了什么吗?
【问题讨论】:
标签: ruby selenium knockout.js capybara