소프트웨어 테스트 유형


Types of Software TestingStaticReview of DesignReview of All DocumentsCode InspectionData VerificationFunctionalGUIAPICore LevelPerformanceLoadStressVolumeCapacitySecurityWhite Box Security TestingAuthentication / AuthorizationEnvironmental andApplication Vulnerabilities
전체 크기 도표 열기

소프트웨어 테스트 유형

기능 테스트

기능 테스트는 명세에 기반한 테스트 케이스와 블랙박스 기법을 자주 사용해 소프트웨어가 고객 요구 사항을 충족하는지 확인합니다. 다음 점검 항목이 도움이 됩니다.

  1. 애플리케이션이 무엇을 해야 하는지 정확히 파악합니다.
  2. 유효한 입력과 유효하지 않은 입력을 포함한 적절한 테스트 데이터를 준비합니다.
  3. 해당 데이터의 출력이 기능 명세와 일치하는지 확인합니다.
  4. 필수 시나리오를 포함하고 위험이 가장 높은 부분을 먼저 확인합니다. 가능한 모든 시나리오를 테스트하기는 현실적으로 어렵습니다.
  5. 각 입력의 실제 결과를 기록하고 예상 출력과 비교합니다.

여러 테스트 수준에서, 그리고 변경 후에 기능을 확인합니다.

  1. 단위 테스트
  2. 통합 테스트
  3. 시스템 테스트
  4. 회귀 테스트
  5. 인수 테스트

비기능 테스트

성능, 보안, 사용자 인터페이스 품질은 중요한 비기능 요구 사항입니다. 비기능 테스트는 이러한 속성을 확인합니다. 주요 유형은 다음과 같습니다.

  1. 성능 테스트
  2. 사용성 테스트
  3. 보안 테스트
  4. 이식성 테스트

사용성 테스트

사용성 테스트는 소프트웨어를 얼마나 쉽게 사용할 수 있는지 확인합니다. 이 블랙박스 접근 방식은 세 가지를 묻습니다. 사용하기 편한가요? 사용자가 조작할 수 있나요? 사용법을 배울 수 있나요? 사용성은 다음 측면을 포함합니다.

  • 사용자가 시스템을 처음 쓸 때 얼마나 쉽게 적응하는지.
  • 사용자가 작업을 얼마나 효율적이고 빠르게 완료하는지.
  • 한동안 쓰지 않은 시스템을 얼마나 쉽게 다시 사용할 수 있는지.
  • 사용자가 오류를 겪는지, 그리고 얼마나 쉽게 작업을 재개할 수 있는지.
  • 사용자가 이용 경험에 만족하는지.
사용성 테스트는 품질과 사용 편의성에 대한 신뢰를 높입니다. 고객을 만족시키고 비용 대비 효과를 얻도록 꼼꼼히 계획하세요. 테스트 중 임의로 조작하면 정해진 테스트가 놓친 결함을 발견할 수 있습니다.

그래픽 사용자 인터페이스 테스트

그래픽 사용자 인터페이스(GUI) 테스트는 인터페이스가 올바르게 동작하고 정해진 품질 기준을 충족하는지 확인합니다. 다음 요소를 점검하세요.

  • 배치
  • 색상
  • 글꼴
  • 글자 크기
  • 레이블
  • 텍스트 상자의 기능
  • 텍스트 서식
  • 설명 문구
  • 버튼
  • 목록
  • 아이콘
  • 링크
  • 콘텐츠
  • 단축키
  • 시스템이 작업하는 동안 표시되는 모래시계 등의 처리 표시기
GUI 테스트는 담당자의 필요에 따라 수동 또는 자동으로 진행할 수 있습니다. 때로는 회사 개발팀이나 테스트팀 대신 외부 기관이 수행합니다.

그래픽 사용자 인터페이스 외부 테스트

그래픽 사용자 인터페이스는 애플리케이션의 외관과 조작 방식을 결정합니다. GUI 외부 테스트는 명령줄 인터페이스, 일괄 처리, 유스케이스를 시작하는 이벤트 등 시각적 인터페이스 밖의 상호 작용을 다룹니다.

