ruby-on-rails – 使用Capybara寻找一个残疾的领域

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 使用Capybara寻找一个残疾的领域前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个选择框,带有一个标签
  1. <label for="slide_orientation">Slide orientation</label>
  2. <select disabled="" class="property" id="slide_orientation" name="slide_orientation">
  3. <option value="horizontal">Horizontal</option>
  4. <option value="vertical" selected="selected">Vertical</option>
  5. </select>

您可以看到选择框被禁用.当我尝试用field_labeled(“幻灯片方向”)找到它时,它返回一个错误

  1. Capybara::ElementNotFound: Unable to find field "Slide orientation"
  2. from /Users/pascal/.rvm/gems/ruby-1.9.3-p392/gems/capybara-2.0.2/lib/capybara/result.rb:22:in `find!'

当选择框未被禁用时,field_labeled(“Slide orientation”)返回select元素.

这是预期的行为吗?如果是这样,我将如何找到一个残疾人元素?在我的情况下,我需要它来测试是否禁用.

解决方法

Capybara 2.1.0 supports disabled filter.你可以很容易地找到残疾的领域.
  1. field_labeled("Slide orientation",disabled: true)

您需要明确指定,因为默认情况下禁用的过滤器已关闭.

猜你在找的Ruby相关文章