ݺߣ

ݺߣShare a Scribd company logo
1 / 16
내가 써본 nGrinder
2015. 04. 18
소 속 스 펙 트 라
작 성 자 임 성 현
이 메 일 sunghyun.lim@gmail.com
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(유료)
7 / 16
2. 일정/ 범위 잡기
•인프라팀, 고객과의 약속
•환경구축, 스크립트작성, 테스트, 검토의 충분한 시간 확보
8 / 16
데이터 검색 데이터 생성
2. 일정/ 범위 잡기
•시나리오 흐름 예시
1 2 3
데이터 검색 데이터 검색
4 5
9 / 16
3. 결과 보고서 준비
•엑셀 권장 - 표와 그래프를 함께 보여주기 좋음
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
13 / 16
6. 스크립트 작성
• 스크립트 예시
14 / 16
7. 테스트 실행 plan/진행
•테스트를 실행할 시간대 :
•주간: 개발자 도움을 받을 수 있다.
단, 반드시 주위에 공지
•야간: 테스트에 집중할 수 있다.
•테스트 사이클
•테스트 실행 -> 결과 수집 -> 결과 분석 -> 재실행
15 / 16
8. 결과 확인
• nGrinder 페이지
• CSV 파일
16 / 16
9. 보고서 완성 / 의견 제출
• 어떤 graph를 만들 것인가?
-> 결국 어떤 내용을 보고 판단할지가 중요
17 / 16
< OUTRO/힌트 >
•nGrinder 쓸만한가? -> 충분하다.
•스크립트 레코딩시 주의사항 -> 브라우저 업데이트, 대상이 명확하게
•동시 사용자를 감안하지 않는다면? ->
•크롬 브라우저 F12(Mac에서는 cmd+option+I)도 유용

More Related Content

내가써본 nGrinder-SpringCamp 2015

  • 1. 1 / 16 내가 써본 nGrinder 2015. 04. 18 소 속 스 펙 트 라 작 성 자 임 성 현 이 메 일 sunghyun.lim@gmail.com
  • 2. 2 / 16 강사 소개 • 프로파일 • 16년차 자바 개발자 • 상담 솔루션 개발회사 품질 총괄 • 릴리즈, 보안, 성능, 협업툴 담당 • 전자계산 조직응용 기술사 • 10년차 한이음 IT 멘토링 멘토 • 대학생 졸업작품 지도
  • 3. 3 / 16 < INTRO/시연 > 1. 동시 사용자 모델링 2. 일정/ 범위 잡기 3. 결과 보고서 준비 4. 목표 재확인 5. 설치 목차 6. 스크립트 작성 7. 테스트 실행 plan/진행 8. 결과 확인 9. 보고서 완성- Excel 10.의견 제출 < OUTRO/힌트 >
  • 4. 4 / 16 < INTRO/ 시연> •성능 테스트 언제? 왜? • SI개발 프로젝트 후반/ 제품 개발 후반 • 프로젝트를 잘 끝내고 철수하도록 •왜 nGrinder …? • 무료(=IDE = WAS = SCM = JVM) & 설치가 정말 쉽다. • 단, 저는 만든사람이 아님. 모두 알고 쓰는 것도 아님. •오늘 다룰 내용 • 설치 그 이후. 사용자 모델 ~ 의견제출까지 경험 공유
  • 5. 5 / 16 < INTRO/ 시연> •시연: Flight page(원격 서버) <-> agent, Controller(Local) 1) 테스트 대상 선정 2) 테스트 레코딩 3) 검증 및 테스트 수행 4) 결과 확인 소스 원본: http://sleeplessinslc.blogspot.kr/2012/01/spring-31-mvc-example.html
  • 6. 6 / 16 1. 동시 사용자 모델링 •튼튼한, 견고한, 죽지 않는 시스템 • 누락된 부분은…? -> 얼마나 많은 사용자에 대해서? • 힌트: 고객사, 구글 플레이, AppAnnie(유료)
  • 7. 7 / 16 2. 일정/ 범위 잡기 •인프라팀, 고객과의 약속 •환경구축, 스크립트작성, 테스트, 검토의 충분한 시간 확보
  • 8. 8 / 16 데이터 검색 데이터 생성 2. 일정/ 범위 잡기 •시나리오 흐름 예시 1 2 3 데이터 검색 데이터 검색 4 5
  • 9. 9 / 16 3. 결과 보고서 준비 •엑셀 권장 - 표와 그래프를 함께 보여주기 좋음
  • 10. 10 / 16 4. 목표 재확인 •동시 사용자 •예시: 50명 Active user à 20명/50명/80명 테스트 수행 •대상 화면(Target Page) •테스트 대상 흐름, 측정 대상 화면 확인 •측정 지표/ 목표값(TPS/ MTT) •TPS: Test Per Second •MTT: Mean Test Time
  • 11. 11 / 16 5. 설치 • 설치 서버 고려시 주의: • 테스트 하는 서버도 죽습니다. • 과도한 Traffic이 발생하면 네트워크 차단 됩니다. • Controller – Agent 사이 port 고려
  • 12. 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
  • 13. 13 / 16 6. 스크립트 작성 • 스크립트 예시
  • 14. 14 / 16 7. 테스트 실행 plan/진행 •테스트를 실행할 시간대 : •주간: 개발자 도움을 받을 수 있다. 단, 반드시 주위에 공지 •야간: 테스트에 집중할 수 있다. •테스트 사이클 •테스트 실행 -> 결과 수집 -> 결과 분석 -> 재실행
  • 15. 15 / 16 8. 결과 확인 • nGrinder 페이지 • CSV 파일
  • 16. 16 / 16 9. 보고서 완성 / 의견 제출 • 어떤 graph를 만들 것인가? -> 결국 어떤 내용을 보고 판단할지가 중요
  • 17. 17 / 16 < OUTRO/힌트 > •nGrinder 쓸만한가? -> 충분하다. •스크립트 레코딩시 주의사항 -> 브라우저 업데이트, 대상이 명확하게 •동시 사용자를 감안하지 않는다면? -> •크롬 브라우저 F12(Mac에서는 cmd+option+I)도 유용