1. ATDD(Acceptance Test Driven Development)의 개요

 1-1. ATDD(Acceptance Test Driven Development)의 정의

   - 테스트로부터 시작해서 구현을 마무리 짓는 TDD의 범위를 소스 코드 수준에서 기능 테스트 수준까지 확장하여 고품질의 소프트웨어를 생산하는 개발 방법론

 

 1-2. ATDD(Acceptance Test Driven Development)의 필요성

   - 테스트 케이스 명확: 개발 착수 전 사용자, 개발자, QA등 제품 관련자들이 인수 테스트 케이스를 작성

   - 커뮤니케이션 도구: 토론하는 과정을 통해 요구사항에 대한 오해가 없고 충분한 의사소통가능

 

2. ATDD(Acceptance Test Driven Development )의 프로세스, 단계별 활동, 관련 기법간 비교

 2-1. ATDD(Acceptance Test Driven Development)의 프로세스

 

 2-2. ATDD(Acceptance Test Driven Development)의 단계별 활동

  1) 요구사항 토론
   활동 : 명확한 인수 기준 항목, 기능별 질문 사항 요구
   연관요소: 이해관계자와 협업, 자연어 기반 기록

 2) 프레임워크 포맷 기반의 케이스 작성
   활동: 테스트 자동화 F/W, 다양한 유형 테스트
   연관요소: FIT, Selenium

 3) TDD 수행
   활동: 테스트 픽스처 작성, setUp, tearDown
   연관요소: Regression Test, SUT

 4) 탐색적 테스팅
   활동: Test Code를 수행하면서 테스트 시나리오 작성
   연관요소: 테스트 차터

 

 2-3. ATDD(Acceptance Test Driven Development)와 관련 기법간 비교

항목 ATDD TDD
관점 인수테스트 단위테스트
용어사용 TDD 기반 언어 비 표준 어휘
핵심 User Story 기반 테스트 케이스
사례 assert(기대값, 실제값) assert(기대값, 실제값)
대표 F/W FIT xUnit
장점 인수 품질 향상 코드 품질 향상
단점 오랜 작성기간 설계관점 취약

- ATDD 시스템 품질(상위 레벨), TDD 소스 품질(하위 레벨)

'1. IT Story > Basic Studies' 카테고리의 다른 글

SCRUM  (0) 2019.06.24
ALM(Application Lifecycle Management)  (0) 2019.06.23
Daily Build  (0) 2019.06.22
CI(Continuous Integration)  (0) 2019.06.21
SEM(Strategic Enterprise Management)  (0) 2019.06.19
TDD (Test Driven Development)  (0) 2019.06.18
XP (extreme Programming)  (0) 2019.06.17
Agile 개발방법론  (0) 2019.06.16
블로그 이미지

운명을바꾸는자

IT와 함께 살아가는 삶

,