소프트웨어 테스팅

초보자를 위한 안정성 테스트

2021년 10월 30일

안정성 테스트는 일종의 비 기능 소프트웨어 테스트 장기간에 걸쳐 소프트웨어 애플리케이션의 효율성과 기능을 지속적으로 측정하기 위해 수행됩니다. 안정성 테스트의 주요 목표는 소프트웨어 응용 프로그램이 전체 사용 범위를 실행하여 특정 시점에 정기적으로 사용하는 동안 충돌하거나 장애 조치되는지 확인하는 것입니다.

안정성 테스트는 개발된 제품의 표준 작동 용량을 넘어 종종 중단점까지 효율성을 확인합니다. 정상적인 상황에서 시스템의 동작을 확인하는 것보다 부하가 걸리는 제품의 소프트웨어 신뢰성, 오류 처리, 견고성 및 확장성이 더 중요합니다. 이 테스트는 소프트웨어 구성 요소를 최대로 강조하기 위한 것입니다.

목차

사람이 알든 모르고 새 휴대전화를 구입하면 안정성 테스트를 수행합니다. 사용자는 장치 메모리에 많은 문서, 이미지, 사진, 비디오 등을 저장합니다.

그들은 너무 많은 데이터가 저장되어 장치의 성능에 영향을 미쳤는지 확인할 것입니다. 이것은 안정성 테스트의 예입니다. 저장된 빅 데이터로 인해 때때로 장치가 끊길 수 있으며 장치의 성능을 다시 얻으려면 일부 데이터를 삭제하거나 임시 파일을 지워야 합니다. 그 후에 사용자는 시스템의 용량에 대해 명확하게 알 수 있습니다.

또 다른 예는 온라인 구매 포털입니다. 판매 기간 동안 많은 사람들이 웹 포털에서 상품을 구매합니다. 웹사이트의 성능은 사용자의 기대를 만족시켜야 합니다. 따라서 테스터는 해당 기간 동안 이러한 사이트에서 발생할 가능성이 높은 예상되는 '러시'를 염두에 두고 웹 사이트를 테스트해야 합니다.

안정성 테스트 프로세스

  • 테스트의 범위와 목표를 결정하려면 부하 테스트 실행 중에 Application Server가 충돌하지 않는지 확인해야 합니다.
  • 비즈니스 문제를 결정하고, 시스템 성능을 확인하고, 최종 사용자 관점에 따라 로드합니다.
  • 테스트 계획 작성, 테스트 케이스 검토, 테스트 실행 등과 같은 다양한 책임과 역할을 할당합니다.
  • 지정된 시간 내에 테스트 결과물을 보장합니다.
  • 적절한 부하 테스트 도구와 경험 팀이 동일하게 존재하는지 확인합니다.
  • 결함 추적 및 보고를 결정하고 요구 사항과의 적절한 매핑을 수행합니다.
  • 테스트에 수반되는 비용과 위험을 측정합니다. 이것은 CPU 사용률 및 메모리 측면에서 각 실행의 값을 결정합니다.

안정성 테스트 기법

안정성 테스트는 소프트웨어의 성능을 향상시키는 것을 목표로 합니다. 많은 통계를 수집해야 하고 테스트를 수행하는 동안 측정해야 합니다.

1. 디스크: 안정성 테스트 시 제공되는 디스크 공간의 활용도를 확인하는 것은 필수입니다.

2. 메모리 사용량 : 이 테스트에서 확인해야 할 중요한 요소는 메모리 사용량입니다.

3. CPU : CPU는 또한 모든 사용자 요청을 처리하는 데 효율적이어야 합니다.

4. 초당 트랜잭션 : 완료된 거래의 총 수를 기록해야 합니다. 트랜잭션은 성공하거나 실패할 수 있습니다. 이것은 시스템의 실제 트랜잭션 부하에 대한 메시지를 얻는 데 도움이 됩니다.

5. 처리량 : 주어진 시간에 사용자가 서버로부터 받는 데이터의 양이 시스템의 처리량입니다. 시스템의 처리량은 바이트 단위로 측정됩니다. 생성된 이 데이터는 사용자가 생성하고 관리하는 로드의 양을 얻는 데 도움이 됩니다.

6. 초당 조회수 : 현재 서버에 있는 사용자 수를 이해하는 데 도움이 됩니다. 이를 통해 서버의 적중 횟수에 대해 사용자당 발생하는 부하를 확인할 수 있습니다.

