반응형

애플리케이션 테스트의 분류 정적 테스트 , 동적 테스트

애플리케이션을 테스트할 때

프로그램의 실행 여부에 따라 다음과 같이 나뉘게 됩니다.

정적 테스트 프로그램을 실행하지 않고 명세서나 소스 코드를 대상으로 분석하는 테스트.
소트프웨어 개발 초기에 결함을 발견할 수 있어 개발 비용을 낮추는데 도움이 된다.
종류로는 '워크스루', '인스펙션', '코드 검사'등이 있다.
동적 테스트 프로그램을 실행하여 오류를 찾는 테스트로, 소프트웨어 개발의 모든 단계에서 수행할 수 있다.
종류로는 "블랙박스 테스트" , "화이트박스 테스트"등이 있다.

또,

애플리케이션은 무엇을 "기반"으로

하느냐에 따라 다음처럼 나뉘게 됩니다.

명세 기반 테스트 사용자의 요구사항에 대한 명세를 빠짐없이 테스트 케이스로 만들어 구현하고 있는지 확인하는 테스트.
종류에는 "동등 분할" , "경계값 분석"등이 있다.
구조 기반 테스트 소프트웨어 내부의 논리 흐름에 따라 테스트 케이스를 작성하고 확인하는 테스트.
종류에는 "구문 기반", "결정 기반", "조건 기반"등이 있다.
경험 기반 테스트 유사 소프트웨어나 기술 등에 대한 테스터의 경험을 기반으로 수행하는 테스트.
이는 사용자의 요구사항에 대한 명세서가 불충분하거나, 테스트 시간에 제약이 있는경우 효과적이다.
종류에는 에러 추정, 체크 리스트, 탐색적 테스팅이 있다.

그리고

테스트할 때,

누구를 기준(개발자, 사용자)으로 하느냐에 따라 나뉘게 됩니다.

검증(Verification) 테스트 개발자의 시각에서 제품의 생산 과정을 테스트 하는 것,
제품이 명세서대로 완성됐는지 테스트한다.
확인(Validation) 테스트 사용자의 시각에서 생산된 제품의 결과를 테스트하는 것,
사용자가 요구한대로 완성됐는지, 제품이 정상적으로 동작한는지를 테스트한다.

끝으로는

프로그램의 목적에 따라 테스트를 구분합니다.

회복(Recovery)테스트 시스템에 여러 가지 결함을 주어 실패하게 한 후, 올바르게 복구되는지 확인하는 테스트.
안전(Security) 테스트 시스템에 설치된 시스템 보호 도구가 불법적인 침입으로부터 보호가능한지 확인하는 테스트.
강도(Stress) 테스트 시스템에 과도한 정보량, 빈도등 과부하 시에도
소프트웨어가 정상적으로 실행되는지 확인하는 테스트
성능(Performance) 테스트 소프트웨어의 실시간 성능이나 전체적인 효율성ㅇ르 진단하는 테스트로,
소프트웽어의 응답 시간 , 처리량등을 테스트한다.
구조(Structure) 테스트 소프트웨어 내부의 논리적인 경로, 소스 코드의 복잡도등을 평가하는 테스트.
회귀(Regressiong) 테스트 소프트웨어의 변경 또는 수정된 코드에 새로운 결함이 없음을 확인하는 테스트.
병행(Parallel) 테스트 변경된 소프트웨어와 기존 소프트웨어에 동일한 데이터를 입력하여,
그 결과를 비교하는 테스트이다.

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기