Ruby on Rails测试“预期响应但返回200
我是一位经验丰富的Web开发人员,我开始在rails上学习ruby,并使用HTML和CSS绑定到rails的代码中。 我有一个测试网站,我试图在ruby上运行它。 该测试将在网络上的一个轨道应用程序下显示一个包含主页,帮助,关于和联系页面的网站。
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 :about assert_response :success assert_response "title, Contact | Ruby on Rails Tutorial Sample App" end
结束
但是,当我尝试在命令提示符下运行测试时,它会在命令提示符下返回3个失败。 每个失败都表明程序期望格式但接收到相同类型的另一种格式。
FFF. Finished in 0.527144s, 7.5881 runs/s, 15.1761 assertions/s. 1) Failure: StaticPagesControllerTest#test_should_get_about [C:/Sites/sample_app/test/controllers/static_pages_controller_test.rb:19]: expected but was . Expected 0 to be >= 1. 2) Failure: StaticPagesControllerTest#test_should_get_contact [C:/Sites/sample_app/test/controllers/static_pages_controller_test.rb:25]: Expected response to be a , but was . --- expected +++ actual @@ -1 +1 @@ -"title, Contact | Ruby on Rails Tutorial Sample App" +200 3) Failure: StaticPagesControllerTest#test_should_get_help [C:/Sites/sample_app/test/controllers/static_pages_controller_test.rb:13]: expected but was . Expected 0 to be >= 1.
我如何在程序中解决这个问题? 有没有办法让程序以正确的方式查看代码? 如果我必须更改它,我应该将其更改为什么?
好的,这意味着没有HTML匹配请看这个答案:
失败:在轨道上的ruby上预期0> = 1
你的考试
test "should get contact" do get :about assert_response :success assert_response "title, Contact | 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
其他失败是因为测试页面的标题与测试中的预期标题不匹配,即您的应用程序或测试中存在一些错误。
1) Failure: StaticPagesControllerTest#test_should_get_about [C:/Sites/sample_app/test/controllers/static_pages_controller_test.rb:19]: expected but was . Expected 0 to be >= 1.