'베스트 프렉티스'를 모범사례로 번역을 한 것은 참고문헌 MAS10 p.xx/p.2를 따른 것이다.
"한 번에 하나의 객체만 테스트하라." - MAS10 p.43
"assert 호출 시에는 실패 원인을 기술하라." - MAS10 p.47
"하나의 @Test 메서드에서는 하나의 테스트만 수행하라." - MAS10 p.50
"실패할 가능성이 잇는 모든 것을 테스트하라." - MAS10 p.53
"테스트를 통해 코드를 개선하라." - MAS10 p.57
"예외 테스트도 읽기 쉽게 만들어라." - MAS10 p.59
"테스트를 통해 코드를 개선하라." - MAS10 p.59
"테스트를 건너뛸 때는 반드시 그 이유를 명시하라." - MAS10 p.62
"같은 패키지, 다른 디렉터리" - MAS10 p.67
"리팩터링하라" - MAS10 p.71
테스트 가능한 코드 작성하기 - MAS10 pp.93~101
5.2.1 공개 API는 계약이다.
5.2.2 종속성을 줄여라
5.2.3 생성자는 간단하게 만들어라
5.2.4 최소 지식의 원칙(디미터의 법칙)을 따르라
5.2.5 숨겨진 종속성과 전역 상태를 피하라
5.2.6 싱글톤의 장단점
5.2.7 제너릭 메서드를 애용하라
5.2.8 상속보다 컴포지션을 활용하라
5.2.9 조건 분기보다 다형성을 활용하라
"실패하는 테스트를 먼저 작성하라" - MAS10 p.104
"지속적으로 회귀 테스트를 수행하라" - MAS10 p.108
"목 객체 안에서는 비즈니스 로직을 구현하지 말라." - MAS10 p.136
"문제될 가능성이 있는 것만 테스트하라." - MAS10 p.137
"녹색 상태에서 리팩터링하라" - GRE11 p.xv
참고문헌
[GRE11]
James W. Grenning. Test-Driven Development for Embedded C. [PDF]
Pragmatic Programmers, 2011
임베디드C를 위한 TDD(인사이트. 신제용, 한주영 옮김. 2012)
[MAS10]
JUnit in Action
Petar Tahchiev, Felipe Leme, Vincent Massol, Gary Gregory, 2010
JUNIT IN ACTION: 단위 테스트의 모든 것(인사이트, 이복연 옮김. 2011)
'Programing > 테스트' 카테고리의 다른 글
단위테스트가 아닌 것들, 팁 (0) | 2014.04.24 |
---|---|
TDD 디자인 패턴(design pattern) (0) | 2014.03.19 |
[NUnit] 사례TDD - 완벽하지 않은 테스트 (0) | 2013.12.26 |
[NUnit] 닷넷 환경의 테스트 주도 개발 (0) | 2013.11.27 |
[NUnit] NUnit에서 x86 바이너리 테스트하기 (0) | 2013.05.21 |