정적 테스트란 무엇입니까? 소프트웨어 테스팅 기법
정적 테스트란 무엇입니까?
정적 테스트 코드를 실행하지 않고 소프트웨어 응용 프로그램의 결함을 확인하는 데 사용되는 소프트웨어 테스트 기술입니다. 정적 테스트는 오류를 식별하고 해결하는 것이 더 쉽기 때문에 개발 초기 단계에서 오류를 방지하기 위해 수행됩니다. 또한 동적 테스팅으로 발견할 수 없는 오류를 찾는 데도 도움이 됩니다.
그에 상응하는 것은 코드가 실행될 때 응용 프로그램을 확인하는 동적 테스트입니다. 자세한 차이점은 이 튜토리얼을 참조하세요. 정적 및 동적 테스트.
정적 테스트 기술의 두 가지 주요 유형은 다음과 같습니다.
- 수동 검사: 수동 검사에는 수동으로 수행된 코드 분석이 포함됩니다. 리뷰.
- 도구를 사용한 자동 분석: 자동 분석은 기본적으로 도구를 사용하여 수행되는 정적 분석입니다.
정적 테스트 기술
- 비공식적 인 Rev봐요
- 연습
- 테크니컬 Rev봐요
- 검사
- 정적 분석
- 데이터 흐름
- 제어 흐름
정적 테스트에 사용되는 도구
Static Testing에 사용되는 다양한 도구는 다음과 같습니다.
테스트란 무엇인가 Rev응?
정적 테스트의 검토는 프로그램 설계의 잠재적인 결함을 찾기 위해 수행되는 프로세스 또는 회의입니다. 리뷰의 또 다른 의미는 팀원 모두가 프로젝트의 진행 상황을 알게 되고 때로는 생각의 다양성이 훌륭한 제안으로 이어질 수도 있다는 것입니다. 문서는 사람이 직접 검토하여 불일치 사항을 정리합니다.
Rev뷰는 다음과 같이 네 부분으로 분류될 수 있습니다.
- 비공식 리뷰
- 연습
- 기술 검토
- 검사
시 Rev테스트에 참여하는 네 가지 유형의 참가자는 다음과 같습니다.
- 증여자: 진입점검, 재작업 후속조치, 팀원 코칭, 회의 일정 잡기 등을 수행합니다.
- 저자: 발견된 결함을 책임지고 수정하여 문서의 품질을 향상시킵니다.
- 학자: 검토 중 결함을 로깅하고 검토 회의에 참석합니다.
- Rev이에: 자재의 불량여부를 확인하고 검사합니다.
- 매니저: 검토 실행을 결정하고 검토 프로세스 목표가 충족되었는지 확인합니다.
정적 테스트 중에 쉽게 찾을 수 있는 결함 유형은 다음과 같습니다.
- 표준과의 편차
- 유지 관리할 수 없는 코드
- 디자인 결함
- 요구사항 누락
- 일관되지 않은 인터페이스 사양
일반적으로 정적 테스트 중에 발견되는 결함은 보안 취약점, 선언되지 않은 변수, 경계 위반, 구문 위반, 일관성 없는 인터페이스 등으로 인해 발생합니다.
성공적인 정적 테스트 프로세스를 위한 팁
소프트웨어 엔지니어링에서 정적 테스트 프로세스를 수행하는 데 유용한 몇 가지 팁입니다.
- 정말 중요한 일에만 집중하세요
- 검토 활동을 명시적으로 계획하고 추적합니다. 소프트웨어 연습 및 검사는 일반적으로 동료의 리뷰로 구성됩니다.
- 예제를 통해 참가자 교육
- 사람 문제 해결
- 프로세스를 프로젝트 문화로 형식적으로 유지
- 지속적인 개선 – 프로세스 및 도구
- 테스트 실행의 주요 지연을 제거함으로써 테스트 비용과 시간을 줄일 수 있습니다.
왜 정적 테스트인가?
정적 테스트는 다음과 같은 이유로 수행됩니다.
- 조기 결함 감지 및 수정
- 개발 기간 단축
- 테스트 비용 및 시간 감소
- 개발 생산성 향상을 위해
- 테스트의 후반 단계에서 결함을 줄이기 위해
정적 테스트에서 테스트되는 내용
정적 테스트에서는 다음과 같은 사항을 테스트합니다.
- 단위 테스트 케이스
- 비즈니스 요구사항 문서(BRD)
- 고객 사례
- 시스템/기능 요구사항
- 프로토 타입
- 프로토타입 사양 문서
- DB 필드 사전 스프레드시트
- 테스트 데이터
- 추적성 매트릭스 문서
- 사용자 매뉴얼/교육 가이드/문서
- 테스트 계획 전략 문서/테스트 케이스
- 자동화/성능 테스트 스크립트
정적 테스트 수행 방법
정적 테스트를 수행하려면 다음과 같은 방법을 사용합니다.
- 애플리케이션의 디자인을 완벽하게 점검하기 위한 점검 프로세스를 수행합니다.
- 검토 중인 각 문서에 대한 체크리스트를 사용하여 모든 검토가 완벽하게 다루어졌는지 확인하세요.
정적 테스트를 수행하기 위한 다양한 활동은 다음과 같습니다.
- 사용 사례 요구 사항 검증: 모든 최종 사용자 작업과 이와 관련된 입력 및 출력이 식별되는지 확인합니다. 사용 사례가 더 자세하고 철저할수록 테스트 사례가 더 정확하고 포괄적일 수 있습니다.
- 기능적 요구사항 검증: 기능 요구사항이 필요한 모든 요소를 식별하는지 확인합니다. 또한 데이터베이스 기능, 인터페이스 목록, 하드웨어, 소프트웨어 및 네트워크 요구 사항도 살펴봅니다.
- Archi강의 Rev보기: 서버 위치, 네트워크 다이어그램, 프로토콜 정의, 로드 밸런싱, 데이터베이스 접근성, 테스트 장비 등과 같은 모든 비즈니스 수준 프로세스
- 프로토타입/스크린 목업 검증: 이 단계에는 요구 사항 및 사용 사례의 검증이 포함됩니다.
- 필드 사전 검증: UI의 모든 필드는 필드 수준 유효성 검사 테스트 사례를 생성할 수 있을 만큼 잘 정의되어 있습니다. 필드는 최소/최대 길이, 목록 값, 오류 메시지 등을 확인합니다.
요약
- 정적 테스트는 가능한 한 빨리 결함을 찾는 것입니다.
- 정적 테스트는 동적 테스트를 대체하지 않으며 둘 다 다른 유형의 결함을 찾습니다.
- Reviews는 정적 테스트에 효과적인 기술입니다.
- Rev보기는 결함을 찾는 데 도움이 될 뿐만 아니라 누락된 요구 사항, 설계 결함, 유지 관리할 수 없는 코드를 이해하는 데도 도움이 됩니다. 이 프로세스에 도움이 되는 도구를 찾고 있다면 다음 중 일부에 대한 포괄적인 목록을 참조하세요. 최고의 코드 검토 도구 당신이 유용하다고 생각할 수도 있습니다.