일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- TIP
- Scala
- max중첩
- Hadoop
- mysql
- activerecord
- java
- Migration
- Shell
- 삽질기
- fileUploader
- programmingTip
- test
- 전화영어
- fixture
- share
- Rails
- minitest
- 점심영어스터디
- form
- carrierwave
- programming
- RoR
- apache spark
- transaction
- Ruby
- Ruby on Rails
- rubyonrails
- uploader
- Linux
Archives
- Today
- Total
목록factory (1)
아침바라기의 이야기
[Rails] Minitest를 이용한 모델 테스트 팁
mini 테스트는 Fixture를 사용한다. 즉 DB를 이용해서 테스트를 하는데 test case마다 한번 전체 테이블의 데이터를 지우고 Fixture를 한번 로딩하는 반복을 이용한다. mini test에서는 test case 마다 transaction의 begin, rollback 을 사용한다. 대부분 DB(MS SQL 빼고)에서 중첩 transaction을 지원하지 않으므로 테스트 케이스 테스트 중에 오류가 발생할 수 있다. 트랜잭션이 걸려 있는 경우, 1. transaction을 스킵하는 기능을 만듬2. AOP를 적용 3. transaction을 사용하지 않는다.4. helper class를 통해서 테스트 범위 밖으로 밀어버린다. 위의 4가지 방법을 이용해서 트랜잭션 중첩을 회피 해야한다. fixt..
개발이야기/Ruby on Rails
2015. 10. 23. 21:50