2012-07-10 3 views
0

설치 : 안녕하세요, 레일즈 3.2, 가드, RSpec 및 FactoryGirl 있습니다. 꽤 일반적입니다.FactoryGirl을 실행할 때 DB 데이터를 검사 할 수있는 방법이 있습니까?

문제점 : 관리자로 만든 사용자가 예상대로 작동하지 않습니다. 또한 테스트가 끝나면 데이터베이스가 이미 비어있어 무슨 일이 일어나고 있는지 이해할 수 없습니다.

원하는 : "디버그"또는 다른 말로하면 중단 점이 있고 my_test 데이터베이스를 검사하고 싶습니다.

- 또는 - 적어도 DB는 테스트가 시작될 때 청소해야하며 끝은 청소하지 않는 것이 좋습니다.

감사합니다.

답변

1

이것이 의미하는 데이터베이스 디버거 보석을 설치하고 당신은 debugger

테스트는 (? 모든) 트랜잭션에 대부분에 싸여 호출하여 디버거에 드롭 할 수 있습니다 그 예를 하나의 다른 연결 (어떤 데이터베이스 탐색 도구를 사용하든 열림)는 테스트로 인한 변경 사항을 볼 수 없습니다. 당신은

+0

안녕 프레드릭 다를 수 있습니다

set transaction isolation level read uncommitted 

다른 데이터베이스와 MySQL을 변경할 수 있습니다, 지금 내가 "RAILS_ENV = 테스트 번들 간부 가드 -d"를 실행, DB에이 SET를 실행 멈출 것 같습니다 , 변수 나 DB를 검사 할 때 그들은 비어 있습니다. 왜 그런가? – valk

+0

검사 할 때마다 "트랜잭션 격리 수준 설정이 커밋되지 않음"을 실행해야하는 것처럼 보입니다. 그럼 작품에서! – valk