정보처리기사 CBT
종목 메뉴

개념 한 쪽

정보처리기사 테스트 자동화 도구 — 테스트 스텁과 테스트 드라이버

테스트 자동화 도구 문항은 단위 테스트와 통합 테스트에서 미완성 모듈을 대신하는 임시 모듈의 역할을 구분한다. 테스트 스텁과 테스트 드라이버의 차이, 하향식과 상향식 통합의 시작 위치, 알파 테스트와 베타 테스트가 속하는 단계를 함께 확인한다.

2026-11-08 기준 · 정보처리기사 대시보드

이 개념을 문제로 확인하고 싶으면 이 개념 문제 10개 풀기 회원용

가입 없이 오늘의 10문제 바로 풀기 →

시험에 이렇게 나온다

출제기준 단원 「테스트 자동화 도구」의 공개 문제 3개를 묻는 꼴별로 나누면 이렇습니다.

묻는 꼴문제 수무엇을 묻나
테스트 단계 연결 판단1알파와 베타 테스트가 속하는 테스트 단계를 가린다
테스트 드라이버 역할 판단1상위 모듈 호출과 하위 모듈 대체 역할을 구분한다
통합 테스트 방향 판단1상향식 통합의 시작 위치와 설명의 옳고 그름을 가린다

뜻

단위 테스트는 작은 단위인 모듈이 제대로 작동하는지 확인하는 테스트이다. 테스트 대상 모듈이 호출해야 할 하위 모듈이 아직 완성되지 않았거나 필요 없을 때 그 하위 모듈의 역할을 대신하는 가상의 모듈을 테스트 스텁이라 한다. 스텁은 주로 테스트 대상 모듈에 데이터를 반환하는 역할을 한다.

테스트 대상 모듈을 호출해 테스트를 진행해야 하는 상위 모듈이 없을 때 그 상위 모듈의 역할을 대신하는 가상의 모듈은 테스트 드라이버라 한다. 드라이버는 테스트 대상 모듈에 데이터를 인자로 넘겨주고 결과를 받는 역할을 한다. 따라서 인자를 넘겨주고 결과값을 받는 설명은 스텁이 아니라 드라이버에 대한 설명이다.

하향식 통합은 상위 모듈부터 테스트한다. 상위 모듈을 테스트할 때 아직 완성되지 않은 하위 모듈을 호출해야 하면 하위 모듈의 기능을 대신해 호출 결과를 반환하는 임시 모듈이 필요하고, 이를 스텁이라 한다. 하향식 통합은 상위 모듈부터 테스트하므로 초기부터 시스템 구조를 사용자에게 보여줄 수 있다.

상향식 통합은 최하위 모듈부터 시작해 상위 모듈 방향으로 통합한다. 상향식 통합에서는 상위 모듈의 역할을 대신하는 드라이버를 생성해 검사한다. 상향식 통합에서 스텁을 사용한다는 설명은 틀리다.

알파 테스트와 베타 테스트는 실제 사용자 관점에서 요구사항 충족 여부를 검증하는 인수 테스트의 하위 단계이다. 알파 테스트는 개발사 내부 통제 환경에서 수행하고, 베타 테스트는 실제 고객 환경에서 수행한다. 단위 테스트와 통합 테스트는 개발 내부 검증 단계이고, 시스템 테스트는 전체 기능 검증 단계이다.

예제

스텁과 드라이버의 역할을 뒤바꾼 선지가 함정이다. 스텁은 하위 모듈을 대신하고 드라이버는 상위 모듈의 역할을 수행한다. 하향식 통합은 상위 모듈부터 시작하고 스텁을 사용하며, 상향식 통합은 최하위 모듈부터 시작하고 드라이버를 사용한다. 하향식 통합이 초기 구조를 보여줄 수 없다고 하거나 상향식 통합에서 스텁을 사용한다고 하면 틀리다. 알파 테스트와 베타 테스트를 인수 테스트가 아닌 다른 단계로 돌리는 선지도 주의한다.

대표 기출 3문항

