[정처기 실기] 9-2 애플리케이션 통합 테스트
📙애플리케이션 통합 테스트
🏷️단위테스트
➡️ 단위테스트는 개별적인 모듈을 테스트한다.
🏷️단위테스트 수행 도구
1️⃣ 테스트 드라이버: 모듈 테스트 수행 후의 결과를 도출하는 시험용모듈, 하위모듈을 호출하는 상위모듈의 역할
2️⃣ 테스트 스텁: 일시적으로 필요한 조건만을 가지고 임시로 제공되는 시험용모듈
🏷️통합테스트
➡️ 단위테스트는 개별적인 모듈을 테스트한다.
🏷️하향식 통합
➡️ 메인제어 모듈로부터 아래방향으로 이동하면서 하향식으로 통합하면서 테스트를 진행한다.
깊이-우선 또는 너비-우선방식으로 통합된다.
🏷️상향식 통합
➡️ 애플리케이션 구조에서 최하위 레벨의 모듈 또는 컴포넌트로부터 위쪽 방향으로 제어의 경로를 따라 이동하면서 테스트를 수행한다.
🏷️샌드위치 통합
➡️ 상향식 통합 테스트와 하향식 통합 테스트 방식을 결합한 테스트 방식이다.
🏷️테스트 하네스
➡️애플리케이션 컴포넌트 및 모듈을 테스트하는 환경의 일부분으로, 테스트를 지원하기 위한 코드와 데이터를 말하며, 단위 또는 모듈 테스트에 사용하기 위해 코드 개발자가 작성한다.
1️⃣ 테스트 드라이버: 하위모듈을 호출하고, 파라미터를 전달하고, 테스트수행 후 겨로가를 도출하는 등 상향식 테스트에 필요
2️⃣ 테스트 스텁: 제어모듈이 호출하는 타 모듈의 기능을 단순히 수행하는 도구로 하향식 테스트에 필요
3️⃣ 테스트 슈트: 테스트 대상 컴포넌트나 모듈, 시스템에 사용되는 테스트 케이스의 집합
4️⃣ 테스트 케이스: 입력값, 실행조건, 기대결과 등의 집합
5️⃣ 테스트 시나리오: 애플리케이션의 테스트 되어야 할 기능 및 특징, 테스트가 필요한 상황을 작성한 문서
6️⃣ 테스트 스크립트: 자동화된 테스트 실행 절차에 대한 명세
7️⃣ 목 오브젝트: 사용자의 행위를 조건부로 사전에 입력해두면, 그 상황에 예정된 행위를 수행하는 객체
🏷️애플리케이션 성능 측정 지표[처응경자]
1️⃣ 처리량
2️⃣ 응답시간
3️⃣ 경과시간
4️⃣ 자원사용률
🏷️배드코드
1️⃣ 외계인 코드: 아주오래되거나 참고문서나 개발자가 없어 유지보수가 어려운 코드
2️⃣ 스파게티 코드:작동은 정상적으로 하되, 사람이 코드를 읽으면서 그 코드의 작동을 파악하기는 어려운 코드
3️⃣ 알 수 없는 변수명: 변수나 메서드에 대한 이름 정의를 알 수 없는 코드
4️⃣ 로직 중복: 동일한 처리 로직이 중복되게 작성한 코드