ruby-on-rails - capybara click_link 与 :href match

标签 ruby-on-rails capybara

我在请求规范中有以下测试:

page.should have_link('Edit user', :href => edit_users_path(@user))

这会检查索引 View 中的特定用户是否具有编辑链接。
我想单击相同的链接,例如:
click_link('Edit user', :href => edit_users_path(@user))

不幸的是,click_link 不接受选项。

有什么好方法可以做到这一点,这似乎是一个相当明显的用例?

我应该在表中包含一个#id <tr><td>并做类似的事情:
within(#user_id)
  click_link 'Edit user'
end

我不想仅仅为了让测试工作而修改 View 。

最佳答案

您可以使用查找 find(:xpath, "//a[@href='/foo']").click

关于ruby-on-rails - capybara click_link 与 :href match,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14957981/

相关文章:

ruby-on-rails - Rails 5 破坏了 send_file 方法?

ruby-on-rails-3 - rails 3.1, 安装 capybara-webkit, 无法构建 gem native 扩展,怎么办?

ruby-on-rails - 传递给 Capybara::Queries::SelectorQuery 的未使用参数

ruby-on-rails - RSpec::ExampleGroups::User::Validations 的未定义方法 `validate_presence_of'

ruby - capybara :无法找到 xpath "/html"(Capybara::ElementNotFound)

ruby-on-rails - 在投票后禁用 acts_as_votable gem 中的投票按钮

ruby-on-rails - 我如何使用具有方法 : :post? 的 Capybara click_link

ruby-on-rails - rails : 'Load More' button with Ajax & Kaminari

ruby-on-rails - HABTM 连接表需要两个索引吗?

Ruby selenium/capybara 等待元素消失