이식성 테스트

이식성 테스트는 환경 변화가 소프트웨어의 동작과 성능에 어떤 영향을 주는지 확인합니다. 예를 들어, 애플리케이션을 여러 운영체제에서 테스트하거나 웹 애플리케이션을 여러 브라우저에서 테스트하세요. 고객이 둘 이상의 플랫폼을 사용하려는 경우 중요합니다.

이식성 테스트는 시스템 테스트의 일부입니다. 여러 환경에 소프트웨어를 설치하거나 여러 플랫폼에서 실행 파일을 빌드해 실행합니다. 설계와 개발 중에 이식성 요구 사항을 고려하세요. 통합 테스트가 끝나면 적절한 환경에서 이 테스트를 수행합니다.

보안, 인증, 인가 테스트

보안 테스트는 보안 취약점을 찾고 필요할 때 고객의 기밀 정보를 보호할 수 있는지 확인합니다. 인증과 인가는 두 가지 주요 영역입니다.

인증은 애플리케이션에 접속하려는 사람의 신원을 확인합니다. 사용자 이름과 비밀번호를 사용하는 방법이 한 예입니다. 조합이 틀리면 요청한 신원이 확인되지 않아 접근이 거부됩니다.

인가는 제한된 데이터, 기능, 유스케이스에 대한 접근을 제어합니다. 인증을 통과해도 모든 항목에 접근할 수는 없습니다. 예를 들어 소셜 미디어에 로그인하면 본인 계정 정보를 볼 수 있습니다. 다른 사람의 계정은 계속 보호됩니다.

보안 테스트는 기밀성, 무결성, 가용성, 부인 방지, 데이터 보안, SQL 삽입, 교차 사이트 스크립팅(XSS) 등도 다룹니다. 그 자체로 전문 분야입니다.

데이터 및 데이터베이스 무결성 테스트

데이터 무결성 테스트는 저장된 데이터가 정확하고 예상한 결과를 내는지 확인합니다. 빈 데이터를 조회할 수 있는지, 저장 전에 유효성을 검사하는지, 저장된 데이터를 갱신할 수 있는지, 필요한 데이터 파일 유형을 모두 테스트하는지 확인합니다. 목표는 생명주기 전체에 걸쳐 데이터의 정확성과 일관성을 유지하는 것입니다.

데이터베이스 무결성 테스트는 데이터베이스 접근, 데이터 관리와 처리에 사용하는 방식과 절차를 확인합니다. 데이터가 손상되거나 실수로 생성, 갱신, 삭제되어서는 안 됩니다. 각 조건을 점검하는 테스트 케이스를 포함하세요.

결함 허용과 장애 조치 테스트

결함 허용 테스트는 실제 환경에서 장애가 발생할 때 애플리케이션이 어떻게 대응하는지 확인합니다. 네트워크 연결 오류, 애플리케이션 서버 연결 문제, 데이터베이스 연결 실패 등이 시나리오에 포함됩니다.

장애 조치 테스트는 하드웨어 장애나 시스템 중단처럼 심각한 문제가 발생한 뒤 시스템이 대기 구성 요소나 서비스로 전환되는지 확인합니다. 전환 중에 핵심 작업이 계속되는지 살펴보세요. 이후 복구 테스트로 원래 서비스가 예상 상태로 돌아오는지 확인할 수 있습니다.

구성 및 배포 테스트

구성 테스트는 다양한 시스템 구성에서의 성능을 확인합니다. 테스트 환경의 응답 시간과 예상 성능에 필요한 구성을 파악하는 데 도움이 됩니다. 새 환경과 하드웨어 사양에 대한 호환성을 확인해 플랫폼 간 이전도 지원합니다.

배포 테스트는 배포된 시스템이 제대로 동작하는지 확인합니다. 속도 저하나 중단을 찾고, 실제 조건에서 동작을 확인하며, 지정된 폴더에 소프트웨어가 올바르게 배포되었는지 검사하세요.

