TDD알아보기
TDD의 란? (Test Driven Development)
테스트 주도 개발: 테스트가 개발을 이끌어 나가는 개발방법론
구체적인 행동 레벨에서의 TDD의 개념은?
테스트를 먼저 만들고 테스트를 통과하기 위한 것을 짜는 것 즉, 만드는 과정에서 우선 테스트를 작성하고 그걸 통과하는 코드를 만들고를 반복하면서 제대로 동작하는지에 대한 피드백을 적극적으로 받는 것입니다.
TDD가 어려운이유는뭘까 ??
- 개발 시간이 증가합니다.
- 많은 기업들이 단기적인 성과에 집중해 있습니다.
- 전체 개발 시간을 줄이는 것보다 오늘 일을 끝내는 것을 강조하기 때문에 TDD 도입이 어렵습니다.
단기적인 것에 집중되어 있으니.. 그때까서 또 고치면 되니까.. 고객이 화내면 안되니까.. 급한 불을 끄면서 허덕이면서 살기 때문에..
TDD가 어렵습니다, - 이제까지 자신이 개발하던 방식을 많이 바꿔야 하기 때문에
몸에 체득한 것이 많을수록 바꾸기가 어렵습니다.
TDD의 장점
장점
- TDD를 하면 개발 시간이 늘어난다.
- 개발 시간이 TDD를 하지않을 때에 비해 대략 10~30%가 늘어납니다.
- TDD를 하면 결함이 줄어든다.
- 결함이 1/2~1/10 까지 줄어듭니다.
- SW를 개발하면서 예상하지 못했던 시간을 많이 소요하는 것은 대부분이 버그 때문이다.
TDD를 하면 이런 버그를 줄일 수 있습니다. - 유지보수 비용이 낮아집니다.
TDD어디까지 ??
TDD 개발 시간의은 본인이 ‘다했다고’생각할 때까지, 기능 구현이 끝났을 때까지 진행하는게 좋습니다.
'Android > Test' 카테고리의 다른 글
Mockito-Kotlin 알아보기 (0) | 2019.10.28 |
---|---|
Test Double(테스트 더블)알아보기 (33) | 2019.10.28 |
Test Stub이란 ? (0) | 2019.10.28 |
assertThat (4) | 2019.10.04 |
Junit - Assert 메소드 (2) | 2019.07.10 |
댓글