Definitive Guide to Develop a Good Test Strategy Document with These 7 Simple Steps - part 1-
What is Test Strategy?
Testing을 통해 무엇을 얻고 그것을 어떻게 달성할 것인지에 대한 접근법을 정의하는 것이 strategy plan이다.
이 문서는 테스트의 목적을 달성하기 위한 분명한 접근법을 취하기 위해 모든 불확실하고 애매한 부분을 다 제거한다. Test Strategy는 QA 팀에가 가장 중요한 문서 중 하나이다. 이 문서를 효율적으로 작성하는 것은 모든 테스터들이 그들의 경력 속에서 취득해야할 기술이다.
이 문서는 간과할 수 있는 요구조건들이 정리됨으로로서 작업의 완결성을 높여줄 것이다. 그리고 각 테스트 계획의 activity들은 팀에게 테스트 범위나 테스트 영역을 정의하는데 도움을 줄 것이다. 또한 테스트 매니저에게는 어느때 이든지 현재 프로젝트의 상태를 파악할 수 있도록 도움을 줄 수 있다. 그리고 제대로 된 strategy 가 마련돼 있으면 test activity들을 missing 할 수 있는 위험성을 줄여준다.
아무 계획없이 테스트를 하는 것은 거의 성공확률이 없다. 그리고 strategy document를 작성은 했지만 이후 테스트 할 때 한번도 참조하지 않는 경우도 있다. Testing strategy plan은 반드시 모든 팀 멤버들과 같이 공유되고 논의 되어야 한다. 그렇게 함으로서 팀이 지속적으로 관련 업무에 이를 활용하고 거기에 대한 책임도 인지하고 있어야 한다. 시간이 촉박하다고 해서 그 strategy document에 있는 testing activity들을 보류하거나 건너 뛰어서는 안된다. 여기에 언급된 프로세스는 반드시 실행되어야 한다.
Test Strategy vs. Test Plan:
몇년 간 두 문서 사이에 많은 혼동이 있었다. 아주 기본적인 정의부터 하자. 일반적으로 어느 문서부터 오는지는 중요하지 않다. Test Planning 문서는 전체 프로젝트 계획과 strategy가 같이 있는 문서이다. IEEE Standard 829-2008에 따르면 strategy plan은 test plan의 하위 문서이다.
모든 조직은 그들만의 표준과 프로세스를 가지고 이러한 문서들을 관리한다. 어떤 조직들은 test plan 에 strategy details를 포함하기도 한다. (여기에 그 예가 있다) 어떤 조직들은 strategy를 testing plan의 subsection으로 두고 자세한 내용들을 별도의 strategy 문서로 만들기도 한다.
test plan에는 프로젝트의 범위와 test focus가 정의 돼 있다. 기본적으로 test coverage, 테스트해야 할 features 그리고 테스트 하지 말아야할 features, estimation, schedule 그리고 resource management 등이 있다.
test strategy에는 test objectives를 달성하기 위해 따라야 할 test approach에 대한 guideline들과 testing plan에 정의 된 test type들의 실행 등이 들어 있다. 여기에는 test objective, approach, test environment, automation strategy 그리고 tool 들과 contingency plan 등과 같은 risk analysis 등이 있다.
요약하면 test plan은 여러분이 달성하고자 하는 비젼이고 test strategy는 그 비젼을 달성하기 위해 마련된 action plan 이다.
이렇게 정의함으로서 혼동스러운 개념이 깨끗하게 정리되길 바란다. James Bach는 여기에서 이와 관련해 좀 더 자세하게 논했다.
'TDD Project' 카테고리의 다른 글
QA 엔지니어가 하는 일 (0) | 2015.12.12 |
---|---|
좋은 Test Strategy 문서를 만들기 위한 7가지 요소 -2- (0) | 2014.12.10 |
Automated Testing Advantages, Disadvantages and Guidelines (1) | 2014.07.02 |
TDD Project Production Deployment 경험.... (0) | 2014.03.17 |
[JAVA] getInstance() 와 관련해서.... (2) | 2014.03.11 |
JAVA DATE 함수 사용. 날짜 계산하기 (0) | 2014.01.27 |
미국 IT 프로젝트 참여 과정과 개발환경 세팅하기 (0) | 2013.11.15 |
Jenkins 에 대한 개요 (0) | 2013.11.08 |
새로운 프로젝트, 새로운 기술, 배울것들이 많아서 좋다. (1) | 2013.11.07 |
JUnit 4 와 TestNG 비교하기 (0) | 2013.11.03 |