【问题标题】:Fixture error Hartl chapter 8夹具错误 Hartl 第 8 章
【发布时间】:2015-03-08 19:03:16
【问题描述】:

我刚刚完成了 Hartl 教程的第 8 章,但是当我尝试运行测试时不断收到错误消息。我遇到了 3 个相同的错误,问题似乎源于用户登录测试,其中在夹具集(用户)中找不到夹具 :michael。

这是我的 user_login_test

require 'test_helper'

class UsersLoginTest < ActionDispatch::IntegrationTest

def setup
    @user = users(:michael)
  end


  test "login with invalid information" do
    get login_path
    assert_template 'sessions/new'
    post login_path, session: { email: "", password: "" }
    assert_template 'sessions/new'
    assert_not flash.empty?
    get root_path
    assert flash.empty?
  end

   test "login with valid information" do
    get login_path
    post login_path, session: { email: @user.email, password: 'password' }
    assert_redirected_to @user
    follow_redirect!
    assert_template 'users/show'
    assert_select "a[href=?]", login_path, count: 0
    assert_select "a[href=?]", logout_path
    assert_select "a[href=?]", user_path(@user)
  end
end

这是错误

ERROR["test_login_with_invalid_information", UsersLoginTest, 0.006789]
 test_login_with_invalid_information#UsersLoginTest (0.01s)
StandardError:         StandardError: No fixture named 'michael' found for fixture set 'users'
            test/integration/users_login_test.rb:6:in `setup'
        test/integration/users_login_test.rb:6:in `setup'

ERROR["test_login_with_valid_information", UsersLoginTest, 0.008174]
 test_login_with_valid_information#UsersLoginTest (0.01s)
StandardError:         StandardError: No fixture named 'michael' found for fixture set 'users'
            test/integration/users_login_test.rb:6:in `setup'
        test/integration/users_login_test.rb:6:in `setup'

DEPRECATION WARNING: The assertion was not run because of an invalid css selector.
unexpected '#' after '[#<Nokogiri::CSS::Node:0x007fa642d4e870 @type=:ELEMENT_NAME, @value=["div"]>]' (called from block in <class:UsersSignupTest> at /Users/SamDavidoff/Documents/workspace/sample_app/test/integration/users_signup_test.rb:14)
DEPRECATION WARNING: The assertion was not run because of an invalid css selector.
unexpected '<' after '.' (called from block in <class:UsersSignupTest> at /Users/SamDavidoff/Documents/workspace/sample_app/test/integration/users_signup_test.rb:15)
ERROR["test_valid_signup_information", UsersSignupTest, 0.197435]
 test_valid_signup_information#UsersSignupTest (0.20s)
NoMethodError:         NoMethodError: undefined method `is_logged_in?' for #<UsersSignupTest:0x007fa642dd6068>
            test/integration/users_signup_test.rb:27:in `block in <class:UsersSignupTest>'
        test/integration/users_signup_test.rb:27:in `block in <class:UsersSignupTest>'

【问题讨论】:

    标签: ruby-on-rails shell sublimetext3


    【解决方案1】:

    您没有在文件 test/fixtures/users.yml 中创建用户

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-13
      • 1970-01-01
      • 1970-01-01
      • 2012-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多