0

안녕하세요 저는 루비를 연구 중이며 코딩 자체가 완전히 새롭습니다. 해결 방법이 매우 쉬운 경우 고급에 사과드립니다.레일즈 테스트 오류 : 해당 테이블 없음 : files_users : DELETE FROM "files_users"

레일 테스트를 실행할 때 다음 제목에 오류가 계속 발생합니다. 통합 테스트에 조명기를 통합하고 있으며 이러한 오류의 의미를 확실히 알 수 없습니다. 시험을 통합한다면 다른 단계를 밟아야합니까?

나는 같은에 따라 11 오류를 가지고 있지만, 예를 들어 하나 가져 : 내 users.yml에

Error: 
    UserTest#test_name_is_Bob_Builder: 
    ActiveRecord::StatementInvalid: SQLite3::SQLException: no such table: files_users: DELETE FROM "files_users" 


bin/rails test test/models/user_test.rb:12 

을 내 user_test.rb에

<% salt = BCrypt::Engine.generate_salt %> 
<% password = 'abc123' %> 

bob: 
    name: 'Bob Builder' 
    email: '[email protected]' 
    password_hash: <%= BCrypt::Engine.hash_secret(password, salt) %> 
    password_salt: <%= salt %> 

require 'test_helper' 

class UserTest < ActiveSupport::TestCase 
    test 'can create user' do 
    before = User.all.size 
    User.create 
    after = User.all.size 

    assert after = before + 1 
    end 

    test 'name is Bob Builder' do 
    user = users(:bob) 
    assert user.name == 'Bob Builder' 
    end 

    test 'can authenticate user' do 
    user = User.authenticate('[email protected]', 'abc123') 
    assert user == users(:bob) 
    end 
end 

답변

0

테스트 환경에서 데이터베이스를 이주하지 않았습니다. 그래서 테스트 환경에서 데이터베이스를 마이그레이션

rake db:migrate RAILS_ENV=test 
+0

감사 파일 user.yml를 이동했다 해결했다. 다시 경고합니다. 경고 : ActiveSupport.halt_callback_chains_on_return_false =은 더 이상 사용되지 않으며 Rails 5.2에서 제거 될 것입니다. –

0

내가 사용자에 사용자를 변경하고 응답을

덕분에 다른 위치에