失败:预期 0 在 rails 上的 ruby 上 >= 1
Failure: Expected 0 to be >= 1 on ruby on rails
我正在做 Hartle 教程,每次 运行 rake 测试时都会看到这个失败我看到这个失败:
1) Failure:
StaticPagesControllerTest#test_should_get_help [.../sample_app/test/controllers/static_pages_controller_test.rb:14]:
<Help | Ruby on Rails Tutorial Sample App> expected but was
<Ruby on Rails Tutorial Sample App>..
Expected 0 to be >= 1.
这是什么意思?我该如何解决?
这是我的 static_pages_controller_test.rb 文件。
require 'test_helper'
class StaticPagesControllerTest < ActionController::TestCase
test "should get home" do
get :home
assert_response :success
assert_select "title", "Ruby on Rails Tutorial Sample App" end
test "should get help" do
get :help
assert_response :success
assert_select "title", "Help | Ruby on Rails Tutorial Sample App" end
test "should get about" do
get :about
assert_response :success
assert_select "title", "About | Ruby on Rails Tutorial Sample App" end
test "should get contact" do
get :contact
assert_response :success
assert_select "title", "Contact | Ruby on Rails Tutorial Sample App" end end
这是第 14 行。
assert_select "title", "Help | Ruby on Rails Tutorial Sample App"
问题是没有 html 匹配 "Help | Ruby on Rails Tutorial Sample App"
。
如果您查看 assert_select
的定义,它接受 :count
作为(可选)参数。如果未指定 count
,它会将 html
的最小出现次数设置为 1。这就是您收到的错误是 Expected 0 to be >= 1.
的原因。在您的情况下,有 0 场比赛,而测试预计至少有 1 场比赛。
我 运行 遇到过同样的问题。我所做的是在 application.html.erb
文件的 <title>
标签末尾取下 | Ruby on Rails Tutorial Sample App
部分。希望这对您有所帮助!
我遇到了同样的问题,三个失败,回家,关于和帮助。
原来是static_pages/home(关于&帮助)中的一个简单的错字。html.erb
我拼错了 "Tutorial" 并将同样的错误复制粘贴到每个 html.erb 中。
更正错字并重新 运行 rails 测试。
成功:)
我 运行 也遇到过同样的问题。它来自教程的 html 个视图中的 copy/paste 个。
即使您的视图和测试之间的文本相同,如果您 copy/paste 来自 Rails 教程,您应该 re-write 视图中标题标签之间的文本(主页、关于、帮助等)你自己和文本应该通过。希望这个帮助,它通过了这个。
我正在使用 vim。不知道有没有关系。
将此 <% provide(:title, "Home") %> 放入 static_pages/(home/about/contact).html.erb 文件中。我希望这能解决你的问题
我正在做 Hartle 教程,每次 运行 rake 测试时都会看到这个失败我看到这个失败:
1) Failure:
StaticPagesControllerTest#test_should_get_help [.../sample_app/test/controllers/static_pages_controller_test.rb:14]:
<Help | Ruby on Rails Tutorial Sample App> expected but was
<Ruby on Rails Tutorial Sample App>..
Expected 0 to be >= 1.
这是什么意思?我该如何解决? 这是我的 static_pages_controller_test.rb 文件。
require 'test_helper'
class StaticPagesControllerTest < ActionController::TestCase
test "should get home" do
get :home
assert_response :success
assert_select "title", "Ruby on Rails Tutorial Sample App" end
test "should get help" do
get :help
assert_response :success
assert_select "title", "Help | Ruby on Rails Tutorial Sample App" end
test "should get about" do
get :about
assert_response :success
assert_select "title", "About | Ruby on Rails Tutorial Sample App" end
test "should get contact" do
get :contact
assert_response :success
assert_select "title", "Contact | Ruby on Rails Tutorial Sample App" end end
这是第 14 行。
assert_select "title", "Help | Ruby on Rails Tutorial Sample App"
问题是没有 html 匹配 "Help | Ruby on Rails Tutorial Sample App"
。
如果您查看 assert_select
的定义,它接受 :count
作为(可选)参数。如果未指定 count
,它会将 html
的最小出现次数设置为 1。这就是您收到的错误是 Expected 0 to be >= 1.
的原因。在您的情况下,有 0 场比赛,而测试预计至少有 1 场比赛。
我 运行 遇到过同样的问题。我所做的是在 application.html.erb
文件的 <title>
标签末尾取下 | Ruby on Rails Tutorial Sample App
部分。希望这对您有所帮助!
我遇到了同样的问题,三个失败,回家,关于和帮助。
原来是static_pages/home(关于&帮助)中的一个简单的错字。html.erb 我拼错了 "Tutorial" 并将同样的错误复制粘贴到每个 html.erb 中。 更正错字并重新 运行 rails 测试。 成功:)
我 运行 也遇到过同样的问题。它来自教程的 html 个视图中的 copy/paste 个。
即使您的视图和测试之间的文本相同,如果您 copy/paste 来自 Rails 教程,您应该 re-write 视图中标题标签之间的文本(主页、关于、帮助等)你自己和文本应该通过。希望这个帮助,它通过了这个。
我正在使用 vim。不知道有没有关系。
将此 <% provide(:title, "Home") %> 放入 static_pages/(home/about/contact).html.erb 文件中。我希望这能解决你的问题