soak testing tutorial what is soak testing
담금 테스트에 대한이 포괄적 인 가이드는 담금 테스트가 무엇인지, 왜 필요한지, 적용, 장점, 모범 사례 및 단점을 설명합니다.
소프트웨어 애플리케이션을 테스트하는 동안 다양한 유형의 테스트를 수행해야합니다. 기능 및 비 기능 테스트는 테스트 유형을 분류 할 수있는 두 가지 광범위한 범주입니다.
이름 자체에서 알 수 있듯이 기능 테스트는 응용 프로그램의 기능 테스트와 관련이 있습니다. 반면 비 기능 테스트는 기능 테스트를 제외한 다른 모든 테스트 (사용성, 성능 등)를 다룹니다.
학습 내용 :
담그기 테스트 – 완전한 가이드
이 튜토리얼에서는 성능 테스트의 한 유형 인 Soak 테스트의 개념을 소개합니다.
위 이미지에서 볼 수 있듯이 Soak 테스트는 비 기능 테스트의 한 유형이라고 말할 수 있습니다.
담금 테스트 란?
AUT (Application Under Test)가 미리 결정된 기간 동안 지속적인 부하를 견딜 수 있는지 확인하는 성능 테스트 유형입니다. 이것은 기능이없는 유형의 테스트입니다. 또한 다음과 같이 불립니다. ‘내구 테스트’ 또는 '장수 테스트' .
문자 그대로의 이름으로 가면 '담그다'라는 단어 자체가이 테스트가 수행하려는 의미를 담고 있습니다. 따라서 특정 기간 동안 애플리케이션에 높은 부하를 가하는 것이이 테스트의 전부입니다.
애플리케이션이 1 시간 또는 20 시간 동안로드되는 경우 차이가 무엇인지 궁금 할 수 있습니다. 그러나 예, 그것은 중요합니다.
이것은 실제 시나리오에서 더 잘 설명 될 수 있습니다. 두 사람이 한동안 로프를 양쪽 끝에서 당기면 압력에 저항 할 수 있지만, 며칠 동안 계속되면 양쪽 끝에서 압력을 받아 로프가 끊어 질 수 있습니다.
(영상 출처 )
소프트웨어의 경우도 마찬가지입니다. 애플리케이션에 높은로드 (사용자 수백 또는 수천 명)를 적용하면 한 시간 동안 제대로 작동 할 수 있습니다. 그러나 동일한 애플리케이션이 20 시간 동안 부하를 받으면 완전히 무너질 수 있습니다.
(영상 출처 )
오랜 기간 동안 지속적으로 많은 트래픽이 발생하면 애플리케이션에 다양한 문제가 발생할 수 있습니다. 따라서 담금 테스트가 필요합니다.
이 테스트에서 기본 개념은 예상 사용자와 함께 응용 프로그램을 장기간로드하는 것입니다. 이는 실제 시나리오가 라이브 애플리케이션에서 발생할 때까지 감지되지 않는 다양한 기본 문제를 식별하는 데 도움이됩니다.
클래스 B IP 주소의 서브넷 마스크는 무엇입니까?
담금 테스트 필요
필요성을 이해하기 위해 우리는 애플리케이션이 장기간에 걸쳐 과부하를 겪을 경우 겪을 수있는 가능한 문제를 인식해야합니다.
Soak 테스트가 필요한 다양한 이유를 살펴 보겠습니다.
#1) 잘못된 메모리 관리, 데이터베이스 연결 문제, 애플리케이션 응답 시간 저하 등과 같은 문제를 식별하는 데 주로 필요합니다.
이러한 각 문제는 아래에 설명되어 있습니다.
- 잘못된 메모리 관리에는 메모리가 할당되었지만 해제되지 않았거나 리소스가 필요한 것보다 많은 메모리를 사용하는 것과 같은 문제가 포함될 수 있습니다. 이러한 시나리오가 오랫동안 계속되면 시스템 메모리가 부족하여 응용 프로그램이 응답을 중지 할 수 있습니다.
- 데이터베이스 연결 문제 – 데이터베이스 연결을 닫는 동안 발생하는 오류로 인해 장기적으로 응용 프로그램이 완전히 중단 될 수 있습니다.
- 애플리케이션 응답 시간 저하 – 때때로 애플리케이션의 효율성이 떨어지고 응답 시간이 늘어날 수 있습니다. 시간이 지나면 이로 인해 응용 프로그램이 응답하지 않을 수 있습니다.
이러한 상황이 발생하는 것을 방지하기 위해 우리는 응용 프로그램을 Soak 테스트하는 것을 선호합니다. 그렇지 않으면 감지되지 않을 수있는 근본적인 문제를 식별하는 데 도움이됩니다.
#두) Soak Test는 애플리케이션이 지속적으로 부하를 견딜 준비가되었는지 확인하는 데 도움이됩니다.
#삼) 이를 통해 팀은 시스템이 Soak 테스트에 어떻게 반응하는지에 따라 수정 조치를 취할 수 있습니다.
담금 테스트 시작시기
(영상 출처 )
이상적으로 말하면 다른 성능 테스트와 마찬가지로이 테스트는 기능 테스트와 함께 제품 개발 중에 수행해야합니다. 그러나 이것은 거의 이루어지지 않습니다. 그 이유는 분명합니다. 즉 프로젝트 비용을 관리하는 것입니다.
따라서 초점은 주로 기능 테스트에 있으며 모든 형태의 성능 테스트는 일반적으로 뒷자리가 주어지고 응용 프로그램의 출시 날짜에 가까워집니다.
일반적으로 Soak 테스트는 애플리케이션이 클라이언트에 릴리스되기 직전에 수행됩니다. 그러나 이것은 문제 해결과 관련된 큰 단점이 있습니다.
이후 단계에서 성능 문제가 발견되면 애플리케이션 제공 날짜가 가까워지면 불가능할 수있는 주요 코드 변경이 수반 될 수 있으므로 해결하기 어려울 수 있습니다.
따라서 확인 된 문제를 해결할 수 있도록이 테스트를 제 시간에 잘 수행하는 것이 좋습니다.
담그기 테스트 전략
(영상 출처 )
애플리케이션을 테스트하기위한 테스트 전략이 준비된 것처럼, Soak 테스트를 수행하기위한 전략이 미리 준비되어 있으며 이는 매우 필요합니다.
온라인에서 무료로 애니메이션을 볼 수있는 곳
Soak Testing Strategy 준비에 들어가는 내용을 살펴 보겠습니다.
Soak Test를 시작하기 전에 팀은 응용 프로그램이 Soak Test를 받아야하는 부하를 결정해야합니다. 테스트해야하는 기간도 미리 결정해야합니다. 일반적으로 이것은 개발 팀에서 제공합니다.
테스트 팀은 Soak Test를 계획하는 시나리오를 결정해야합니다. 이는 다시 테스트 대상 애플리케이션의 고객 약속과 요구 사항에 따라 달라집니다.
Soak 테스트는 주로 메모리 및 리소스 누수 문제를 식별하는 데 중점을 두므로 사용 가능한 메모리와 데이터베이스 사용량을 미리 아는 것이 중요합니다.
Soak 테스트를 수행 할 OS, 장치 등과 같은 환경 세부 사항도 결정해야합니다.
마지막으로 관련된 위험 (들)도 고려해야합니다. 이러한 상황에 대해서는 항상 백업 계획을 세워야합니다. 예를 들어, 테스트 중에 데이터베이스가 충돌하면 그 자리에서 사용할 수있는 다른 대안 등이 있습니다.
담금 테스트 시나리오
전자 상거래 웹 사이트에서 제품의 온라인 판매를 발표 할 때 웹 사이트가 3-5 일 동안 지속될 수있는 판매 기간 동안로드되는 것은 당연합니다. 이러한 상황에서 웹 사이트는 예기치 않은 충돌을 방지하기 위해 Soak 테스트를 받아야합니다.
회계 연도 종료시 은행 웹 사이트는 지속적으로 매우 높은 부하에 직면 할 수 있습니다. 이러한 상황에서 웹 응용 프로그램의 예기치 않은 충돌을 방지하기 위해 웹 사이트는 Soak 테스트를 거쳐야합니다.
애플리케이션이 사전 결정된 연속 기간 동안 사전 결정된 부하를 처리하도록 설계되면 알려진 부하 처리 능력의 최소 2 배 이상의 부하에 대해 애플리케이션을 테스트해야합니다.
예를 들면 웹 사이트가 15 시간 동안 500 명의 사용자로드를 처리하는 것으로 알려진 경우 응용 프로그램은 15 시간 동안 1000 명의 사용자에 대해 Soak 테스트를 수행해야합니다. 이를 통해 부하 용량을 두 배로 늘 렸을 때 애플리케이션이 비정상적으로 응답하는지 알 수 있습니다.
모범 사례
(영상 출처 )
- Soak Testing은 항상 사용자와 기간 측면에서 응용 프로그램의 유휴 부하 제한을 알고 있어야합니다. 이는 예상 사용자로 애플리케이션을로드하는 것이지만 장기간 동안 대상으로 알려 져야합니다.
- 밤에 Soak 테스트를 실행하는 것이 좋으며 더 긴 기간의 테스트를 수행해야하는 경우 주말에 실행하는 것이 좋습니다. 그 이유는 분명합니다. 즉, 근무 시간에는 리소스가 묶여있는 반면, 야간 또는 비 근무 시간에는 테스트 서버를 장기간 사용할 수 있습니다. 따라서 휴무 시간은 이러한 테스트에 이상적인 시간입니다.
- 응용 프로그램을 Soak 테스트 할 때 관련된 위험은 항상 분석되어야하며 모든 사고에 대해 완화 계획을 준비해야합니다.
담그기 테스트 제약
(영상 출처 )
- 응용 프로그램을 테스트하는 데 필요한 긴 기간은 일반적으로 시간을 사용할 수 없기 때문에 하나의 큰 제약입니다. 따라서 시간 부족으로 인해 담금 테스트를 피할 수 있습니다.
- 애플리케이션에서 수행되는 다른 유형의 테스트가 영향을받지 않도록 테스트 환경을 신중하게 선택해야합니다. 장기간에 걸쳐 과중한 부하에 대해 응용 프로그램을 테스트하면 문제가 발생할 수 있으므로 이러한 상황이 발생할 수 있습니다.
- 담금 테스트 시간은 신중하게 결정해야하며 주로 휴무 시간 (예 : 작업 종료 후 주말 또는 야간)이어야합니다.
- 일반적으로 테스트는 많은 수의 사용자와 함께 장기간 실행되어야하므로 Soak 테스트에는 자동화 도구가 필요합니다.
담금 테스트의 단점
- 일반적으로 동일한 작업에 필요한 시간이 길기 때문에 Soak 테스트로 인해 프로젝트 타임 라인이 영향을받을 수 있습니다.
- 응용 프로그램에 액세스하는 많은 사용자로 인해 메모리 사용률이 높기 때문에 테스트 기간 동안 리소스가 묶여 있습니다.
결론
이 자습서를 통해 Soak 테스트가 무엇이며이 테스트를 수행하는 데 필요한 이유를 배웠습니다.
이제 Soak Testing이 무엇인지, 어떤 종류의 문제를 식별하는 데 도움이되는지에 대한 이해를 통해 동일한 작업을 수행해야 할 필요성을 매우 잘 이해할 수 있습니다. 특히 전 세계가 항상 연결되어있는 경우이 테스트는 필수가됩니다.
우리는 따라야 할 접근 방식과 함께 Soak 테스트를 시작해야 할 때를 보았습니다. 시나리오, 모범 사례 및 이와 관련된 제약 조건도 여기에서 설명했습니다.
이 튜토리얼이 Soak 테스트가 무엇인지 이해하는 데 도움이 되었기를 바라며 이에 대한 지식을 향상 시켰을 것입니다.