성능테스트
#
Find similar titles
- (rev. 3)
- ShabangBoy
Structured data
- Category
- Programming
Table of Contents
성능테스트 #
성능(컴퓨터) #
- 컴퓨터에 사용되는 시간과 자원 대비 컴퓨터가 수행하는 작업량
성능테스트 #
- 컴퓨터의 성능을 측정하기 위해 시스템을 실제 사용될 것과 같은 환경에서 작동시켜보는 것
- 응답속도나 단위 시간당 일 처리량 등을 측정
- 사용자 요청을 처리하기 위해 소요된 응답시간은 클라이언트에서 측정하고, 단위 시간당 시스템에서 처리되고 있는 처리량은 서버에서 측정한다.
성능테스트의 목표 #
- 안정적인 서비스를 위해 안정성 확보
- 문제점 및 개선점을 파악한 후 해당사항을 수정하여 성능을 향상시킴
- 장애로 인한 데이터 손실, 신뢰도 저하, 추가비용 발생을 미연에 방지
- 서버의 최적화를 위해 서버환경 검사
성능테스트의 종류 #
목적에 따라 다음과 같이 분류한다.
- 단위테스트 - 단위 별 업무의 최대한의 성능을 측정하는 단계
- 통합테스트 - 목표를 정해놓고 계산된 부하를 발생시켜 측정하는 단계
- 임계테스트 - 정해놓은 목표없이 도출할 수 있는 최대 성능을 측정하는 단계
방법에 따라 다음과 같이 분류한다.
- Loop back 테스트 - 시스템 논리구간 중 특정 지점 이후로 거래가 발생되지 않도록 하는 테스트, 병목 지점을 찾는데 유용함
- Tier 테스트 - Tier간의 통신을 재현하여 하위 Tier 이후의 성능을 측정하여 성능 병목 지점을 찾는 테스트
- Spike 테스트 - 모든 동시 단말 사용자가 동시에 거래를 발생시키는 테스트, 해당상황의 시스템을 점검함
- 확장성 테스트 - 물리적 시스템 증설 대수와 시스템 향상 비율이 일정하지 않아 실시하는 테스트, 시스템 확장성 보장 여부를 판단함
- 가용성 테스트 - 장시간 거래를 발생시켜 일반 성능테스트에서 발견되지 않는 시스템 결함을 점검
성능테스트 중점 #
- 업무량(throughput) - 피크 시간 동안의 단위 시간당 초대 업무 처리 건 수, 업무 성격에 따라 목표 TPS(throughput per seconds)를 정해두고 도달했는지 여부로 판단함
- 응답시간(Response Time) - 업무 처리에 쇼요되는 총 시간, 3초 이내 응답이 보편적이나 점점 기대하는 응답시간은 짧아지고 있음
- 시스템 사용율(System REsource Usage) - CPU 사용율, CPU 사용율이 커질수록 응답시간에 영향이 큼, 60~70% 내외가 적당하나 RAC 노드 수에 따라 상이함
- 부하 시간(ramp up) - 시스템 부하를 증가 시키는 구간
- 부하 유지(duratio) - 시스템 부하를 유지하는 구간, 목표 TPS 측정 구간
- 부하 감소(ramp down) - 시스템 부하를 감소 시키는 구간
가상 사용자 수 증가에 따른 응답시간과 처리량과의 관계 (출처)
성능테스트 결과서 #
- 시스템 통합(SI)사업을 수행할 경우 시험단계에서 반드시 거쳐야 하는 과정이 성능테스트이며, 이에 대한 결과는 성능테스트 결과서에 기재하게 된다.
성능테스트 결과서의 구성 #
- 성능테스트 개요
- 목표 및 평가 기준
- 테스트 환경
- 테스트 시나리오
- 성능테스트 결과
- 성능테스트 결과 상세
성능테스트 결과서의 챕터별 주요내용 #
성능테스트 개요 #
- 개요 : 성능테스트의 목적과 활용성(예: 성능테스트는 테스트 대상 애플리케이션에 현재 또는 미래에 예상되는 수준의 최대부하를 발생시켜 성능목표의 만족여부를 확인하는 테스트임)
- 일정 : 성능테스트의 준비와 수행 일정 및 장소
- 주요내용 : 테스트의 기본조건과 측정방식(예:서버에 Jmeter 4.0으로 부하를 가하고, 목표에 따라 모니터링하여 응답시간 및 시스템 자원을 측정)
목표 및 평가 기준 #
- 테스트의 목적과 평가 기준에 대한 내용
- 목적별 성능목표와 테스트 방법(예: 목적-어플리케이션의 신뢰성 확인 / 성능목표-최고 부하 시 애플리케이션에 오류가 발생하지 않아야 함 / 방법-부하상황에서의 애플리케이션의 오류 확인)
테스트 환경 #
- 테스트 환경의 시스템 구성에 대한 설명
- 테스트를 수행하는 하드웨어와 소프트웨어(운영체제 등)에 대한 설명
- 특히 부하발생 환경에 대한 내용이 필수
테스트 시나리오 #
- 시스템 화면별 테스트 케이스 목록을 기재
- 세부 화면도 모두 포함하여 테스트 대상으로 선정
성능테스트 결과 #
- 위의 테스트 시나리오에 따라 테스트를 진행하고 단말수, 요청수, 평균응답시간, 최소응답시간, 최대응답시간, 오류율 등을 빠짐없이 기재
- 전체 성능테스트 결과를 종합하여 기재하고 주요내용에 대한 설명을 추가
성능테스트 결과 상세 #
- 성능테스트 결과 데이터를 테스트 시나리오별로 모두 첨부
- 요약 보고서, 데이터 테이블, 응답시간 그래프 등의 자료를 활용
기대효과 #
시스템 측면
- 주요 성능 결함 및 구조적 위험 식별
- 운영시스템 성능 최적화
- 유지보수 비용 최소화
- 시스템 비용 최소화
최종 사용자 측면
- 고객 관점의 품질 개선
- 응답시간 향상을 통한 업무 효율 증대
- 고객 만족도 향상을 통한 신규고객 확보