소프트웨어 테스팅

초보자를 위한 스트레스 테스트

2021년 10월 30일

스트레스 테스트는 다음 중 하나입니다. 성능 시험 애플리케이션의 안정성과 신뢰성을 확인하는 유형. 스트레스 테스트는 혹독한 조건에서 애플리케이션의 오류 처리 기능과 견고성을 측정하고 빡빡한 상황에서 충돌하지 않도록 하는 것을 목표로 합니다. 일반 작동 지점 이상을 테스트하고 극한 조건에서 애플리케이션이 어떻게 작동하는지 평가합니다.

스트레스 테스트는 지구력 테스트라고도 합니다. 이러한 유형의 테스트에서 테스트 중인 애플리케이션(AUT)은 견딜 수 있는 용량을 알기 위해 짧은 기간 동안 스트레스를 받습니다. 스트레스 테스트의 가장 중요한 용도는 시스템, 소프트웨어 또는 하드웨어가 중단되는 한계를 결정하는 것입니다. 그것은 시스템이 극한 조건에서 효과적이고 효율적인 오류 관리를 입증하는지 여부를 확인합니다.

목차

스트레스 테스트 과정

    스트레스 테스트 계획:시스템 데이터를 수집하고 스트레스 테스트 목표를 분석 및 정의합니다.조정 및 최적화: 구성을 변경하고, 시스템을 미세 조정하고, 원하는 계획을 충족하도록 코드를 최적화합니다. 기준 . 성능 스크립트 생성:성능 테스트 스크립트를 만들고 스트레스 시나리오에 대한 테스트 데이터를 생성합니다. 스크립트 실행: 여기에서 스트레스를 실행합니다. 테스트 성능 스크립트를 작성하고 스트레스 결과를 저장합니다. 결과 분석:테스트 결과를 분석하고 병목 현상을 식별합니다.

스트레스 테스트의 필요성

  • 시스템이 비정상적인 조건에서 작동할 수 있는지 확인합니다.
  • 시스템에 스트레스가 있을 때 적절한 오류 메시지를 표시합니다.
  • 스트레스 테스팅을 실행하여 극한 상황에 대비하는 것이 좋습니다.
  • 시스템 장애라는 극한 상황에서는 막대한 수익 손실을 초래할 수 있습니다.

장점

  • 애플리케이션이 속도 저하 외에 오류 및 오류를 일으키기 전에 목표 로드를 초과할 수 있는 정도에 대한 평가를 제공합니다.
  • 시스템에 과도한 스트레스를 주어 데이터가 손상될 수 있는지 여부를 정의합니다.
  • 수신 실패에 대해 경고하는 애플리케이션 모니터링 트리거를 설정할 수 있습니다.
  • 표준 하드웨어 또는 지원 응용 프로그램 오류의 부작용을 결정합니다.
  • 어떤 종류의 실패를 계획하는 데 가장 가치가 있는지 결정하는 데 도움이 됩니다.
  • 스트레스가 많은 상황에서 보안 취약점이 노출되지 않도록 합니다.

단점

  • 환경이 프로덕션 환경을 복제해야 하므로 매우 비쌉니다.
  • 자동화할 사람과 훈련할 사람을 결정하는 것은 불편하고 부담이 됩니다.
  • 추가로 훈련되고 숙련된 인력이 필요합니다.

스트레스 테스트의 목표

  • 스트레스 테스트의 목적은 오작동 후 시스템의 동작을 평가하는 것입니다. 장치는 극한 조건에 있을 때 스트레스 테스트가 효과적이기 위해 만족스러운 오류 메시지를 보여야 합니다.
  • 종종 스트레스 테스트 중에 잘못 배치될 수 있는 대용량 데이터 세트를 사용하여 스트레스 테스트를 수행할 수 있습니다. 스트레스 테스트를 수행할 때 테스터는 이 보안 관련 정보를 잃어서는 안 됩니다.
  • 스트레스 테스트의 주요 목표는 장애가 발생한 후 장치가 복구되는지 확인하는 것입니다. 이를 복구 가능성이라고 합니다.

스트레스 테스트 지표

확장성 및 성능 측정

    초당 페이지 수:초당 요청되는 페이지 수를 측정합니다.처리량:기본 메트릭 – 초당 응답 데이터 크기라운드:테스트 시나리오가 계획된 횟수와 클라이언트가 실행한 횟수

신청 응답

    적중 시간:이미지 또는 페이지를 검색하는 평균 시간입니다.첫 번째 바이트까지의 시간:데이터 또는 정보의 첫 번째 바이트를 반환하는 데 걸리는 시간입니다.페이지 시간:페이지의 모든 정보를 검색하는 데 걸린 시간입니다.

실패

    실패한 연결:클라이언트가 거부한 실패한 연결 수실패한 라운드:실패한 라운드가 없습니다.잊혀진 조회수:시스템에서 수행한 실패한 시도 횟수

스트레스 테스트의 유형

    분산 스트레스 테스트

이 클라이언트-서버 시스템에서 테스트는 서버의 모든 클라이언트에서 수행됩니다. 스트레스 서버의 역할은 스트레스 테스트를 모든 스트레스 클라이언트에 배포하고 상태를 추적하는 것입니다. 클라이언트가 서버에 접속하면 서버는 클라이언트의 이름을 추가하고 테스트를 위한 데이터 전송을 시작합니다. 한편, 클라이언트 머신은 서버와 연결되었다는 신호나 하트비트를 보냅니다. 서버가 클라이언트 호출을 수신하지 않으면 디버깅을 위해 조사해야 합니다. 야간 실행은 이러한 스트레스 테스트 시나리오를 실행하는 가장 좋은 옵션 중 하나입니다. 대규모 서버 팜에는 조사해야 하는 스트레스 오류가 발생한 컴퓨터를 확인하기 위한 보다 효과적이고 효율적인 방법이 필요합니다.

    애플리케이션 스트레스 테스트:

