SW 테스트 실전

(사례 모음) 애자일 테스트 프랙티스 정의와 수행 사례

genycho 2025. 4. 11. 12:20

다른 사람이 소개한 '애자일 테스트' 관련 내용을 읽다가, 개인적으로 내가 수행하고 있는 애자일 테스트 내용을 보려고 하니, 어디 한 곳에 모아서 정리된 글이 없었다. 

 

그런 의미에서 한 곳에 기존 글들을 모아놔 봤다. 

 

그림1) 2주 스프린트에서의 협업 예.

 

그림2) 3주 스프린트에서의 협업 예.

[자료 1] 애자일에서의 테스트 사례 (부제: 협업의 아름다움)

https://blog.naver.com/genycho/222678759828

(자료 내용 중 발췌) 

- 애자일… 기존 테스트의 새로운 위기? 또는 기회

 

- 외부 테스트 조직/인력이 닭? 돼지가 될 수 있을까?

 

애자일에서 테스트 전담자는 필요할까? 정답은: 필요할 수도 있고, 필요 없을 수도 있다 테스트 전담자는 다음의 일을 할 것이다. - 사용자 스토리 완료를 확인시켜 줄 수 있는 테스트 시나리오(케이스)를 작성할 것이 다 - 고객과 개발자를 이어주는 가교 역할을 할 것이다(2인3각 경주) - 변화에 유연하게 대응하도록 해주는 테스트 자동화를 고민할 것이다 - 위 일들이 다 끝나면 추가적으로 탐색적 테스팅을 수행할 것이다 - 테스트 자산을 축적할 것이다(빈발결함, 품질 추이, 교육자료 등) 이 일들을 할 누군가가 있으면 된다

 

스크럼 팀에서 전체 테스트 Activity

[ 프로젝트 착수 단계 ]

. 테스트 전략, 계획 수립

. 테스트 기본교육

. 테스트 자동화 환경 구축

. 개발자 (단위) 테스트 코드 작성 가이드

 

[ 개발 준비 단계/ Product 플래닝 ]

- 테스트 설계

- 짝 설계(개발/테스트)

 

[ 스프린트 ]

- (스프린트 플래닝) 각 사용자별 Acceptance Criteria 작성 또는 피드백 및 보완

- 일일 미팅 참여

- 짝 테스트

- 개발/테스트 코드 리뷰

- 테스트 수행

- 테스트 결과, 빈발결함 공유

[ 종료 ]

- 자산화 

 

- 전하고 싶은 메시지… 

애자일 테스트는 가까이, 끊임없이, 닭이 아닌 돼지로(같이) 협업.

현실적이고 지속 가능한 형태 

 

- 실제 사례에서의 어려움.

사례에 대한 테스트 스스로의 회고

- 일회성 보여주기 식이 아닌, 내재화된 프랙티스화에 대한 어려움 ( “그분” 들과의 갭…)

- 테스트 인력 확보 및 역량 강화 ( *점점 더 축소되는 테스트 수행 역할 )

- 테스트에 대한 인식 변화는 언제쯤..

- 애자일을 제대로 하는 스크럼 팀?

- 인수 테스트, 비기능 테스트 등 더 넓은 영역으로의 확장

 

[자료 2] 애자일 테스트 프랙티스 정리

https://blog.naver.com/genycho/222682522012

 

(자료 내용 중)

스크럼 팀에서의 각 역할자 별 기본적인 테스트 프랙티스

① 개발자 : TDD, 단위테스트, 짝/크로스 테스트, 코드리뷰 등

② Product Owner / Business Analyst : 짝/크로스 테스트

③ 자동화 엔지니어 : API/GUI 등 자동화 스크립트 작성

④ 독립적인 테스터(팀) : 독립적인 테스트 수행(전체 통합 테스트, 사용성, 보안/성능 테스트, 탐색적 테스트 등)

 

테스트 엔지니어가 고객과 개발팀 양쪽과 협업하며 지속적으로 스크럼 팀에 고객 관 점의 피드백을 제공하며 일을 수행하는 업무 방식

 

애자일(스크럼)에서의 테스터는 스크럼 팀의 일원으로 고객/테스트 관점의 피드백을 끊임없이 팀에 제공하고 검증하며, 다른 한편으로는 API, GUI에 대한 (회귀)테스트 자동화를 구축하여 전체 프로젝트에 대한 품질 수준을 높이는데 기여한다

① 스크럼 팀 內 테스트 엔지니어

• 착수 단계부터 협업하여 고객이 원하는 바를 파악하고 고객/테스트 관점에서 스크럼 팀 내에서 다양한 방법으로 팀원들과 협업

② 테스트 자동화 엔지니어

• 별도 일정(ex: 클린업 등)으로 어느 정도 정형화된 API, GUI를 대상으로 테스트 자동화 스크립트를 작성하고 반복적인 회귀테스트 환경을 구축한다

 

애자일에서의 테스트 프랙티스

 

애자일 테스터의 원칙

- 책 “애자일 테스팅”, 리사 크리스핀, 자넷 그레고리(정보문화사) 발췌

1) 끊임없는 피드백 제공

2) 고객 가치 창출

3) 직접적인 의사소통

4) 용기

5) 단순함 지향

6) 지속적인 개선 실행

7) 변화에 대응

8) 자기 조직화

9) 사람 중심

10) 즐기기

 

[자료 3] 애자일 테스트 사례 - W프로젝트

https://blog.naver.com/genycho/222709991287

(자료 내용 중)

 

( SDET의 접근 전략 )

테스트 측면

- 고객/제품의 가치를 고민하며,

- 팀 안에서,

- 개발 기간 내내

- 팀 내부, 외부 이해관계자와 커뮤니케이션하며 브릿지 역할 수행

 

엔지니어링 측면

- 개발단계에 쉽고 빠르게 활용할 수 있는 테스트 자동화 접근

- 각 레벨 별 테스트 자동화 전략 수립 및 리딩

 

( 수행내용 )

Business Value 측면

[1] 개발과 테스트의 목표 정의

[2] Persona 정의와 유스케이스 도출

[3] 사용자 스토리 Acceptance Criteria(완료 조건) 정의/ 공유

[4] 팀 내/외부 협업을 통한 지속적인 피드백

[5] 통합 워크플로우 테스트 정의

 

Test Engineering 측면

[A] 서버 내부 테스트

[B] HTTP API 테스트

[C] 클라이언트 테스트

[D] 기타 품질 활동(with Jenkins)

 

수행회고 등. 

 

[자료 4] 애자일 테스트 사례(인력양성 목적)  - DEX 프로젝트 SDET 수행사례

https://blog.naver.com/genycho/222709996959

 

(자료 내용 중)

수행개요 - 프로젝트 상황에 적합한 상세 홗동을 정의하고 개발팀, SDET 양성인력 대상으로 수행 방법에 집중하여 지원 수행