정보처리기사 실기 문제 정리 - 10. 애플리케이션 테스트 관리

Cold Ui·2023년 7월 21일
0

정보처리기사 실기

목록 보기
10/12
post-thumbnail

10. 애플리케이션 테스트 관리

01. 애플리케이션 테스트 케이스 설계

기출 문제

  1. 살충제 패러독스는 동일한 테스트 케이스에 의한 반복적 테스트는 새로운 버그를 찾지 못한다는 원리로 테스트 케이스의 정기적 리뷰와 개선 및 다른 시각에서의 접근이 필요하다는 의미를 담고있다.

  2. 블랙박스 테스트

    • 동치 분할 테스트, 경곗값 분석 테스트가 존재
  3. 1-2-3-4-5-6-1, 1-2-4-5-6-7

  4. 샘플링 오라클

    • 테스트 오라클 중 특정한 몇 개의 입력값에 대해서만 기대하는 결과를 제공해주는 오라클
  5. 동등분할 테스트

    • 입력 데이터의 영역을 유사한 도메일 별로 유횻값/무횻값을 그룹핑하여 대푯값 테스트 케이스를 도출하여 테스트하는 기법
    • 데이터 영역에 대해 경계에 가까운 값이 아닌 영역 내에 있는 일반 값들로 테스트하고 있으므로 동등분할 테스트이다.
  6. 1) 경곗값 분석 테스트 2) 동등분할 테스트

  7. 원인-결과 그래프 테스트

    • 그래프를 활용하여 입력 데이터 간의 관계 및 출력에 미치는 영향을 분석하여 효용성이 높은 테스트케이스를 선정하여 테스트하는 기법
  8. 1) 구문 커버리지
    - 최소 한번은 모든 문장 수행

    2) 결정 커버리지

    • 결정 검증 기준이라고도 함. 조건별 True/False일 때 수행

    3) 조건 커버리지

    • 전체 조건식에 상관없이 개별 조건식의 True/False에 대해 수행
  9. 1) 단위 테스트

    • 개별 모듈, 서브루틴이 정상적으로 실행되는지 확인

    2) 통합 테스트

    • 인터페이스 간 시스템이 정상적으로 실행되는지 확인
  10. 1) 테스트 조건

    • 테스트 간의 종속성, 테스트 수행 전 실행되어야 할 고려사항 등

    2) 테스트 데이터 (입력 데이터)

    • 테스트 실행 시 입력값, 선택 버튼, 체크 리스트 값 등

    3) 예상 결과 (기대 결과)

    • 테스트 실행 후 출력 데이터, 결과 화면, 기대 동작 등
  11. 1) Boundary Value Analysis - 경곗값 분석 테스트
    2) Equivalence Partitioning - 동등분할 테스트
    3) Cause-Effect Graph - 원인/결과 그래프 테스트

  12. 1) 단위 테스트
    2) 통합 테스트
    3) 시스템 테스트
    4) 인수 테스트

  13. 1) 베타 테스트

    • 사용자의 환경에서 개발자 없이 수행하는 테스트 방법으로, 사용자가 오류정보를 수집하여 개발자에게 보내면 개발자가 취합하여 오류를 수정하는 방식

    2) 알파 테스트

    • 개발자 환경에서 통제된 상태로 개발자와 함께 수행하는 방법으로 사용자가 프로그램을 수행하는 것을 개발자가 모니터링하여 오류를 수정한다.
  14. Regression 테스트

    • 회귀 테스트는 오류를 제거하거나 수정한 시스템에서 오류 제거와 수정에 의해 새로이 유입된 오류가 없는지 확인하는 일종의 반복 테스트 기법이다.
    • 소프트웨어 수정 시 다른 오류가 흘러들어오므로 이를 확인하기 위하여 소프트웨어에 변경 사항이 발생할 때마다 회귀 테스트를 반복적으로 수행한다.
  15. Boundary Value Analysis

예상 문제

-생략-


02. 애플리케이션 통합 테스트

기출 문제

  1. 정적 분석 도구
    • 애플리케이션을 실행하지 않고, 소스 코드에 대한 코딩 표준, 코딩 스타일, 코드 복잡도 및 남은 결함을 발견하기 위해 사용하는 도구
  2. 1) 상향식 2) 테스트 드라이버
  3. 스텁

예상 문제

  1. 1) 깊이 우선 방식 : M1-M2-M3-M4-M5-M6-M7-M8
    2) 너비 우선 방식 : M1-M2-M4-M8-M3-M5-M6-M7

  2. 1) 드라이버 2) 스텁 3) 빅뱅

  3. 샌드위치 통합 테스트

    • 상향식 통합 테스트와 하향식 통합 테스트 방식을 결합한 테스트 방식이다.
    • 하위 프로젝트가 있는 큰 규모의 통합 테스트에서 사용하는 방식으로 병렬 테스트가 가능하고 시간 절약이 가능하다.
    • 스텁과 드라이브의 필요성이 매우 높은 방식이고, 비용이 만이 소요된다.
  4. 1) 결함 등록 2) 결함 확인

  5. 오류

  6. 결함 심각도


03. 애플리케이션 성능 개선

기출 문제

  1. 1) 처리량 2) 응답 시간 3) 경과 시간
  2. 리팩토링의 목적에는 복잡한 코드의 단순화, 소스의 가독성을 통해 유지보수성 향상, 생산성 향상, 품질 향상이 있다.

예상 문제

  1. 1) 응답 시간 2) 경과 시간
  2. 1) 추상화 2) Logj4로거
  3. 1) 단순성 2) 응집도 3) 결합도
  4. 외계인 코드는 아주 오래되거나 참고문서 또는 개발자가 없어 유지보수 작업이 아주 어려운 코드
  5. 정적 분석 도구는 작성된 소스 코드를 실행시키지 않고, 코드 자체만으로 코딩 표준 준수 여부, 코딩 스타일 적정 여부, 잔존 결함 발견 여부를 확인하는 코드 분석 도구이다.
  6. 리팩토링의 목적에는 복잡한 코드의 단순화, 소스의 가독성을 통해 유지보수성 향상, 생산성 향상, 품질 향상이 있다.

단원 종합문제

-생략-

profile
안녕하세요. 차니의 개발 블로그 입니다!

1개의 댓글

comment-user-thumbnail
2023년 7월 22일

중간에 통합테스트 드라이브 쓰셧는데 드라이브 라도해도 맞나요??

이번 정처기에 스텁 드라이버 나왔는데 드라이브 라고 적은거 같아서요 ㅠㅠ

답글 달기