TDD (테스트 주도 설계)

2013.07.19 14:00

가을의 곰을... 조회 수:3460

[출처] http://sangjjang.tistory.com/175

2013/07/08 16:52 IT/Test

'자바 개발자도 쉽고 즐겁게 배우는 테스팅이야기' 에서 발췌하였습니다.

 

------------------------------------------

 

 

TDD는 Test Driven Development 의 약자이다. 우리나라 말로 하면 테스트 주도 개발이라는 뜻이다. 지금까지의 개발 방식과 다르게, 테스트할 코드를 먼저 작성하고 코드를 개발하는 다소 특이한 개발 방법이다.

 

기존 개발 절차

디자인 -> 개발 -> 테스트

TDD의 개발 절차

테스트, 스크립트 개발 -> 개발 -> 리팩토링

 

TDD 를 실무 적용하지 못하는 이유는 시간적 여유입니다. 언제 테스트 스크립트를 만들고 개발하냐는 것이죠.

 

"단지 개발하면서 테스트 스크립트를 만들었고 게다가 리팩토링까지 수행했다면, TDD를 적용했다고 할 수 있는 것이다. 그리고 테스트 스크립트를 코드와 같이 작성하고 오류를 점검한다는 개념 자체가 중요한 것이다."

 - 저도 이말에 공감갑니다. sangjjang

 

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

 

 

리팩토링은 마틴 파울러라는 유명한 아저씨가 쓴 「Refactoring: Improving the Design of Existing Code」라는 책에서 한 말에 의하면 'a disciplined technique for restructuring an existing body of code, altering its internal structure without changing its external behavior' 라는 작업을 의미한다. 우리말로 하면 '코드가 원래 하는 일이 변경되지 않으면서 내부적인 코드의 구조를 재구성하는 규율에 따른 기술'이란 뜻이다.

 

리팩토리의 대상 및 큰 카테고리

1. 메소드 정리

2. 객체나 클래스 사이의 이동

3. 데이터의 재구성

4. 조건문을 이해하기 쉽게 단순화

5. 메소드 호출 단순화

6. 상속관계 재구성

 

 

웹기반과 DB와 연계된 부분을 테스트하는 것의 어려운 부분에 대해서...

JUnit 에서 제공하는 기능만으로 힘든 부분을 HttpUnit 같은 프레임워크로 해결가능하다.

그리고 스프링 프레임워크(버전 2.5)의 경우 테스트를 용이하게 하는 많은 기능을 제공한다.

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
258 데이터분석에서 어떻게 원하는 결과를 얻을 것인가? 가을의 곰을... 2013.11.23 1685
257 [PMO] CIO 의 신규 IT프로젝트 예산 확보 가을의 곰을... 2013.11.23 2168
256 [GIT 사용법] Git Tutorial 가을의 곰을... 2013.10.27 2766
255 3D 프린팅은 어떻게 소비 문화를 바꾸는가_KIDP.pdf file 가을의 곰 2013.10.14 2300
254 [퍼온글]프로토콜 설계의 개요 컴퓨터 가을의 곰을... 2013.09.05 2785
253 BitTorrent Protocol -- BTP/1.0 가을의 곰을... 2013.09.05 3147
252 Linux 시스템 백업과 복원 가을의 곰을... 2013.09.03 2523
251 JSON 이란? 가을의 곰을... 2013.08.14 7203
250 동향분석I-6-2013년_IT기술_트렌드_방향과_쟁점.pdf file 가을의 곰을... 2013.08.01 2599
249 2013 IT 산업 10대 이슈 file 가을의 곰을... 2013.08.01 2555
248 R로 하는 Big Data 분석 file 가을의 곰을... 2013.07.24 2682
247 대규모 웹사이트를 구성하기 가을의 곰을... 2013.07.21 4567
246 BDD와 TDD의 차이점 가을의 곰을... 2013.07.19 2950
» TDD (테스트 주도 설계) 가을의 곰을... 2013.07.19 3460
244 DDD (도메인 주도 설계) file 가을의 곰을... 2013.07.19 2705
243 여러 행 SELECT해서 INSERT 하기 가을의 곰을... 2013.07.17 2909
242 [본문스크랩] iPhone용 Open Source 모음 file 가을의 곰을... 2013.07.17 3606
241 [iBatis] 다중 쿼리 사용하기. 가을의 곰을... 2013.07.17 7675
240 Blender 3D Hotkeys, Shortcut Keys and Reference 가을의 곰을... 2013.07.13 5107
239 OLC 블렌더 강좌 : 블렌더 3d 단축키 가을의 곰을... 2013.07.13 7873
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED