구성 테스트란 무엇입니까? 테스트 케이스 예시

구성 테스트

구성 테스트 기능 요구 사항을 평가하고 소프트웨어 응용 프로그램이 결함 없이 작동하는 최적의 구성을 찾기 위해 소프트웨어와 하드웨어의 여러 조합으로 소프트웨어 응용 프로그램을 테스트하는 소프트웨어 테스트 기술입니다.

위에서 설명한 대로 구성 테스트는 소프트웨어와 하드웨어의 여러 조합을 사용하여 테스트 중인 애플리케이션을 테스트해야 하는 소프트웨어 테스트입니다.

구성 테스트 예

데스크톱 애플리케이션의 예를 통해 이를 이해해 보겠습니다.

일반적으로 데스크톱 애플리케이션은 2계층 또는 3계층으로 구성됩니다. 여기서는 다음을 사용하여 개발된 3계층 데스크톱 애플리케이션을 고려하겠습니다. Asp.Net Client, Business Logic Server, Database Server로 구성되며 각 구성요소는 아래 플랫폼을 지원합니다.

  • 클라이언트 플랫폼 – Windows XP, Window7 OS, Window8 OS 등
  • 서버 플랫폼 – Windows 서버 2008 R2Windows 서버 2008 R2 Windows 서버 2012R2
  • 데이터베이스 –SQL 서버 2008, SQL 서버 2008R2, SQL 서버 2012 등

테스터는 위에서 언급한 플랫폼과 데이터베이스 버전의 조합으로 클라이언트, 서버 및 데이터베이스의 조합을 테스트하여 애플리케이션이 제대로 작동하고 실패하지 않는지 확인해야 합니다.

구성 테스트는 소프트웨어에만 국한되지 않고 하드웨어에도 적용 가능합니다. 따라서 테스트 중인 애플리케이션을 지원하는 프린터, 스캐너, 웹 캠 등과 같은 다양한 하드웨어 장치를 테스트하는 하드웨어 구성 테스트라고도 합니다.

구성 테스트

구성 테스트를 위한 전제 조건

구성 테스트를 시작하기 전에 모든 프로젝트에 대해 몇 가지 전제 조건을 따라야 합니다.

  • 소프트웨어와 하드웨어 구성의 다양한 조합으로 구성된 매트릭스 생성
  • 모든 구성을 테스트하기 어렵기 때문에 구성의 우선순위 지정
  • 우선순위에 따라 모든 구성을 테스트합니다.

구성 테스트의 목표

구성 테스트의 목적은 다음과 같습니다.

  • 애플리케이션이 구성 가능성 요구 사항을 충족하는지 확인하기 위해 애플리케이션 검증
  • 테스트 중에 효율적으로 발견되지 않은 결함을 식별하는 데 도움이 되는 오류를 수동으로 발생시킵니다(예: 시간대, 언어, 날짜 시간 형식 등과 같은 시스템의 지역 설정 변경).
  • 테스트 중인 애플리케이션의 최적 구성을 결정합니다.
  • Load Balancer 등의 하드웨어 자원 추가 및 수정, 메모리 크기 증감, 다양한 프린터 모델 연결 등을 통한 시스템 성능 분석
  • 우선순위에 따라 시스템 효율성을 분석하고, 최적의 시스템 구성을 달성하기 위해 사용 가능한 리소스를 사용하여 테스트가 얼마나 효율적으로 수행되었는지를 분석합니다.
  • 시스템이 얼마나 효과적으로 수행되는지 확인하기 위해 지리적으로 분산된 환경에서 시스템을 확인합니다. 예: 다른 위치에 있는 서버와 다른 위치에 있는 클라이언트의 경우 시스템 설정에 관계없이 시스템이 제대로 작동해야 합니다.
  • 구성 변경에 관계없이 버그가 얼마나 쉽게 재현되는지 확인합니다.
  • 쉽게 식별할 수 있는 버전을 적절하게 문서화하고 유지 관리하여 애플리케이션 항목의 추적 가능성을 보장합니다.
  • 애플리케이션 항목이 전체 과정에서 얼마나 관리 가능한지 확인 소프트웨어 개발 수명주기.

구성 테스트를 수행하는 방법

이 섹션에서는 구성 테스트 유형에 대해 따라야 할 전략에 대해 논의할 것이며 아래에 언급된 두 가지 유형의 구성 테스트가 있습니다.

  • 소프트웨어 구성 테스트
  • 하드웨어 구성 테스트

소프트웨어 구성 테스트

소프트웨어 구성 테스트는 여러 OS, 다양한 소프트웨어 업데이트 등을 사용하여 테스트 중인 응용 프로그램을 테스트하는 것입니다. 소프트웨어 구성 테스트는 테스트에 사용되는 다양한 소프트웨어를 설치하고 제거하는 데 시간이 걸리기 때문에 시간이 많이 걸립니다.

소프트웨어 구성을 테스트하기 위해 따르는 접근 방식 중 하나는 가상 머신에서 테스트하는 것입니다. 가상 머신은 소프트웨어에 설치되어 물리적 하드웨어처럼 작동하는 환경이며 사용자는 물리적 머신과 동일한 느낌을 갖게 됩니다. Virtual Machines는 실시간 구성을 시뮬레이션합니다.

