what is early testing
조기 테스트 란 무엇입니까?
소프트웨어 테스트는 소프트웨어 개발 수명주기 초기에 시작해야합니다. 이는 SDLC의 초기 단계, 즉 요구 사항 수집 및 설계 단계에서 결함을 포착하고 제거하는 데 도움이됩니다. 테스트를 일찍 시작하면 결함 수를 줄이고 궁극적으로 재 작업 비용을 줄이는 데 도움이됩니다.
다양한 측면 초기 테스트 SDLC에서 테스트 전략 문서를 개발하거나 고안하는 동안 QA 관리자 및 리드에게 도움이되는 내용이 여기에 설명되어 있습니다.
조기 테스트를 채택하면 우수한 품질의 제품을 성공적으로 제공 할 수 있습니다.
이 자습서가 끝나면 독자, QA 관리자, 리드 및 테스터는 아래 개념에 대한 공정한 지식을 갖게됩니다.
json 파일을 여는 프로그램
- SDLC (프로젝트 또는 소프트웨어 릴리스)에서 초기 테스트를하는 이유는 무엇입니까?
- 초기 테스트 노력 범위
- 무엇을 조기에 테스트해야합니까?
- 시작 및 종료
- 장점과 단점
이제 뉘앙스를 자세히 살펴 보겠습니다 !!
학습 내용 :
테스트 원리
그림 1 – 테스트 원칙의 단순화 된보기
SDLC의 특정 소프트웨어 또는 시스템 또는 제품 릴리스에 대해 다음 테스트 원칙의 대부분에 대해 잘 정의 된 다양한 방법론 또는 전략이 있습니다.
- 테스팅이란 무엇입니까?
- 왜 테스트 하는가?
- 무엇을 테스트해야합니까?
- 테스트하는 방법?
그러나 많은 독자, 테스터, 리드 및 QA 관리자가 질문하거나 더 명확하게하기를 원하는 가장 느린 질문 중 일부는 그림 1 )
- 소프트웨어 릴리스에서 테스트를 시작할 때 또는 프로젝트에서 테스트를 언제 시작해야합니까?
- 언제 테스트를 시작하고 언제 테스트를 중지해야합니까?
- SDLC에서 테스트를 일찍 시작해야하는 이유는 무엇입니까?
- 소프트웨어 개발 초기 테스트 란 무엇입니까?
청중을 쉽게 이해할 수 있도록 모든 '회색 영역'질문을 초기 테스트.
SDLC에서 초기에 테스트해야하는 이유
테스트의 일부인 몇 가지 이벤트와 활동에 대해 논의하겠습니다.
일반적으로 프로그램 관리 팀은 주어진 소프트웨어 릴리스 또는 프로젝트에 프로그램 관리자 (PM)를 지정합니다. 마케팅, 개발, QA 및 지원 팀을 포함한 모든 이해 관계자와 협력하여 PM이 릴리스 일정을 제시합니다.
이 튜토리얼에서는 분기 별 출시 일정 사용 폭포 모델 설명하기 위해 초기 테스트 개념 상세히.
소프트웨어 릴리스 테스트 일정
대부분의 조직은 여전히 기존의 시간 기반 릴리스 (TBR) 모델은 소프트웨어 또는 제품 릴리스가 분기 별 또는 반년 또는 연간 배송으로 계획되어 있습니다.
주로 이러한 소프트웨어 릴리스를 실행하는 데 Waterfall 모델이 사용됩니다. 더 짧은 릴리스주기를 위해 Agile / Scrum 모델이 채택되는 경우도 있습니다.
그림 2 - 일반적인 분기 별 릴리스 테스트 일정 (전체 프로젝트 또는 릴리스 일정이 아님)
심각하거나 심각도가 높은 결함의 영향
그림 3 - 심각한 결함의 일반적인 영향
주로 , 테스트 과정에서
- 테스터가 심각하거나 심각도가 높은 결함을 식별하고 기록합니다.
- 개발자는 이러한 결함을 수정해야합니다.
- 이후 테스터는 수정 사항을 확인해야합니다.
둘째 , 많은 제품 및 소프트웨어 엔지니어링 조직에서 심각도가 높거나 심각한 버그를 수정하고 확인하는 것이 매우 많다는 사실을 널리 인정하고 있습니다.
- 시간 소모적
- 리소스 호깅 (인간 + 기계)
- 담보에 취약하고, 중요한 버그를 수정하면 대부분 교차 영역을 포함하여 코드의 상당 부분을 만집니다.
마지막으로 , 특정 릴리스가 종료되는 동안 많은 수의 중요한 버그가 발견되면 다음과 같은 부정적인 개발 중 하나 이상이 발생합니다.
- 테스트주기가 연장 될 가능성이 높습니다.
- 출시 기한을 놓칠 가능성이 높습니다.
- 많은 수의 결함이있는 특정 기능은 해당 특정 릴리스에서 모두 함께 제거해야 할 수 있습니다.
- 고객의 약속을 놓치고 있습니다.
다른 결함은 어떻습니까?
테스터가 식별하고 기록하는 중간 및 낮은 우선 순위 결함이 있습니다. 또한 개발 팀과 QA 팀에서 적절하게 처리해야합니다. 따라서 전반적으로 방대한 운동입니다.
Silver Bullet이 없습니다
아무리 많은 테스트도 소프트웨어 제품이나 시스템에있는 모든 결함을 찾아 낼 수 없다는 것은 잘 알려진 사실입니다. 실제로 테스트가 끝나지 않으며 제품에 결함이 없음을 의미합니다.
그러나‘ 서비스 가능성 ’의 관점에서 경쟁 및 TTM (Time To Market) 모델의 관점에서 출시주기 초기에 최대 결함, 특히 심각하고 심각도가 높은 결함을 식별하려는 일반적인 사고 방식을 깨야합니다.
위의 일부 또는 전부는 조직의 비즈니스에 부정적인 영향을 미칩니다. 이러한 맥락에서‘ 초기 테스트 '가지고있다 별도의 테스트 활동 주어진 프로젝트 또는 릴리스에 대한 SDLC의 전반적인 관리에 도움이 될 것입니다.
초기 테스트 노력의 범위
이전 섹션 ' 왜 조기 테스트인가? ’, 이제‘ 초기 테스트 노력의 범위 ' 상세히.
테스트 실행 과정에서 독점적으로 추적 할 새로운 활동으로 Testing Early를 도입하고 있으므로 아래 설명 된대로 테스트 노력 범위를 연습하는 것이 좋습니다.
인수:
- 전체 프로젝트 또는 소프트웨어 릴리스 일정이 승인되고 모든 이해 관계자가 사용할 수 있습니다.
- 전체 테스트 전략 문서는 모든 이해 관계자가 개발, 검토 및 승인합니다.
- 테스트 할 높음, 중간, 낮음 우선 순위 기능은 잘 문서화되어 있습니다.
- 모든 기능에 대한 테스트 계획 및 테스트 사례는 모든 이해 관계자가 개발, 검토 및 승인합니다.
- 모든 테스트 계획 및 테스트 사례는 테스트 실행을 추적하기 위해 중앙 저장소에 업로드됩니다.
- 모든 인적 자원, 인프라 장비 및 도구는 테스트 베드를 설정하고 테스트 계획을 실행하는 데 사용할 수 있습니다.
무엇을 조기에 테스트해야합니까?
그림 4 - 조기 테스트 범위에 대한 전반적인 접근 방식
접근하다
- 우리가 예 3 개의 높은 우선 순위 기능 A, B 및 C, 10 개의 중간 우선 순위 기능 및 15 개의 마이너 (또는 낮은 우선 순위) 기능이있는 릴리스 XYZ의.
- 우선 순위가 높은 기능은 높은 수익 및 / 또는 표준 준수 및 / 또는 경쟁사 추격 및 / 또는 경쟁사 일 발성 및 이들 모두를 생성하는 기능입니다.
- 우선 순위가 높은 기능에는 일반적으로 복잡한 코딩이 포함되며 많은 수의 새 코드 줄이 추가됩니다.
- 많은 수의 새로운 코드 라인은 교차 영역의 높은 가능성을 의미 할 수도 있습니다.
- 일반적으로 높은 우선 순위 기능 및 / 또는 새로운 코드 줄이 많은 기능은 조기 테스트에 가장 적합한 후보입니다.
- 조기 테스트 활동을 위해 개발 된 별도의 테스트 계획이 필요하지 않습니다.
- QA 리드 또는 테스터는 개발 리드 또는 SME (주제 전문가)와 함께이 테스트 활동에 대한 코드 / 테스트 적용 범위에 대해 논의하고 동의해야합니다.
- 각 기능 테스트 계획 A, B 및 C에서 필요하다고 생각하는 경우 적절한 높은 우선 순위 테스트 케이스와 일부 중간 우선 순위 테스트 케이스를 식별하십시오.
- 적절한 기능과 테스트 사례의 하위 집합이 식별되면 조직에서 채택한 테스트 추적 도구를 사용하여 추적되는지 확인합니다.
힌트 : 협업이 핵심입니다! 조기 테스트 활동 중에 개발 팀과 QA 팀은 모두 긴밀하게 협력하여 설정된 목표가 양질의 결과로 달성되도록해야합니다.
초기 테스트 시작 및 종료
개발 팀과 QA 팀이 모두 같은 페이지에 있도록 시작 및 종료 날짜를 포함한 전체 조기 테스트 활동의 모든 접근 방식을 브레인 스토밍하고 동의하는 것이 중요합니다.
시작을위한 입력 기준
- 통합 테스트 완료율
- 열린 버그 수
- 조기 테스트를 시작할 수있는 차단제 없음
활동 단계
- 진행 상황 추적
- 이 테스트 중 코드 드롭 수
- 버그 수정 접근법
- 버그 확인 접근 방식
- 이 테스트 결과 기록
종료 기준
- 다음 테스트 단계 (일반적으로 기능 테스트)로 활동을 전달합니다.
- 조기 테스트 중에 발견 된 미해결 버그 해결.
- 다음 테스트 단계에 대한 차단제 해결.
- 조기 테스트 결과를 게시합니다.
장점과 단점
모든 새로운 이니셔티브 또는 활동에는 고유 한 장점과 단점이 있습니다.
이 테스트 접근 방식의 장단점을 살펴 보겠습니다.
장점
- Waterfall 모델에 이상적으로 적합합니다.
- 테스트주기 초기에 중요한 버그를 발견하는 데 도움이됩니다.
- 릴리스주기 초기에 중요한 버그를 식별합니다.
- 개발 팀이 강령을 조기에 안정화하도록 지원합니다.
- 버그 수정으로 인한 담보를 최소화하는 데 도움이됩니다.
- 개발 팀이 릴리스주기 초기에 교차 영역의 취약성을 자세히 식별하도록 지원합니다.
- 관리 팀은 특정 릴리스 또는 프로젝트에서 해결되지 않은 중요한 버그에 대한 실사를 통해 적절한 비즈니스 결정을 내릴 수 있습니다.
- 확장에 도움 테스트 범위 효과적으로 순환합니다.
- 개발 및 테스트 리소스를 효율적이고 효과적으로 배포하는 데 도움이됩니다.
단점
- Agile / Scrum 모델에는 적합하지 않습니다. 그러나 이러한 모델은 적절한 조정을 통해 Sprints에서 Early Test를 채택 할 수 있습니다.
- 감소 가능성이 있습니다 통합 테스트 개발팀에 의해.
결론
고객 또는 최종 사용자는 서비스 제품이나 시스템 또는 솔루션을 구매하거나 채택합니다. 서비스 가능성을 위해 이러한 시스템 또는 제품에서 실행중인 소프트웨어의 유효성을 검사하는 것이 기본 요구 사항입니다.
테스트하는 이유와 같은 테스트 원칙의 주요 구성 요소 테스팅이란 무엇입니까? 무엇을 테스트해야합니까? 테스트하는 방법? 대부분 잘 정의되고 이해됩니다. 그러나 초기 테스트와 같은 개념에 대해 독자, 테스터, 리드 및 관리자의 마음에 계속 떠오르는 몇 가지 질문이 남아 있습니다.
주어진 소프트웨어 프로젝트 또는 릴리스에 대한 전체 테스트 일정의 필수 활동으로 조기 테스트를 채택하면 조직이 강력한 적격 제품 또는 시스템을 제공하는 데 막대한 이점을 얻을 수 있습니다.
경력에서 조기 테스트의 중요성을 깨달은 적이 있습니까? 아래 댓글 섹션에서 귀하의 생각과 경험을 자유롭게 공유하십시오!
추천 도서
- 최고의 소프트웨어 테스트 도구 2021 (QA 테스트 자동화 도구)
- 실용적인 예제가 포함 된 이식성 테스트 가이드
- 소프트웨어 테스팅 QA 어시스턴트 작업
- 실용적인 소프트웨어 테스트-새로운 무료 eBook (다운로드)
- 알파 테스트 및 베타 테스트 (전체 가이드)
- 소프트웨어 테스팅 과정 : 어떤 소프트웨어 테스팅 기관에 가입해야합니까?
- 경력으로 소프트웨어 테스트 선택
- 소프트웨어 테스팅 기술 콘텐츠 작성자 프리랜서 작업