애플리케이션의 데이터 잠금 및 차단 성능 병목 현상 및 네트워크 문제와 관련된 결함을 찾는 데 중점을 둡니다.

    전신 스트레스 테스트:

동일한 서버에서 실행되는 여러 시스템에서 테스트할 수 있는 통합 스트레스 테스트입니다. 한 애플리케이션 데이터가 다른 애플리케이션을 차단하는 오류를 찾는 데 사용됩니다.

    트랜잭션 스트레스 테스트:

여기에서 스트레스 테스트는 둘 이상의 응용 프로그램 간의 하나 이상의 트랜잭션에 대해 수행됩니다. 시스템 최적화 및 미세 조정에 사용됩니다.

    탐색적 스트레스 테스트:

실제 시나리오에서는 예상하지 못한 비정상적인 조건으로 시스템을 테스트하는 데 사용되는 스트레스 테스트 유형 중 하나입니다. 다음과 같은 예기치 않은 시나리오에서 오류를 찾는 데 사용됩니다.

  1. 많은 수의 사용자가 동시에 로그인했습니다.
  2. 바이러스 스캐너가 모든 컴퓨터에서 시작된 경우.
  3. 웹 사이트에서 액세스할 때 데이터베이스가 오프라인인 경우.
  4. 많은 양의 데이터가 동시에 데이터베이스에 삽입됩니다.

최고의 스트레스 테스트 도구

네오로드

NeoLoad는 지속적으로 애플리케이션을 테스트하는 조직을 위한 자동화된 테스트 플랫폼입니다. 이 플랫폼은 테스터와 개발자에게 자동 테스트 설계 및 유지 관리, 빠른 근본 원인 분석, 전체와 내장된 통합을 제공합니다. SDLC 도구 체인. 기능 테스트 도구의 테스트 자산 및 결과를 재사용할 수 있습니다. 다음과 같은 웹, 모바일 및 패키지 애플리케이션의 전체 범위를 지원합니다. 수액 , 조직 전체에서 테스트 리소스와 결과를 지속적으로 예약, 관리 및 공유하여 애플리케이션 성능을 보장합니다.

특징

  • 자동화된 API 테스트
  • 동적 인프라
  • 리소스 예약

당신은 방문해야합니다 가격에 대한 NeoLoad 웹 사이트 .

아파치 JMeter

JMeter는 부하 테스트, 기능 테스트, 회귀 테스트 , 그리고 다른 기술. SOAP, TCP, FTP와 같은 다양한 유형의 애플리케이션, 프로토콜 및 서버를 지원합니다. SOAP, LDAP MOM, 셸 스크립트, 메일 프로토콜, Java 개체, 데이터베이스.

에프 식사

  • 오픈 소스 소프트웨어입니다.
  • 인터랙티브하고 직관적인 GUI.
  • 신축성이 좋습니다.
  • 테스트는 XML 형식으로 저장됩니다.
  • 플랫폼 독립적입니다.
  • 최고의 API 자동화 도구.

사용은 무료입니다.

가지

가지 테스트 도구는 자동화된 애플리케이션 테스트 및 디버깅 도구입니다. 사용자 경험을 위한 단일 소스를 테스트합니다. 가지의 솔루션은 데이터베이스의 모든 계층에서 사례를 시도할 수 있습니다.

에프 식사

  • 최고의 GUI 자동화 테스트 도구입니다.
  • 테스트는 사용자 관점에서 수행됩니다.
  • 신뢰할 수 있으며 테스트가 신속하게 완료됩니다.
  • 다양한 시나리오에 대해 단일 테스트 스크립트를 사용합니다.
  • 인기 있는 테스트 관리 도구와 통합합니다.

라이선스 비용은 약 00입니다. 두 번째 스트림은 약 ,700, 세 번째 스트림은 약 0입니다.

자주 묻는 질문

스트레스 테스트란?

스트레스 테스트는 애플리케이션의 안정성과 신뢰성을 확인합니다. 스트레스 테스트는 혹독한 조건에서 애플리케이션의 오류 처리 기능과 견고성을 측정하고 빡빡한 상황에서 충돌하지 않도록 하는 것을 목표로 합니다. 일반 작동 지점 이상을 테스트하고 극한 조건에서 애플리케이션이 어떻게 작동하는지 평가합니다. 스트레스 테스트는 지구력 테스트라고도 합니다.

스트레스를 자동화할 수 있습니까?

장기간 무인 테스트를 실행할 수 있도록 프로세스가 완전히 자동화되어야 합니다. 최소한 스트레스 테스트 프레임워크는 실행되는 테스트 모듈과 모든 실패를 기록해야 합니다. 테스트가 서로 어떻게 실행되었는지 확인할 수 있습니다.

스트레스 테스트 CPU는 안전한가요?

한 달 동안 스트레스 테스트를 실행하지 않는 한 아마 괜찮을 것입니다. CPU가 임계 한계에 도달하면 피해가 발생하기 전에 PC가 종료됩니다. 아주 드물게 하드웨어를 장기간 실행하면 하드웨어가 손상될 수 있습니다.