기능 테스트는 블랙박스 동적 테스트의 한 예입니다. 블랙박스 테스트(사양 기반 테스트라고도 함)는 테스트 중인 시스템의 내부 구조나 구현을 고려하지 않고 외부 동작이나 기능을 고려하는 테스트 유형입니다. 동적 테스트는 다양한 입력을 사용하여 테스트 중인 시스템을 실행하고 해당 출력을 관찰하는 테스트 유형입니다. 기능 테스트는 테스트 중인 시스템이 요구 사항이나 사양에 따라 의도한 기능을 수행하는지 확인하는 일종의 블랙박스 동적 테스트입니다. 기능 테스트는 테스트 목적과 기준에 따라 다양한 수준과 범위에서 수행될 수 있습니다. 다른 옵션은 블랙박스 동적 테스트의 예가 아닙니다. 코드 검사는 화이트박스 정적 테스트의 한 예입니다. 화이트박스 테스트(구조 기반 테스트라고도 함)는 테스트 중인 시스템의 내부 구조 또는 구현을 고려하는 테스트 유형입니다. 정적 테스트는 테스트 중인 시스템을 실행하는 것이 아니라 결함, 오류 또는 표준 위반을 분석하는 테스트 유형입니다. 코드 검사는 테스트 중인 시스템의 소스 코드에서 품질, 가독성, 유지 관리 가능성 등을 검사하는 일종의 화이트박스 정적 테스트입니다. 프로그램을 실행하여 프로그램의 메모리 누수를 확인하는 것은 화이트박스 동적 테스트의 한 예입니다. 메모리 누수는 프로그램이 할당했지만 더 이상 필요하지 않은 메모리를 해제하지 못할 때 발생하는 결함입니다. 프로그램을 실행하여 메모리 누수를 확인하려면 메모리 할당 및 할당 해제 메커니즘, 포인터, 참조 등과 같은 프로그램의 내부 구조 또는 구현에 대한 지식과 액세스가 필요합니다. 적용 범위 분석은 화이트박스 정적 테스트의 한 예입니다. 커버리지 분석은 테스트 중인 시스템의 코드나 구조가 테스트 스위트에 의해 실행된 정도를 측정하는 기술입니다. 커버리지 분석에는 명령문, 분기, 경로, 조건 등과 같은 테스트 중인 시스템의 내부 구조 또는 구현에 대한 지식과 액세스가 필요합니다. 검증된 참조: ISTQB 기초 레벨 2018 강의 계획서에 대한 연구 가이드 - Springer, 7페이지.
ISTQB-CTFL 문제 2
'컴포넌트 테스트'란 무엇입니까?
정답: D
구성 요소 테스트는 테스트 수준입니다. 테스트 레벨은 몇 가지 공통된 특성이나 목표를 기반으로 함께 구성되고 관리되는 테스트 활동 그룹입니다. 테스트 수준은 테스트 범위 및 대상, 개발 단계 및 모델, 테스트와 관련된 이해 관계자 및 역할 등과 같은 다양한 요소를 기반으로 정의될 수 있습니다. 구성 요소 테스트(단위 테스트 또는 모듈 테스트라고도 함)는 개별 소프트웨어 구성 요소(예: 모듈, 클래스, 기능, 메서드 등)의 기능과 품질을 검증하는 데 초점을 맞춘 테스트 수준입니다. 구성 요소 테스트는 구성 요소의 유형과 복잡성에 따라 다양한 기술과 도구를 사용하여 개발자나 테스터가 수행할 수 있습니다. 다른 옵션은 테스트 수준이 아닙니다. 통합 테스트는 서로 또는 외부 시스템과 상호 작용하는 소프트웨어 구성 요소 그룹의 기능과 품질을 확인하는 데 초점을 맞춘 또 다른 테스트 수준입니다. 기능 테스트는 테스트 중인 시스템이 요구 사항이나 사양에 따라 의도한 기능을 수행하는지 확인하는 일종의 블랙박스 동적 테스트입니다. 경험 기반 테스트는 유사한 시스템, 기술, 도메인, 위험 등에 대한 경험을 기반으로 테스트 사례를 도출하고 선택하기 위해 테스터의 지식과 직관에 의존하는 테스트 설계 기술의 범주입니다. 검증된 참조: ISTQB 연구 가이드 기초 레벨 2018 강의 계획서 - Springer, 19페이지.
ISTQB-CTFL 문제 3
다음 중 동적 해석 도구의 기능은 무엇입니까?
정답: B
동적 분석 도구는 실행 중 동작을 기반으로 소프트웨어 제품을 분석하는 도구입니다. 동적 분석 도구는 메모리 사용량, CPU 로드, 응답 시간, 리소스 누수 등 프로그램 런타임 성능의 다양한 측면을 모니터링할 수 있습니다. 동적 분석 도구는 프로그램 실행 중에 메모리 할당, 사용 및 할당 해제를 모니터링할 수 있으며, 이를 통해 메모리 누수, 버퍼 오버플로 또는 메모리 손상과 같은 결함을 감지하는 데 도움이 됩니다. 동적 분석 도구는 테스트 관리 도구의 기능이므로 소스 문서에 대한 테스트, 테스트 결과 및 사건의 추적성을 지원할 수 없습니다. 동적 분석 도구는 디버깅 도구의 기능이므로 오류를 재현하고 해당 결함을 찾기 위해 단계별로 프로그램을 실행할 수 없습니다. 동적 분석 도구는 구성 관리 도구의 기능이므로 구성 항목으로 구성된 기준선 릴리스에 대한 지원을 제공할 수 없습니다. 검증된 참고 자료: [ISTQB 기초 레벨 2018 강의 계획서에 대한 연구 가이드 - Springer], 6장, 페이지 56-57.
ISTQB-CTFL 문제 4
다음 중 구성 요소 테스트를 설명할 가능성이 가장 낮은 설명은 무엇입니까?
정답: C
구성 요소 테스트(단위 테스트 또는 모듈 테스트라고도 함)는 개별 소프트웨어 구성 요소(예: 모듈, 클래스, 기능, 메서드 등)의 기능과 품질을 확인하는 데 초점을 맞춘 테스트 수준입니다. 컴포넌트 테스트는 주로 컴포넌트 간의 인터페이스와 상호 작용뿐만 아니라 컴포넌트의 내부 로직과 데이터 구조를 테스트합니다. 구성 요소 테스트는 코드가 구현되기 전에 테스트가 작성되는 테스트 우선 접근 방식(예: 테스트 중심 개발 또는 동작 중심 개발)을 사용하여 적용될 수 있습니다. 구성 요소 테스트는 모듈 및 클래스의 결함을 식별하지 않습니다. 이는 목표가 아닌 구성 요소 테스트의 결과이기 때문입니다. 누락되거나 불완전한 구성 요소 또는 테스트에 필요한 외부 시스템을 시뮬레이션하거나 교체할 수 있으므로 구성 요소 테스트에는 시뮬레이터와 스텁이 필요할 수 있습니다. 검증된 참조: ISTQB 기초 레벨 2018 강의 계획서에 대한 학습 가이드 - Springer, 19페이지.
ISTQB-CTFL 문제 5
테스트가 어떻게 품질 향상에 기여할 수 있나요?
정답: A
테스트는 소프트웨어 품질을 측정하는 데 도움을 줌으로써 더 높은 품질에 기여할 수 있습니다. 품질은 구성 요소나 시스템이 지정된 요구 사항과 고객 또는 사용자의 요구와 기대를 충족시키는 정도로 정의됩니다. 테스트는 입력을 적용하고 출력을 관찰하여 구성 요소나 시스템을 평가하고 이를 예상 결과와 비교하는 프로세스입니다. 테스트는 기능, 성능, 유용성, 보안, 신뢰성 등에 대한 정보를 제공하여 소프트웨어 품질을 측정하는 데 도움이 될 수 있습니다. 또한 테스트는 소프트웨어의 결함을 식별하고 보고하는 데 도움이 될 수 있으며 이는 개선 조치 및 품질 보증 활동으로 이어질 수 있습니다. 다른 옵션은 테스트가 어떻게 더 높은 품질에 기여할 수 있는지에 대한 정확한 설명이 아닙니다. 테스트는 남아 있는 결함을 문서화하는 것이 아니라 발견된 결함을 보고하는 것입니다. 테스트는 소프트웨어의 오류를 제거하는 것이 아니라 소프트웨어 동작이나 품질의 결함을 찾아냅니다. 테스트는 소프트웨어의 위험을 제거하는 것이 아니라 소프트웨어의 위험을 평가하고 관리하는 것입니다. 검증된 참고 자료: ISTQB 기초 레벨 2018 강의 계획서에 대한 학습 가이드 - Springer, 3페이지.