7. 거래 응답 : 이 테스트를 통해 평가판 동안 트랜잭션을 수행하는 데 걸리는 평균 시간을 알 수 있습니다. 서버의 성능을 파악하고 특정 시간에 수행할 수 있는 트랜잭션 수를 결정하는 데 도움이 됩니다. 이 정보는 서버, 애플리케이션 서버 및 데이터베이스 서버에 요청을 보내는 데 필요한 시간을 평가하는 데 도움이 될 수 있습니다.

CPU 성능 안정성 테스트를 위한 테스트 케이스

  • 시스템의 상한선 확인.
  • 장치를 충돌시키거나 복원하는 방법.
  • 주문당 완료된 트랜잭션의 누적 수입니다.
  • 거래 반응이 일정하게 유지되거나 시간이 지남에 따라 상승하는지 여부.
  • 무거운 하중에서 기계가 작동하는 방식.
  • 부하가 크면 그 반응과 행동.

장점

  • 보다 안정적인 시스템을 확보하는 데 도움이 됩니다.
  • 사용자가 많아도 중단 없이 작업을 계속할 수 있음을 보장합니다.
  • 없는지 확인합니다. 메모리 누수 , 예상치 못한 실패로 이어질 수 있습니다.
  • 시스템의 효율성을 모니터링합니다.

단점

  • CPU 또는 프로세서의 추가 부하로 인해 시스템이 충돌하여 데이터 손실이 발생할 수 있습니다.

안정성 테스트를 수행하지 않은 경우 문제

직면할 수 있는 오류,

  • 시스템이 충돌합니다.
  • 시스템이 느려집니다.
  • 시스템에 기능 문제가 있습니다.
  • 디자인은 유선 동작을 보여줍니다.

안정성 테스트 사용자가 많은 시스템을 사용하고 시스템이 예상 부하를 지원할 수 있는지 확인하기 위해 성능 매개변수를 측정하는 작업이 포함됩니다.

최고의 안정성 테스트 도구

시스템 안정성 테스터

시스템 안정성 테스터는 SuperPI와 GUI 및 CLI의 다중 플랫폼 오픈 소스 클론입니다. CPU 및 RAM 굽기, 스트레스 및 벤치마킹 . 이 도구는 컴퓨터가 Pi의 값을 최대 1억 2,800만 자리까지 계산하도록 하는 방법을 사용합니다. 테스트 실행이 벤치마킹에 사용되는 한 프로세서의 용량을 소모합니다.

특징

  • 명령줄 인터페이스
  • 모드 버튼.
  • 확장된 소스 코드 정리 및 변경.
  • OS에서 볼 수 있는 설치된 물리적 메모리를 표시합니다.
  • Solaris 10/Sparc를 지원합니다.
  • AIX 5.3/Power를 지원합니다.

가격

사용은 무료입니다

인텔 연소 테스트

이 도구는 CPU를 최대 한계까지 밀어붙이는 데 중점을 둡니다. 이 상태에서 살아남으면 안정성을 확인할 수 있습니다.

특징

  • 더 나은 외관.
  • 직관적인 인터페이스.
  • 실시간 오류 확인.

가격

사용은 무료입니다

자주 묻는 질문

안정성 테스트란 무엇입니까?

안정성 테스트는 장기간에 걸쳐 소프트웨어 애플리케이션의 효율성과 기능을 지속적으로 측정하기 위해 수행되는 일종의 비기능 소프트웨어 테스트입니다. 안정성 테스트의 주요 목표는 소프트웨어 응용 프로그램의 전체 사용 범위를 실행하여 특정 시점에 정기적으로 사용하는 동안 소프트웨어 응용 프로그램이 충돌하거나 장애 조치되는지 확인하는 것입니다.

안정성 테스트의 목적은 무엇입니까

시스템의 내구성을 찾는 데 도움이 됩니다.
애플리케이션의 안정성을 찾아 개발자의 신뢰를 높입니다.
스트레스가 많은 환경에서 시스템의 결함을 찾으십시오.
제품의 전반적인 평가 및 효과.
시스템이 큰 프로그램을 처리할 수 있는지 확인합니다.
응용 프로그램의 응답 시간을 테스트합니다.
데이터베이스 연결을 확인합니다.

안정성 테스트를 기반으로 하는 소프트웨어 테스트 수명 주기는 무엇입니까?

의 다른 단계는 다음과 같습니다.
요구 사항 분석
테스트 계획
테스트 케이스 개발
테스트 환경 설정
테스트 케이스 실행
테스트 종료