JMeter : http://hwangmin84.tistory.com/21
Loadrunner : http://egloos.zum.com/choungjae/v/470630
샘플 스크립트 :
http://claudihome.com/html/LR/function_reference/Content/web/lrFuncRef_WVF_web_submit_data.htm
http://loadtest.co.kr/loadtest/4.vugen/08-vugen.php
http://lindows.iteye.com/blog/1266180
hp사에서 개발한 성능 테스트 툴. 로드 테스트 소프트웨어로써 애플리케이션을 가동하기 전에
문제를 해결할 수 있도록 end-to-end 시스템 성능에 대한 정보를 제공.
클라이언트: 사용자 요청을 처리하기 위해 소용된 응답시간 측정.
서버: 단위 시간당 시스템에서 처리되고 있는 처리량 측정.
일반적인 성능 측정의 기준은 TPS.
목적에 따라 3개의 테스트 유형으로 분류 가능.
1. 단위 테스트 - 단위별 업무의 최대한의 성능을 측정하는 단계
2. 통합 테스트 - 목표를 정해놓고 계산된 부하를 발생시켜 측정하는 단계
3. 임계 테스트 - 정해놓은 목표없이 도출할 수 있는 최대 성능을 측정하는 단계
* 로드런너 사용법
1. 스크립트 작성
- 측정하고자 하는 페이지를 열어서 레코딩.
- 레코딩의 결과로 측정한 스크립트가 생성됨.
- 또는 직접 스크립트 작성.
2. 시나리오 작성
- 유입 트래픽, 시간(주기) etc.
3. 실행 및 결과 분석
[구체적인 사용법]
1. Virtual User Generator (스크립트 작성)
다음 단계 : > Tools > Create Controller Scenario
[예시 스크립트]
Action()
{
lr_save_string("21.21.25.14", "restapiURL");
lr_save_string("bda527a3f5623062d4839bd", "sessionIId");
lr_save_string("6584991", "destFolderId");
lr_save_string("28841", "fileSize");
lr_save_string("Vita.jpg", "fileName");
// web_add_auto_head("Authorization", "Bearer eb39a-5e54-48c1-b98c-c86eae5e");
lr_start_transaction("RESTAPI_UPLOADSERVERINFO_RESTAPI");
web_submit_data("restapi_nonce_upload",
"Action=http://{restapiURL}/restapi/nonce/upload",
"Method=GET",
"TargetFrame=",
"RecContentType=text/html",
"Mode=HTML",
ITEMDATA,
"Name=SESSION_ID", "Value={sessionId}", ENDITEM,
"Name=DEST_FOLDER_ID", "Value={destFolderId}", ENDITEM,
"Name=FILE_SIZE", "Value={fileSize}", ENDITEM,
"Name=FILE_NAME", "Value={fileName}", ENDITEM,
LAST
);
lr_end_transaction("RESTAPI_UPLOADSERVERINFO_RESTAPI", LR_AUTO);
return 0;
}
동적으로 파라미터 할당하기
Solution Explorer > Parameters > parameter가 담긴 파일을 불러오거나 column, row를 추가하여 직접 추가 > parameter 이름은 실제로 쓸 parameter 이름과 같아야 한다.
2. Controller ( 시나리오 작성 )
다음 단계: > Tools > Analysis
아래와 같이 시작 Vuser, 지속시간, 종료 Vuser에 대한 설정이 가능하다.
유입/유출되는 Vuser의 숫자, 시간 간격 설정 가능.
스크립트에서 우클릭 > Runtime Settings
Pacing: pacing time 설정
Log: 로그 사용 여부 설정. 일반적으로 로깅 사용 해제
Think Time: Think time 사용 여부. 일반적으로 think time 무시
Miscellaneous: Error Handling, Multithreading, Automatic Transactions 설정.
일반적으로 Error Handling 체크 해제, Multithreading은 thread, Transactions 체크 해제
3. Analysis (실행 및 결과 분석)
'프로그래밍(TA, AA)' 카테고리의 다른 글
[프로그래밍] SPI와 API 차이 (0) | 2018.03.11 |
---|---|
[프로그래밍] API vs 웹사이트 (0) | 2017.11.06 |
[프로그래밍] 미들웨어(Middleware)란? (1) | 2017.10.30 |
[프로그래밍] XML과 JSON의 차이 (3) | 2017.07.20 |
[프로그래밍] Concurrency, Parallelism 차이 (2) | 2017.06.29 |