Upload
lim-sunghyun
View
785
Download
1
Embed Size (px)
Citation preview
2 / 16
강사 소개• 프로파일
• 16년차 자바 개발자
• 상담 솔루션 개발회사 품질 총괄
• 릴리즈, 보안, 성능, 협업툴 담당
• 전자계산 조직응용 기술사
• 10년차 한이음 IT 멘토링 멘토
• 대학생 졸업작품 지도
3 / 16
< INTRO/시연 >
1. 동시 사용자 모델링
2. 일정/ 범위 잡기
3. 결과 보고서 준비
4. 목표 재확인
5. 설치
목차
6. 스크립트 작성
7. 테스트 실행 plan/진행
8. 결과 확인
9. 보고서 완성- Excel
10.의견 제출
< OUTRO/힌트 >
4 / 16
< INTRO/ 시연>
•성능 테스트 언제? 왜?
• SI개발 프로젝트 후반/ 제품 개발 후반
• 프로젝트를 잘 끝내고 철수하도록
•왜 nGrinder …?
• 무료(=IDE = WAS = SCM = JVM) & 설치가 정말 쉽다.
• 단, 저는 만든사람이 아님. 모두 알고 쓰는 것도 아님.
•오늘 다룰 내용
• 설치 그 이후. 사용자 모델 ~ 의견제출까지 경험 공유
5 / 16
< INTRO/ 시연>
•시연: Flight page(원격 서버) <-> agent, Controller(Local)
1) 테스트 대상 선정
2) 테스트 레코딩
3) 검증 및 테스트 수행
4) 결과 확인
소스 원본: http://sleeplessinslc.blogspot.kr/2012/01/spring-31-mvc-example.html
6 / 16
1. 동시 사용자 모델링
•튼튼한, 견고한, 죽지 않는 시스템
• 누락된 부분은…? -> 얼마나 많은 사용자에 대해서?
• 힌트: 고객사, 구글 플레이, AppAnnie(유료)
10 / 16
4. 목표 재확인
•동시 사용자
•예시: 50명 Active user
à 20명/50명/80명 테스트 수행
•대상 화면(Target Page)
•테스트 대상 흐름, 측정 대상 화면 확인
•측정 지표/ 목표값(TPS/ MTT)
•TPS: Test Per Second
•MTT: Mean Test Time
11 / 16
5. 설치
•설치 서버 고려시 주의:
• 테스트 하는 서버도 죽습니다.
• 과도한 Traffic이 발생하면 네트워크 차단 됩니다.
•Controller – Agent
사이 port 고려
12 / 16
6. 스크립트 작성
•스크립트 작성 전략 : Record or Manual…?
- image/static page (자연스런 noise) 추가 여부
- 사용자 계정/ session 처리 등 dynamic 스크립트
•레코더: TCPProxy
• The Grinder에 있는 jython 레코더(Grinder 3.1 이상 권장)
• 쉽게 사용 가능하나, 결과물이 매우 복잡함java -cp "grinder-3.11/lib/*" net.grinder.TCPProxy -console -http > script.py
14 / 16
7. 테스트 실행 plan/진행
•테스트를 실행할 시간대 :
•주간: 개발자 도움을 받을 수 있다.
단, 반드시 주위에 공지
•야간: 테스트에 집중할 수 있다.
•테스트 사이클
•테스트 실행 -> 결과 수집 -> 결과 분석 -> 재실행