유용한 정보

성능 TEST를 위한 보고서 1

CyberI 2019. 6. 18. 14:25

1. 성능 TEST ?

서비스 및 서비스 시스템의   성능을 확인하기 위해 실사용 환경과 비슷한 환경에서 테스트를 진행하는 것입니다.

 

2. 성능 TEST의 종류

성능테스트는 목적에 따라 다음과 같이 나뉩니다.

Load 테스트  시스템의 성능을 벤치마크 하기 위한 테스트를 의미합니다. 이 테스트는 부하(Load)를 순차적으로 증가시키면서 응답시간이 급격히 증가하거나 더는 처리량이 증가하지 않거나 시스템의 CPU와 Memory 등이 기준 값 이상으로 증가하는 등 비정상 상태가 발생하는 임계점을 찾아 이를 바탕으로 성능 이슈에 대한 튜닝과 테스트를 반복합니다.
Stress 테스트 임계값 이상의 요청이나 비정상적인 요청을 보내 비정상적인 상황의 처리 상태를 확인하고 시스템의 최고 성능 한계를 측정하기 위한 테스트를 의미합니다.
Spike 테스트 갑자기 사용자가 몰렸을 때 요청이 정상적으로 처리되는지 그리고 그 업무 부하(Workload)가 줄어들 때 정상적으로 반응하는지를 확인하기 위한 테스트를 의미합니다.
Stability 테스트 / Soak 테스트 긴 시간 동안 테스트를 진행해서 테스트 시간에 따른 시스템의 메모리 증가, 성능 정보의 변화 등을 확인하는 테스트를 의미합니다. 짧게는 한 두 시간부터 길게는 며칠 동안 진행합니다.

 

3. 성능 TEST 용어

트랜잭션(Transaction) 일정한 단위를 나타내며, 주로 업무/기능별로 트랜잭션을 정의합니다. 웹 어플리케이션에서는 주로 화면 조작을 통한 요청(Request)과 그에 대한 응답(Response) 화면을 하나의 트랜잭션으로 정의하여 사용합니다.
TPS(Transaction Per Second) 1초에 처리할 수 있는 트랜잭션의 수를 나타내며, 성능테스트의 가장 중요한 지표로 사용됩니다. 예를 들면, 성능테스트 결과 30TPS가 나오면 1초에 30개의 트랜잭션을 처리할 수 있다는 의미입니다.
응답시간(Response Time) 사용자가 요청을 보낸 시점부터 처리 결과가 사용자 PC의 화면에 보여질 때까지의 시간을 의미합니다. 웹 어플리케이션의 경우는 Network Time + Server Time + Client Time의 총합을 나타냅니다. 최근 들어 정보 기술의 발달로 인해 더욱 빠른 응답시간이 요구되므로 사용자 측면에서 뿐만 아니라 서비스 공급자 입장에서도 매우 중요한 지표입니다.

 

4. 성능 TEST 목적

성능테스트는 일반적으로 시스템 개발 종료시점에 수행하며, 응답시간과 처리량, 병목구간 등을 실제 서비스 전에 확인하여 서비스나 서비스 시스템의 문제점을 개선하는데 주로 목적을 가집니다.

 

5. 성능 TEST 기대효과

(1) 시스템 측면 : 주요 성능 결함 및 구조적 위험 우선 식별, 운영시스템 성능 최적화, 유지보수 비용  및 시스템 비용 최소화 등

(2) 사용자 측면 : 서비스의 품질 개선, 응답시간 향상을 통한 업무 효율 증대, 사용자 만족도 향상 등

 

6. 성능 TEST의 필요성

(1)  4초 Rule : 4초 이내에 응답이 오지 않으면 다른 사이트로 이동하는 습성

    -  0.5초 : 웹사이트의 첫 화면이 0.5초 안에 방문자의 눈길을 끌지 못하면 고객을 놓침  

       (2006년 지트린 가드 박사, ‘행동과 정보과학‘ 발표 논문 중)

   - 1초 : 1초 지연으로 1%의 매출 감소(아마존)

   - 3초 : 소비자가 웹사이트에 첫 인상을 갖는 시간

   - 4초 : 온라인 구매자들이 최대한 견딜 수 있는 평균 로딩시간(고객 이탈 시간)

(2)  웹 사이트의 장애로 인한 파급효과

     - 70%의 기업이미지 손상

     - 50% 매출 손실

     - 35% 장애 복구 비용

     - 22% 고객 상실

(3) 웹/인터넷을 이용하는 고객의 약 46%가 가장 즐겨찾는 Site의 문제로 인해 다른 Site로 옮긴 경험이 있으며,

      사용자의 92%가 Site 선택의 가장 중요한 요소는 안정적인 시스템. 즉 신뢰성이라고 응답 위와 같은 통계들을 통해 

      웹 성능테스트는 선택이 아닌 필수라는 것을 확인할 수 있습니다.

 

다음 시간에는 성능 TEST 에 주로 이용되는 OPEN Source 에 대해 알아 보도록 하겠습니다.

 


성능 TEST에 대한 더 자세한 내용을 살펴보고 싶다면, 아래 링크를 클릭해주세요.

▶ 성능 TEST를 위한 보고서 2

▶ 성능 TEST를 위한 보고서 3