자격증/정보처리필기

[정보처리산업기사] 25강 애플리케이션 테스트

동호다찌 2022. 3. 31. 19:58
반응형

1. 애플리케이션 테스트의 개념

애플리케이션에 잠재되어 있는 결함을 찾아내는 일련의 행위 또는 절차이다.

  • 개발된 소프트웨어가 고객의 요구사항을 만족시키는지 확인하고 소프트웨어가 기능을 정확히 수행하는지 검증한다.
  • 테스트 실행 전 개발한 소프트웨어의 유형을 분류하고 특성을 정리해서 중점적으로 테스틑할 사항을 정리해야 한다.

 



2. 애플리케이션 테스트의 필요성

  • 테스트를 통해 프로그램 실행 전에 오류를 발견하여 예방
  • 반본적인 테스트로 신뢰도 향상
  • 단순한 오류 발견뿐만 아닌 새로운 오류의 유입도 예방
  • 최소한의 시간과 노력으로 많은 결함을 찾음

 


 

3. 애플리케이션 테스트의 기본 원리

  • 잠재적인 결함을 줄일 수 있지만 결함이 없다고 증명할 수는 없다. 즉 완벽한 소프트웨어 테스팅은 불가능하다.
  • 결함은 대부분 개발자의 특성이나 애플리케이션의 기능적 특징때문에 특정 모듈에 집중되어 있다. 애플리케이션의 20%에 해당하는 코드에서 전체 80%의 결함의 발견되다고 하여 파레토 법칙을 적용하기도 한다.

  • 동일한 테스트 케이스로 테스트를 반복하면 더 이상 결함이 발견되지 않는 살충제 패러독스 현상이 발생한다.
    이를 방지하기 위해서 테스트 케이스를 지속적으로 보완 및 개선해야한다.

  • 소프트웨어 특징, 환경, 역량 등 정황에 따라 테스트 결과가 달라질 수 있으므로, 다르게 수행해야 한다.

  • 결함을 모두 제거해도 요구사항을 만족시키지 못하면 품질이 높다고 할 수 없다.
    이는 오류-부재의 궤변이라고도 한다.

  • 테스트와 위험은 반비례한다. 테스트를 많이 하면 할 수록 위험을 줄인다.

  • 작은 부분에서 시작하여 점점 확대해서 진행해야 한다.

  • 개발자와 관계없는 별도의 팀에서 수행해야 한다.
반응형