HP LoadRunner 소개와 테스트



HP LoadRunner 소개

부하테스트 솔루션인 HP의 LoadRunner는 대량의 유저가 테스트 대상 시스템에 부하를 주었을 때, 성능을 측정하기 위한 Tool입니다. 원래는 서버급 장비에서 동작하도록 설계되었지만, 부하테스트에 대한 인지도가 높아지면서 일반 PC에서도 동작이 가능하도록 개선되었습니다. 원래 Mercury에서 제작한 툴이지만, HP에 인수되면서 9.X버전부터는 HP의 로고를 달고 출시 되었습니다.

특징으로는 아래와 같은 기능들을 자랑합니다.

  • 신뢰성 및 확장성이 우수한 업계 최고의 성능 테스팅 자동화 툴
  • 엔터프라이즈 환경을 테스트하기 위하여 다양한 프로토콜 및 플랫폼 지원
  • 시스템의 장애를 체크하기 위하여 광범위한 On-Line 서버 모니터링 제공, UNIX/Windows 시스템의 자원 사용량, 웹서버/웹AP서버/DB서버등의 성능 모니터링
  • Goal-oriented 시나리오 기능 제공 (사용자 수, 응답시간, Transaction / Sec등)
  • EJB (J2EE) 테스팅 및 XML Support
  • 강력하고 상세한 분석 기능 및 Report 기능
  • 성능 모니터링 툴인 “Topaz”와 강력한 통합 -> Scripts 재사용

구성 모듈

VuGen(Virtue User Generator)

데이터베이스 연결, 스크립트 설정 등 테스트를 위한 변수 입력 작업 및 동작 서비스를 자동으로 레코딩을 하기 위한 모듈 입니다.

Controller

부하를 발생시켜서 네트워크 지연시간, 소프트웨어 성능 등을 수집하여 그래프로 모니터링하는 모듈입니다.

Analysis

Controller가 수집한 데이터로 통계 자료 및 분석자료를 제공하는 모듈입니다.

LoadRunner의 구성

LoadRunner Main

설치가 완료된 후 HP LoadRunner의 실행 화면으로 1. 부하테스트를 위한 명령스크립트를 작성하고, 2. 실제 테스트를 진행, 3. 테스트 분석 결과를 볼 수 있는 메뉴로 되어있습니다.

 Create/Edit Scripts (Virtue User Generator) 화면 구성 – 1

lr2 min

 Create/Edit Scripts (Virtue User Generator) 화면 구성 – 2

lr3 min

Run Load Tests(Controller) 화면구성 – 1

lr4 min.

Run Load Tests(Controller) 화면구성 – 2

lr5 min

Analyze Test Results (Analysis) 화면구성

lr6 min

LoadRunner의 테스트 예제

예시로 한국선박기관 수리공업협동조합 웹사이트(ksric.com)를 기준으로 조합에 가입되어 있는 업체명을 검색하는 부하 테스트를 해보겠습니다.

lr7 min

스크립트를 생성하기 위해서 Create/Edit Scripts를 선택하여 위와 같은 순서로  설정하고 진행을 하도록 합니다.

lr8 min

레코딩이 시작되면 이벤트를 감지하는 컨트롤러가 나타나고 입력한 주소의 웹 페이지가 실행됩니다.

lr9 min

스크립트의 레코딩이 시작되면 이와 같은 레코딩 컨트롤부가 나타납니다.

lr10 min

실행부 트랜잭션인 Action을 선택한 후 Insert Start Transaction을 클릭합니다.

lr11 min

트랜잭션명은 임의의 명을 사용하게되는데 업체정보를 검색하는 테스트이기 때문에 검색으로 정하였습니다.

lr12 min

트랜잭션을 일으킬 동작을 실행하기 위해서 업체명에 업체명 검색어를 입력하고 검색합니다.

lr13 min

위와 같이 업체검색 결과 페이지가 확인되면

lr14 min

End Transaction을 선택하여, 설정한 트랜잭션인 ‘검색’을 종료합니다. 이런 작업을 반복하여 여러 개의 트랜잭션을 설정할 수 있습니다.

lr16 min

실행 트랜잭션을 모두 정의한 뒤 스크립트를 종료할 vuser_end를 선택한 뒤, Start Transaction을 클릭합니다.

lr17 min

트랜잭션 이름을 종료로 입력하고 스크립트가 종료되는 행동을 임의로 정의합니다.

lr18 min

여기서는 왼쪽 상단에 KSRIC.com의 front page로 이동하는 링크버튼을 클릭하는 것으로 종료 트랜잭션을 설정하겠습다.

lr19 min

Front page로 이동이 완료되면 End Transaction을 클릭하여 vuser_end 트랜잭션을 종료합니다.

모든 트랜잭션의 정의가 완료되고 스크립트를 종료하려면 stop 버튼을 을 클릭하여 스크립트 레코딩을 종료합니다.

lr22 min

스크립트 레코딩이 종료되면 위와 같이 자동으로 생성된 스크립트를 확인할 수 있습니다.

lr23 min

사용자가 다양한 검색어를 입력한다는 전제를 실행하기 위해 수동으로 파라미터를 처리하도록 스크립트를 수정할 수 있습니다.

lr24 min

스크립트 레코딩 시 “검색”을 수행한 스크립트는 Action입니다. Action스크립트를 선택하고 검색어를 스크립트에서 검색하여 검색어를 확인한 후 오른쪽 상단에 Parameter List를 클릭합니다.

lr25 min

Parameter List창에서 New를 클릭하여 파라미터 리스트를 작성합니다.

lr27 min

그전에 여러 업체명을 검색어로 쓰기위해 텍스트 파일을 생성해 놓습니다.

lr26 min

생성하였던 파일을 불러서 파라미터 리스트를 작성합니다. 수동으로 Add Row를 클릭하여 파라미터 리스트를 작성 할 수도 있습니다.

lr28 min

검색어를 드래그하여 마우스 오른쪽 버튼을 클릭하면 나타나는 메뉴에서 Replace with a Parameter를 선택합니다.

lr29 min

Select or Create Parameter창에서 미리 만들어 놓은 파라미터리스트를 선택하면 아래와같이 검색어가 파라미터로 변경됩니다.

lr30 min

 lr31 min

수동 파라미터로 변경이 끝나면 Tools→ Create Controller Scenario를 선택합니다.

lr32 min

Create Scenario창에서 설정을 하게되는데 여기서는 Manual Scenario를 선택하여 Number of users(가상 사용자 수)를 설정합니다.(none License에서 가상사용자수의 최대수는 25입니다.)

lr33 min

설정을 완료하고 OK를 클릭하면 Controller에 자동으로 연결됩니다.

lr34 min

실행환경을 수정한 후 상단에 플레이버튼을 클릭하여 시나리오를 시작합니다. 더불어 Global Schedule의 리스트를 더블클릭하게 되면 아래와 같은 내용들을 설정할 수 있습니다.

lr35 min

lr36 min

lr37 min

lr38 min

lr45 min

시나리오가 수행이 완료되면 Analyze Result(Analysis 연결)버튼을 클릭합니다.

lr41 min

마지막으로 시나리오 수행결과에 따른 리포트가 출력 되는것을 볼 수가 있습니다.

댓글 남기기