애플리케이션 테스트 결과 분석 1. 결합 분석 방법 결합 분석 방법 설명 구체화 (Specification) 결함을 발생시킨 입력값, 테스트 절차, 환경을 명확히 파악 고립화 (Isolation) 어떤 요소가 결함 발생에 영향을 미치는지 분석 일반화 (Generalization) 결함 발생에 영향을 주는 요소를 최대한 일반화 시키는 방법
애플리케이션 테스트 수행 1. 목(Mock) 객체 - 객체지향 프로그램에서 독립적인 컴포넌트 테스트를 위해서 스텁의 객체지향 버전인 목 객체가 필요 2. 목 객체 유형 유형 설명 더미 개체 객체만 필요하고 기능까지는 필요하지 않은 경우 테스트 스텁 제어 모듈이 호출하는 타 모듈의 기능을 단순히 수행하는 도구 테스트 드라이버 테스트 대상 하위 모듈을 호출, 파라미터 전달, 모듈 테스트 수행 후 결과 도출 테스트 스파이 테스트 대상 클래스와 협력하는 클래스 가짜 객체 실체 협력 클래스의 기능을 대체해야 할 경우, 사용 3. 통합 테스트 - 비점증적인 방식 - 빅뱅 방식 : 모든 모듈을 동시에 통합 후, 테스트 - 점증적인 방식 - 하향식 테스트 : 위에서 아래로. 테스트 스텁 필요 - 상향식 테스트 : 아래..
애플리케이션 테스트 시나리오 작성 1. 테스트 레벨 종류 종류 설명 단위 테스트 (Unit Test) - 구현이 진행되면서 수행하는 테스트. 서브루틴 등을 테스트 통합 테스트 (Integration Test) - 모듈 간 인터페이스, 컴포넌트 간의 상호 작용을 검증하는 테스트 시스템 테스트 (System Test) - 단위 시스템 기능이 시스템에서 정상 수행 되는지를 검증하는 테스트 - (기능적 요구사항/비기능적 요구사항) 인수 테스트 (Acceptance Test) - 요구사항이 만족했는지 확인하기 위한 테스트 - 알파 테스트 : 사용자가 개발자 환경에서 수행하는 테스트 - 베타 테스트 : 실제 환경에서 일정 사용자에게 SW를 사용하게 하고 피드백을 받는 테스트 2. V 모델
애플리케이션 테스트 케이스 작성 3 1. 정적 분석 - 자동화된 도구를 이용하여 산출물의 결함을 검출하거나 복잡도를 측정(도구) 2. 리뷰 - SW의 다양한 산출물에 존재하는 결함을 검출하거나 프로젝트의 진행 상황을 점검하기 위한 활동으로 전문가가 수행(사람) 3. 리뷰의 유형 유형 설명 동료 검토 (형식적) - 2~3명이 진행하는 리뷰의 형태 - 요구사항 명세서 작성자가 설명하고, 이해관계자들이 설명을 들으면서 결함을 발견 인스펙션 (형식적) - 저작자 외의 다른 전문가 or 팀이 검사하여 문제를 식별하고 문제에 대한 올바른 해결을 찾아냄 워크스루 (비형식적) - 검토 자료를 회의 전에 배포해서 사전 검토한 후 짧은 시간동안 회의를 진행하는 형태 4. 경험 기반 테스트 유형 설명 탐색적 테스트 (Exp..
애플리케이션 테스트 케이스 작성 2 1. SW 테스트 유형 - 프로그램 실행 여부에 따라 동적 테스트와 정적 테스트로 나뉨 - 동적 테스트 : 화이트박스 테스트, 블랙박스 테스트, 경험기반 테스트 - 정적 테스트 : 리뷰, 정적 분석 2. 화이트박스 테스트(White-Box Test) (구조 기반) - 각 응용 프로그램의 내부 구조와 동작을 검사하는 SW 테스트 3. 화이트박스 테스트 유형 (영어도 확인) 유형 내용 구문(문장) 커버리지 (Statement Coverage) - 프로그램 내의 모든 명령문을 적어도 한 번 수행 결정(=선택, =분기) 커버리지 (Decision/Branch Coverage) - 결정 포인트 내의 전체 조건식이 적어도 한 번은 참과 거짓의 결과를 수행 조건 커버리지 (Cond..
애플리케이션 테스트 케이스 작성 1 1. SW 테스트 - 노출되지 않은 숨어있는 SW의 결함을 찾아내는 활동 2. SW 테스트 원리 원리 설명 결함 존재 증명 - 결함의 존재함을 밝히는 활동 완벽 테스팅은 불가능 - 완벽하게 테스팅하려는 것은 불가능 초기 집중 - 개발 초기에 테스팅 시작 - 요르돈의 법칙(눈덩이 법칙) : 개발 초기에 하지 않으면 비용이 증가 결함 집중 - 적은 수의 모듈에서 대다수의 결함이 발견 - 파레토 법칙(Pareto Principle) : 오류의 80%는 전체 모듈의 20%안에서 발견됨 살충제 패러독스 (Pesticide Paradox) - 동일한 테스트 케이스에 의한 반복적 테스트는 새로운 버그를 찾지 못함 정황 의존성 - SW의 성격에 맞게 테스트 실시 오류-부재의 궤변 -..