성능테스트
NamedUser,ConcurrentUser, ResponseTime, ThinkTime 용어설명
성능테스트유형(LoopBackTest, TierTest,SpikeTest),
성능테스트시 고려사항
1.성능테스트목표:성능측정(운영전적정성능확인), 결함검출(시스템운영중 발생문제 사전예방), 병목제거(튜닝,검출SW결함적절조치), 용량검증/산정(운영시스템 Peak용량의 업무처리가능여부)
2.성능테스트종류:목적에따라(단위성능,통합성능,임계성능), 방법에따라(LoopBack, Tier시험, Spike시험,확장성시험,가용성시험)->엔터프라이즈의 복잡성으로 성능저하원인인 병목구간찾기어려움, 웹기반의 ConcurrentUser규정어려움, ResponseTime변화분석 중요
3.성능테스트관련용어:NamedUser(모든사용자,사용자+대기자+비접속자,인터넷시스템은 불특정다수로 대상파악어려움), ConcurrentUser(특정시점에 접속사용자,응답대기자+대기자,시스템부하를주고있는사용자),ResponseTime(요청내용처리 소요 총 시간,요청,네트워크,WAS,DB,화면디스플레이,단일과 다중접속응답시간의 차이존재),ThinkTime(요청응답후 다음요청대기시간,성능시험시 고려하지 않으면 왜곡된 결과초래,TPM=(사용자수*동시접속률)*60/(최대응답시간+ThinkTime))
4.방법따른 성능테스트유형(정의,방법,특징,효과)
1)LoopBack:시스템구성 논리적 아키텍처상 컴포넌트들의 오버로드를 검증하기위한 시험, 개발된 어플코드에 루프백코드삽입하여 시스템 논리적 구간중 특정지점 이후로 거래가 발생되지 않도록함, 루프백지점 이후도 거래발생시킨것 처럼 코드 작성/병목지점찾기에 유용, 시스템구성논리적 티어별 성능측정/논리적 컴포넌트상 주요병목원인 분석제거/아키텍처측면 발전방향제시
2)TierTest:구체적성능병목구간을 찾기위해 개발소스상 직접변경없이 시험, 논리적 프로토콜이용한 티어간 통신을 재현하여 대상 티어에 직접 부하를 주는 방법, 티어별 병목구간확인/루프백시험과 동일 목적과 효과, 티어별 성능측정/성능병목지점찾아 성능개선의 우선순위결정가능
3)SpikeTest:모든단말사용자가 동시에 거래발생시키도록 하여 그때의 시스템상황 점검성능시험, 정해진 시간내 다량의 트랜잭션발생시켜 정상처리 검증 및 시스템 정상상태유지 체크,높은 부하유입률따른 순간 시스템 가용성 검증 및 폭발적 사용자 증가따른 리소스변화량 검증
->확장성시험(시스템증설따른 성능향상비율측정), 가용성시험(자원불균형현상으로 시스템성능저하,다운현상 검증위해 오랜시간 진행 롱런테스트)
5.사례
1)LoopBack사례:Web-WAS-DB중 Web/WAS구간성능측정위해 루프백코드삽입/성능/안정성
2)TierTest:WAS에 직접 호출, DB 직접 호출로 검증
3)Spike:로그인테스트위해 12000명이 5분안에 로그인검증
6.성능테스트고려사항
1)단계별 성능테스트고려사항:요구분석(성능요소와목표지수산정),설계단계
(성능목표만족위한설계를아키텍처수립시반영), 구현단계(단위성능테스트통해 코드상병목튜닝), 테스트단계(통합테스트,임계성능테스트통해 시스템확장계획)
2)성능테스트어려운원인:인식부족,분석비용,시험환경구성어려움
3)정확한성능테스트고려사항:정확한거래모델,트랜잭션변화분석,알지못하는 트랜잭션고려,성능테스트도구활용,릴리즈전 선조치필요
'T-prj > 1.SW공학' 카테고리의 다른 글
[소공50]S/W 유지보수 (0) | 2012.08.13 |
---|---|
[소공48]동적테스트 (0) | 2012.08.13 |
[소공47]비기능적테스트 (0) | 2012.08.13 |
Recent Comment