시간이 많이 걸리는 여러 물리적 컴퓨터에 소프트웨어를 설치하고 제거하는 대신 항상 가상 컴퓨터에 애플리케이션/소프트웨어를 설치하고 테스트를 계속하는 것이 좋습니다. 이 프로세스는 여러 가지 방법으로 수행할 수 있습니다. 가상 머신, 이는 테스터의 작업을 단순화합니다.

소프트웨어 구성 테스트는 일반적으로 다음과 같은 경우에 시작할 수 있습니다.

  • 테스트할 구성 가능성 요구 사항이 지정됩니다.
  • 테스트 환경이 준비되었습니다
  • 테스트 팀은 구성 테스트에 대한 교육을 잘 받았습니다.
  • 출시된 빌드는 단위 및 통합 테스트를 통과했습니다.

일반적인 Test Strategy 소프트웨어 구성 테스트를 테스트하기 위해 수행되는 작업은 여러 소프트웨어 구성에 걸쳐 기능 테스트 모음을 실행하여 테스트 중인 응용 프로그램이 결함이나 오류 없이 원하는 대로 작동하는지 확인하는 것입니다.

또 다른 전략은 테스트 케이스를 수동으로 실패시키고 효율성을 검증하여 시스템이 제대로 작동하는지 확인하는 것입니다.

예:

모든 필수 구성 요소가 존재하는 환경에서 애플리케이션이 호스팅될 때 여러 브라우저에서 호환성을 테스트해야 하는 뱅킹 애플리케이션이 있다고 가정해 보겠습니다. 통합 테스팅 테스트 랩에서.

그러나 동일한 응용 프로그램이 클라이언트 위치에 설치되어 있고 컴퓨터에 일부 소프트웨어 업데이트나 응용 프로그램이 직접 또는 간접적으로 종속된 버전이 누락된 경우 응용 프로그램이 실패할 가능성이 있습니다. 이러한 상황을 방지하려면 구성 가능성 요구 사항 중 일부를 제거하여 수동으로 테스트에 실패한 다음 테스트를 진행하는 것이 항상 권장됩니다.

구성 테스트

하드웨어 구성 테스트

하드웨어 구성 테스트는 일반적으로 실험실에서 수행되며, 실험실에서는 다양한 하드웨어가 연결된 물리적 시스템을 찾습니다.

빌드가 출시될 때마다 하드웨어가 연결된 모든 물리적 시스템에 소프트웨어를 설치해야 하며 애플리케이션이 제대로 작동하는지 확인하기 위해 각 시스템에서 테스트 스위트를 실행해야 합니다.

위 작업을 수행하려면 각 시스템에 소프트웨어를 설치하고, 하드웨어를 연결하고, 수동으로 실행하거나, 위에서 언급한 프로세스와 테스트 스위트를 실행하는 자동화하는 데 상당한 노력이 필요합니다.

또한, 하드웨어 구성 테스트를 진행하면서 테스트할 하드웨어의 종류를 구체적으로 명시하는데, 컴퓨터 하드웨어와 주변기기가 너무 많아서 모두 실행하는 것이 거의 불가능합니다. 따라서 사용자들이 어떤 하드웨어를 주로 사용하는지 분석하고 우선순위에 따라 테스트를 진행하는 것이 테스터의 임무가 됩니다.

샘플 테스트 케이스

하드웨어 호환성을 테스트하려면 뱅킹 시나리오를 고려하십시오. Note Counting Machine에 연결된 뱅킹 애플리케이션은 Rolex, Strob, Maxsell, StoK 등과 같은 다양한 모델을 사용하여 테스트해야 합니다.

Note Counting Machine을 테스트하기 위해 몇 가지 샘플 테스트 사례를 살펴보겠습니다.

  • 필수 구성 요소가 설치되지 않은 경우 롤렉스 모델과 애플리케이션의 연결 확인
  • 필수 구성요소 설치 시 롤렉스 모델과 애플리케이션의 연결 확인
  • 시스템이 메모를 올바르게 계산하고 있는지 확인하십시오.
  • 시스템이 음표를 잘못 계산하고 있는지 확인하십시오.
  • 변조된 메모 확인
  • 응답 시간 확인
  • 위조지폐 탐지 여부 확인 등

위의 테스트 사례는 하나의 모델에 대한 것이며, 시중에서 판매되는 모든 모델을 테스트 랩에서 설정하여 동일한 테스트를 수행해야 하는 어려운 작업입니다. 따라서 하드웨어 구성 테스트를 전문 기관에 아웃소싱하는 것이 좋습니다.

제품 개요

소프트웨어 엔지니어링에서 구성 테스트는 다른 테스트 유형과 마찬가지로 중요성이 부여되어야 합니다. 구성 테스트를 수행하지 않으면 최적의 시스템 성능을 분석하기 어렵고 소프트웨어에서 실행되어야 하는 호환성 문제가 발생할 수도 있습니다.