Rails project, while testing with capybara: ArgumentError: Unused parameters passed to Capybara::Queries::SelectorQuery : [4]
Rails project, while testing with capybara: ArgumentError: Unused parameters passed to Capybara::Queries::SelectorQuery : [4]
测试有 4 个输入的表单不起作用,我正在复制粘贴文档中的行:
assert_select "form input", 4
有什么想法吗?
require "application_system_test_case"
class QuestionsTest < ApplicationSystemTestCase
test "visiting /ask renders the form" do
visit ask_url
assert_selector "p", text: "Ask your coach anything"
assert_select "form input", 4
end
end
完整的错误信息是:
Error:
QuestionsTest#test_visiting_/ask_renders_the_form:
ArgumentError: Unused parameters passed to Capybara::Queries::SelectorQuery : [4]
test/system/questions_test.rb:9:in `block in <class:QuestionsTest>'
如有任何帮助,我们将不胜感激。
在阅读他们的指南后,不知道为什么我的问题根据 Whosebug 是错误的。
您从文档中复制的 assert_select
方法是 Rails 方法,已从 Rails 移出 rails-dom-testing
gem Rails 4.2。但是,您实际调用的 assert_select
方法是 Capybara 提供的方法 - https://www.rubydoc.info/gems/capybara/Capybara/Minitest/Assertions#assert_select-instance_method - 它处理
assert_css "form input", count: 4
和assert_selector :css, "form input", count: 4
一样,也可以写成assert_selector "form input", count: 4
if Capybara.default_selector == :css
.
测试有 4 个输入的表单不起作用,我正在复制粘贴文档中的行:
assert_select "form input", 4
有什么想法吗?
require "application_system_test_case"
class QuestionsTest < ApplicationSystemTestCase
test "visiting /ask renders the form" do
visit ask_url
assert_selector "p", text: "Ask your coach anything"
assert_select "form input", 4
end
end
完整的错误信息是:
Error:
QuestionsTest#test_visiting_/ask_renders_the_form:
ArgumentError: Unused parameters passed to Capybara::Queries::SelectorQuery : [4]
test/system/questions_test.rb:9:in `block in <class:QuestionsTest>'
如有任何帮助,我们将不胜感激。
在阅读他们的指南后,不知道为什么我的问题根据 Whosebug 是错误的。
您从文档中复制的 assert_select
方法是 Rails 方法,已从 Rails 移出 rails-dom-testing
gem Rails 4.2。但是,您实际调用的 assert_select
方法是 Capybara 提供的方法 - https://www.rubydoc.info/gems/capybara/Capybara/Minitest/Assertions#assert_select-instance_method - 它处理
assert_css "form input", count: 4
和assert_selector :css, "form input", count: 4
一样,也可以写成assert_selector "form input", count: 4
if Capybara.default_selector == :css
.