2010-03-22 2 views
0

필드에 대한 고유성 제약으로 인해 공장을 실행할 때 유효성 검사 오류가 계속 발생합니다. factory_girl과 함께 shoulda를 사용하고 있습니다. 나는 단위 테스트와 기능 테스트를 통해 데이터베이스에 2 개의 제품을 생성합니다. 나는 'rake test : units'과 'rake test : functionalals'을 어떤 순서로든 반복해서 사용할 수있다. 그러나 모든 것이 녹색이 ​​될 것이지만, 'rake test'를 실행하여 그 단위를 실행 한 후 functionals가 나올 때 나는 유일성 때문에 오류를 얻는다. .공장에서 레일 테스트. 트랜잭션 고유성 문제

두 개의 다른 단위 테스트에서 고유성을 없애기 위해 모델을 만들려고했는데 오류도 발생했습니다.

내가 test_helper.rb에서 이러한 설정을 연주했지만 아무것도

class ActiveSupport::TestCase 
    self.use_transactional_fixtures = true 
    self.use_instantiated_fixtures = false 
end 

동작하지 않습니다 것은 공장의 영향을 설정 transactional_fixtures 않습니다. 테스트간에 데이터베이스 정리를 처리하는 가장 좋은 방법은 무엇입니까?

답변

1

(한숨 ..)

그래서 문제는 내가 했어야의 문서에서 코드를 복사 한 것이 었습니다 그래서처럼 내 테스트 클래스를 선언 결국 : 설정을 트랜잭션 비품 그러나

class UserTest < Test::Unit::TestCase 

당신이 ActiveSupport에서 상속해야하는 효과가 :: 희망이 다른 사람이 시간을 절약 할 수 있습니다 수업

class UserTest < ActiveSupport::TestCase 

를 선언하여 테스트 케이스.