회귀 테스트

발견한 결함은 수정을 요청하세요. 수정으로 원래 문제가 해결되었는지 확인합니다. 그런 다음 회귀 테스트로 변경된 부분, 애플리케이션의 다른 부분 또는 비즈니스 로직에 원하지 않는 영향이 있는지 확인합니다. 결과를 바탕으로 다음 테스트 단계에 들어갈 준비가 되었는지 판단합니다.

성능 테스트

성능 테스트는 네트워크 지연, 데이터 표시, 데이터베이스 트랜잭션 처리, 서버 간 부하 분산을 살핍니다. 개별 기능의 결함을 넘어 성능 문제에 초점을 맞춥니다. 안정성, 확장성, 속도, 응답 시간, 데이터 표시 성능을 평가하는 데 활용하세요.

부하 테스트 및 성능 벤치마킹

부하 테스트는 최대 부하나 최고 사용량에서 소프트웨어의 동작을 확인합니다. JMeter, LoadRunner, Silk Performer와 같은 도구는 가상 사용자를 만들고 스크립트를 실행해 동시 접속을 재현합니다. 테스트 담당자는 가상 사용자 수를 제어하고 시스템 동작을 관찰합니다.

스트레스 테스트

스트레스 테스트는 의도적으로 비정상적인 조건을 만들고 성능을 관찰합니다. 허용 범위를 넘는 부하를 가하거나 자원을 줄여 소프트웨어가 실패하는 지점을 찾습니다. 데이터베이스 중지와 재시작, 네트워크 포트의 임의 종료나 재시작, 많은 자원을 소비하는 프로세스의 실행 등이 예입니다.

Testing TypeUnit TestingIntegration TestingSystem TestingAcceptance Testing
Functional TestingYesYesYesYes
Configuration TestingNoNoYesYes
User Interface TestingNoNoYesYes
Usability TestingNoNoYesYes
Installation TestingNoNoYesYes
Document TestingYesYesYesYes
Performance TestingYesYesYesYes
Security TestingNoYesYesYes
Scalability TestingNoYesYesNo
전체 크기 도표 열기

소프트웨어 테스트 유형 요약



무료 온라인 교육을 통해 소프트웨어 테스트 인증 시험에 합격할 수 있음을 보장합니다!

  1. 01

    온라인 등록

    공인 인증을 선택하고 등록을 완료하세요.

  2. 02

    접속 코드 받기

    개인 시험 접속 코드가 이메일로 즉시 발송됩니다.

  3. 03

    준비하고 시험 응시하기

    무료 교육으로 학습하고 온라인에서 객관식 50문항에 답하세요.

  4. 04

    평생 유효한 인증 취득

    전 세계에서 유효한 인증서와 검증 가능한 디지털 배지를 받으세요.

Accredited Software Test Manager Certification™ 인증서 견본
인증 신청하기

무료 프리미엄 온라인 교육

Software Testing Revealed 제2판을 준비했습니다.

모든 주요 산업 분야에서 활동하는 저명한 기업 및 팀 리더, 소프트웨어 테스트 코치, 멘토, 전문가 및 권위자와 함께 교육을 만들었습니다. International Software Test Institute™를 방문하는 누구나 이용할 수 있습니다. 다음 두 항목에서 자료를 확인할 수 있습니다. 무료 소프트웨어 테스트 도서 및 무료 프리미엄 소프트웨어 테스트 교육 두 항목 모두 상단 메뉴에 있습니다.

이 자료는 저작권으로 보호되는 International Software Test Institute™의 지식재산입니다. 저희의 전문 지식을 공유하면 소프트웨어 테스트 전문가를 돕고 이 분야의 발전에 기여할 수 있기에 모두에게 무료로 공개합니다.

인증 시험은 객관식입니다. 온라인 교육으로 시험에 합격하고 소프트웨어 테스트 인증을 받는 데 필요한 지식을 쌓으세요.

무료 프리미엄 온라인 교육을 통해 소프트웨어 테스트 인증 시험에 합격할 수 있음을 보장합니다!