Capybara Scope在元素内创建href数组

时间:2016-07-18 09:48:15

标签: cucumber capybara

我正在编写将在包含4个href的元素中查看的测试,并在其中创建每个href的数组,然后依次单击每个href并期望得到结果。

看看Capybara DSL文档,我无法看到一种范围内的方式,然后调用所有类似的方式:

links = all(:href).within('id-of-element')

我只是将其保留为all(:href),但有3个元素包含4个href,我需要具体说明我与之交互的元素。

有办法做到这一点吗?

1 个答案:

答案 0 :(得分:2)

内部的Capybaras占用一个块并在会话中调用,它不是一个可以在节点或节点“阵列”上调用的方法

within("#id") do
  find(...) # result scoped to inside element with id
end

您的另一个选择是在一个节点上调用find / first / all,该节点将其范围限定为该节点

find("#id").all(...). # results of all are scoped to element with id