알파, 베타 테스트와 가장 밀접한 연관이 있는 테스트 단계는?

  1. 단위 테스트
  2. 인수 테스트
  3. 통합 테스트
  4. 시스템 테스트
정답과 해설 보기

정답 ② · 알파 테스트(Alpha Test)와 베타 테스트(Beta Test)는 개발된 소프트웨어가 실제 사용 환경에서 요구사항을 만족하는지 확인하기 위해 수행하는 인수 테스트(Acceptance Test)의 일종입니다. 알파 테스트는 개발자의 환경에서 통제된 상태로 수행되며, 베타 테스트는 실제 고객의 환경에서 고객이 직접 소프트웨어를 사용해 보며 피드백을 제공합니다.

알파와 베타 테스트는 실제 사용자 관점에서 요구사항 충족 여부를 검증하는 인수 테스트의 하위 단계입니다.

테스트 드라이버(Test Driver)에 대한 설명으로 틀린 것은?

  1. 시험대상 모듈을 호출하는 간이 소프트웨어이다.
  2. 필요에 따라 매개 변수를 전달하고 모듈을 수행한 후의 결과를 보여줄 수 있다.
  3. 상향식 통합 테스트에서 사용된다.
  4. 테스트 대상 모듈이 호출하는 하위 모듈의 역할을 한다.
정답과 해설 보기

정답 ④ · 테스트 드라이버에 대한 틀린 설명을 고르는 문제이다. 테스트 드라이버는 테스트 대상 모듈을 호출하는 상위 모듈의 역할을 수행하는 간이 소프트웨어로, 매개 변수를 전달하고 수행 결과를 보여줄 수 있다.

테스트 드라이버는 상위 모듈의 역할을 하므로 하위 모듈 역할을 하는 ④이 명백히 틀린 설명이다.

통합 테스트(Integration Test)와 관련한 설명으로 틀린 것은?

  1. 시스템을 구성하는 모듈의 인터페이스와 결합을 테스트하는 것이다.
  2. 하향식 통합 테스트의 경우 넓이 우선(Breadth First) 방식으로 테스트를 할 모듈을 선택할 수 있다.
  3. 상향식 통합 테스트의 경우 시스템 구조도의 최상위에 있는 모듈을 먼저 구현하고 테스트한다.
  4. 모듈 간의 인터페이스와 시스템의 동작이 정상적으로 잘되고 있는지를 빨리 파악하고자 할 때 상향식 보다는 하향식 통합 테스트를 사용하는 것이 좋다.
정답과 해설 보기

정답 ③ · 상향식 통합 테스트는 프로그램의 하위 모듈부터 상향식으로 통합하며 테스트하는 방식입니다. 이때 하위 모듈들을 그룹화하여 묶어주는 역할을 하는 가상의 모듈인 '드라이버(Driver)'를 작성해야 하며, 최하위 모듈부터 테스트를 시작합니다.

상향식 통합 테스트는 최하위 모듈부터 시작하므로 최상위부터 시작한다는 ③이 명백한 오답이다.

자주 묻는 물음

테스트 스텁과 테스트 드라이버의 역할 구분을 확인한다.
테스트 스텁은 하위 모듈의 역할을 대신하고, 테스트 드라이버는 상위 모듈의 역할을 수행한다. 인자를 넘겨주고 결과를 받는 역할은 테스트 드라이버에 속한다.
하향식 통합과 상향식 통합의 시작 위치와 필요한 임시 모듈을 확인한다.
하향식 통합은 상위 모듈부터 시작해 스텁을 사용하고, 상향식 통합은 최하위 모듈부터 시작해 드라이버를 사용한다.
알파 테스트와 베타 테스트가 속하는 테스트 단계를 확인한다.
알파 테스트와 베타 테스트는 실제 사용자 관점에서 요구사항 충족 여부를 검증하는 인수 테스트의 하위 단계이다. 알파 테스트는 개발사 내부 통제 환경에서, 베타 테스트는 실제 고객 환경에서 수행한다.
이 개념 문제 10개 풀기 회원용

정보처리기사 풀이 세트에서 이 개념의 문제 10개를 바로 풀어 보세요.