VuGen(가상사용자 Generator) LoadRunner의 스크립트 예
VUGen이란 무엇인가요?
VUGen (가상사용자 Generator)는 시스템에서 실제 사용자 동작을 에뮬레이션하기 위한 테스트 스크립트를 생성하는 LoadRunner의 핵심 도구입니다. VUGen에서는 사람을 가상 사용자(VUser)로 대체하고 VUser가 수행하는 작업은 VUser 스크립트에 기록되어 테스트 및 모니터링을 위해 실제 사용자 동작을 에뮬레이트합니다.
VUGen은 LoadRunner의 네 가지 핵심 구성 요소 중 하나입니다. Performance를 시작할 때 상호 작용하는 첫 번째 구성 요소입니다. 지원 HP LoadRunner를 사용합니다.
VUGen과 관련된 몇 가지 주요 기능을 이해해 보겠습니다.
VU스크립트: 이미 설명했듯이 VUGen의 목적은 실제와 유사한 가상 사용자를 시뮬레이션하는 데 사용되는 VUScript를 만드는 것입니다.
행위: 작업은 정의된 작업을 달성하기 위해 로드 중인 시스템에서 수행되는 사용자 트랜잭션 집합입니다. 작업은 다른 프로그래밍 언어의 함수와 비교할 수 있습니다. 각 Vuser 스크립트에는 3가지 기본 기능이 있습니다.
- Vuser_init(응용 프로그램에 로그인하는 데 사용됨)
- 작업(비즈니스 프로세스를 기록하는 데 사용)
- Vuser_end(응용 프로그램 로그아웃에 사용)
VUGen은 스크립트를 기록할 뿐만 아니라 이를 재생하여(VUser 1명만) 스크립트가 올바르게 기록되었는지 확인합니다. 스크립트가 올바르게 기록되었는지 확인한 후 이를 LoadRunner 시나리오에 통합합니다.
VUGen의 스크립트 개발 프로세스
1. 스크립트 기록: 일반적으로 이는 모든 사용자 작업이 스크립트에 기록되는 스크립팅의 첫 번째 단계입니다.
2. 재생 및 확인: 스크립트가 기록되면 스크립트에 응답하여 제대로 작동하는지 확인하세요. 애플리케이션 프런트엔드 또는 데이터베이스를 통해 영향을 확인합니다.
3. 스크립트 강화: 녹음이 확인되면 체크포인트 추가, 데이터 유효성 검사, 트랜잭션 및 랑데뷰 포인트 추가를 통해 스크립트를 강화합니다.
4. 재생 및 확인: 이전과 마찬가지로 스크립트를 다시 실행하여 모든 것이 의도한 대로 작동하는지 확인하세요.
5. 런타임 설정 구성: 간격 지속 시간, 인지 시간 변화, 프록시 설정 및 외부 리소스 무시 여부를 구성하고 제어합니다.
6. 로드 시나리오에 사용: 테스트 목표에 따라 부하 시나리오를 공식화합니다. 부하 분산 및 지역 전체 에이전트를 사용하여 실제와 같은 시나리오를 만드세요.
QTP와 LoadRunner 간의 기록 비교
VUGen은 UI 개체를 무시합니다.
QTP 스크립트와 달리 LoadRunner 스크립트는 GUI와 독립적입니다. 이는 생성된 코드가 UI 개체를 기반으로 작동하지 않고 서버에 대한 클라이언트 요청의 주체에 따라 작동하고 클라이언트에 대한 서버 응답을 기대하기 때문입니다. 이것이 LoadRunner 스크립트 재생이 항상 브라우저에 독립적인 이유입니다. VUser는 클라이언트 소프트웨어(SUL)에 의존하지 않고 서버 API에 대한 호출을 실행하여 서버와 직접 통신할 수 있습니다. 즉, 로드 중인 시스템의 UI가 변경되더라도 스크립트에 영향을 주지 않습니다. 이것은 말해줍니다; 그만큼 성능 시험 GUI 개체가 아닌 클라이언트/서버 통신(요청 및 응답)을 완전히 기반으로 합니다.
자세한 내용은 아래 링크를 참조하세요. http://youtu.be/FDORUeqpNJs?t=3m41s
아래에서 VUGen 스크립팅이 어떻게 작동하는지 자세히 살펴보겠습니다.
웹투어 애플리케이션 소개
모든 실습 목적으로 우리는 LoadRunner와 함께 번들로 제공되는 웹 투어 애플리케이션을 사용할 것입니다.
HP 웹 투어에는 종속적인 "웹 투어"가 필요합니다. 아파치 작동하기 전에 "서버"가 실행되어야 합니다. Web Tours Apache 서버를 실행하려면 시작 메뉴 => HP 소프트웨어 => 샘플 => 웹으로 이동한 다음 HP Web Tour 서버 시작을 클릭합니다.
"서버"가 활성화되면 셸이 열리고 콘솔에 출력됩니다.
콘솔은 아래 스냅샷과 같아야 합니다. 셸에서 IP 주소를 찾으세요.
참고: 이 창을 닫으면 서버가 중지됩니다.
이제 웹 투어 애플리케이션에 액세스할 수 있습니다 –
일단 시작되면 다음과 같이 보일 것입니다 –
VUGen 환경 이해
VUGen을 실행하려면 바탕 화면에서 VUGen 바로가기를 두 번 클릭하거나 시작 메뉴 => HP 소프트웨어 =>로 이동한 다음 가상 사용자를 클릭합니다. Generator.
VUGen 스플래시 화면이 다음과 같이 나타납니다.
그러면 스플래시 화면에서 HP Virtual User가 열립니다. Generator 홈페이지는 아래와 같습니다.
파일 메뉴에서 다양한 명령 컨트롤을 볼 수 있습니다. 이러한 제어의 목적은 다음과 같습니다.
새로운 스크립트 및 솔루션: 새 스크립트 작성을 시작하는 데 사용됩니다. 또는 도구 모음 버튼에서 새 스크립트를 생성할 수 있습니다.
열기 >> 스크립트 솔루션: 디렉터리에서 이전에 생성된 기존 스크립트 또는 솔루션을 여는 데 사용됩니다.
추가 >> 새 스크립트: 이전에 생성된 스크립트를 현재 솔루션에 추가하는 데 사용됩니다.
첫 번째 스크립트 작성을 시작하면서 다른 컨트롤에 대해 알게 될 것입니다. 계속해서 배워봅시다.
LINK 비디오에 접근할 수 없는 경우
첫 번째 VUGen 스크립트 만들기
녹화하기 전에 Web Tours 앱 서버가 실행 중인지 확인하세요. 서버를 계속 실행해야 하므로 닫지 마십시오. 창이 귀찮다면 최소화할 수 있습니다.
Tip 실제 문제에서는 특히 복잡한 비즈니스 워크플로와 데이터 단계가 포함된 경우 주제 애플리케이션(SUL)에 익숙해져야 합니다. HP 웹 투어와 상호 작용하여 녹화할 때 정확한 단계를 반복할 수 있는지 확인할 수도 있습니다.
애플리케이션(SUL)의 스크립팅을 시작하기 전에 애플리케이션 흐름에 익숙해져야 합니다. 이 자습서를 통해 HP LoadRunner와 함께 제공되고 자동으로 설치되는 HP 웹 투어에 대해 알아 보겠습니다.
단계 1) 아래 스냅샷에 표시된 대로 파일 =>새 스크립트 및 솔루션을 클릭합니다.
단축키(Ctrl+N)를 사용하여 동일한 작업을 수행할 수 있습니다.
단계 2) 프로토콜을 선택하는 창이 표시됩니다. 목록이 이전 버전과 약간 다르게 보입니다.
1. 단일 프로토콜 선택
2. 웹
3. 스크립트 이름을 입력하세요
4. 만들기를 클릭합니다.
참고 : 당신이 사용할 수 프로토콜 고문 애플리케이션이 통신에 사용하는 올바른 프로토콜을 결정합니다. HP 웹 투어의 경우 "웹 - HTTP/HTML" 프로토콜이 필요하다는 것을 이미 알고 있습니다. 나중에 SUL에 적합한 프로토콜을 결정하는 방법을 알아보겠습니다.
Tip 응용 프로그램은 서버와 통신하기 위해 때때로 1개 이상의 프로토콜이 필요할 수 있습니다. 이러한 경우 창 왼쪽에 있는 다중 프로토콜 목록으로 이동하십시오.
그러나 HP 웹 투어에는 VUGen으로 스크립팅할 때 하나의 프로토콜만 필요합니다.
Tip 스크립트 이름은 쉽게 바꿀 수 없으므로 스크립트 이름을 지정할 때 창의력을 발휘하세요. 스크립트 이름을 바꾸려면 다음을 사용하세요. 다른 이름으로 저장 기능을 추가하고 새 이름을 지정합니다. 좋은 명명법은 WT01_Signup과 같은 것일 수 있습니다. 여기서 WT는 애플리케이션 이름의 짧은 형식이고, 01은 비즈니스 프로세스 시퀀스이며, Sign up은 스크립팅되는 비즈니스 프로세스를 나타냅니다. 또한 스크립트 이름에는 공백을 사용할 수 없습니다.
단계 3) 만들기를 클릭하면 HP VUGen이 IDE(통합 개발 환경)를 열거나 코드 편집기. Function Action의 기본 서명을 제외하고 스크립트 파일이 비어 있음을 알 수 있습니다. 아래 스냅샷은 더 이해하는 데 도움이 될 것입니다.
단계 4) 녹음 버튼을 클릭하세요 도구 모음에서 찾을 수 있습니다. 아래 스냅샷을 참고하세요:
단계 5) 새 창이 열립니다
1. 위 창을 살펴보면 이 팝업의 제목 표시줄에 스크립트 이름이 언급되어 있습니다. 이는 한 번에 열려 있는 여러 스크립트를 처리할 때 올바른 스크립트를 변경하는 데 도움이 됩니다.
2. 나머지 컨트롤이 표시되지 않으면 더 적은 옵션 버튼을 눌러 옵션이 적게 표시되는 일이 없도록 하세요.
3. 행동에 기록하다 필드는 녹음 후 코드가 생성되는 위치를 결정합니다. VUGen 스크립트는 녹화 중 및 녹화 후에 다른 작업으로의 전환을 용이하게 하거나 새로운 작업을 생성합니다.
4. 기록: 필드는 VUGen에게 주제 애플리케이션(SUL)이 웹 애플리케이션 또는 데스크톱 클라이언트임을 알려줍니다. 녹화가 시작되면 이 옵션을 재정의할 수 없습니다.
5. 어플리케이션: 필드는 녹화에 사용할 브라우저를 VUGen에 알려줍니다. 웹 – HTTP/HTML 프로토콜로 작업하지 않는 경우 이 필드에서 데스크톱 클라이언트를 선택합니다.
Tip QTP 스크립트와 달리 LoadRunner 샘플 스크립트는 GUI와 독립적입니다. 이는 생성된 코드가 UI 개체를 기반으로 작동하지 않고 서버에 대한 클라이언트 요청의 원칙에 따라 작동하고 일반적으로 HTML 형식(따라서 프로토콜 이름)으로 클라이언트에 대한 서버 응답을 기대하기 때문입니다. )
6. URL 주소: SUL의 URL이 여기에 입력됩니다. VUGen은 "녹화 시작"을 클릭하면 이 URL을 호출합니다. 사용되는 브라우저는 “기록:” 필드가 기본 브라우저와 다른 경우.
7. 녹음 시작: 즉시 vs. 지연: 선택한 경우 즉시 녹화 모드에서는 VUGen이 "녹화 시작" 버튼을 누르자마자 이벤트 녹화를 시작한다는 것을 알 수 있습니다. 그러나 지연된 녹화 모드를 선택하면 VUGen이 시스템(SUL)을 호출하지만 플로팅 바에서 녹화 버튼을 클릭하지 않는 한 이벤트 캡처를 시작하지 않습니다.
8. 작업 디렉토리 : 이는 이벤트를 캡처하는 동안 VUGen이 사용할 임시 디렉터리입니다. 폴더를 분실한 경우를 대비해 이 위치에서도 스크립트 사본을 사용할 수 있습니다 🙂
9.녹음 옵션: 이러한 설정은 캡처할 URL 유형과 사용할 녹음 모드를 VUGen에 알려줍니다.
10.녹음 시작: 녹음을 시작합니다. 그것을 클릭하세요
단계 6) 녹화가 시작되면 VUGen은 선택한 브라우저를 사용하여 HP Web Tours 응용 프로그램을 호출합니다.
Web Tours 애플리케이션에 사용자를 등록하고 기본 스크립트를 기록하는 LoadRunner 스크립팅 예제를 살펴보겠습니다.
녹음에 대한 다양한 제어 기능을 제공하는 부동 녹음 표시줄이 나타납니다. 이는 경과된 시간과 자동으로 캡처된 이벤트 수를 알려줍니다. 플로팅바를 자세히 살펴보겠습니다.
위의 스냅샷에서 SUL은 56개의 이벤트를 발생시켰으며 녹화가 시작된 후 총 0분 25초의 시간이 경과했습니다.
또한 입력할 때 어떤 이벤트도 발생하지 않는다는 것을 알 수 있습니다. 이유를 스스로에게 물어보세요. 대답 할 수 있니?
이는 입력하는 동안 클라이언트와 서버 간 통신이 이루어지지 않기 때문입니다. 따라서 이벤트가 발생하지 않으며 입력과 관련된 스크립트가 생성되지 않습니다. 코드는 양식을 제출한 후에만 생성됩니다(계속 클릭).
녹음이 일시 정지될 수 있음 일시 정지 버튼을 사용합니다. 녹음이 일시 중지된 상태로 유지되는 한 애플리케이션에서 실행되는 모든 이벤트는 무시됩니다. 이는 또한 애플리케이션이 SUL에서 요청을 보내거나 응답을 받는 경우에도 녹음을 일시 중지하는 한 스크립트가 생성되지 않음을 의미합니다.
녹음을 일시 중지한 경우 녹음을 클릭해야 합니다. 녹음을 재개하려면 플로팅 바에서 버튼을 누르세요.
vuser_init 섹션에 녹화하는 동안 랑데부 버튼이 활성화되지 않은 것을 알 수 있습니다. 액션으로 전환(또는 새 액션 생성)하고 계속 녹음하세요. 작업을 전환하는 방법은 아래 스냅샷을 참조하세요.
Action으로 전환한 후에는 랑데뷰가 버튼이 자동으로 활성화됩니다. 이 때문입니다 VUGen은 vuser_init에 랑데부 포인트 삽입을 허용하지 않습니다..
기록적인 시간에 트랜잭션 사용
X명의 사용자가 동시에 가입할 때 응답 시간을 측정하고 싶다고 가정해 보겠습니다. 이 목표를 다루기 위해 더 읽어 보겠습니다.
지금까지 vuser_init 작업에서 응용 프로그램 열기를 기록했습니다. 작업으로 전환한 후 SUL에서 요구하는 사용자 정보를 입력합니다. 이제 "계속" 버튼을 누르기 전에 아래 단계를 따르세요.
버튼을 클릭하여 거래를 시작하세요 플로팅 바에서. 거래 이름을 입력합니다(예: 01_Signup).
Tip 고유하게 유지하려면 01_과 같은 접두사를 사용하여 거래 이름을 지정하는 것이 좋습니다.
플로팅 바는 다음과 같습니다:
확인을 클릭하여 거래 레이블을 닫습니다.
해당 애플리케이션의 계속 버튼을 클릭하세요.
버튼을 클릭하여 거래 종료. 종료하려는 거래의 이름을 선택하세요(예: 이 경우 01_Signup). 설명은 아래 스냅샷을 참조하세요.
여러 트랜잭션을 열지 않은 경우 하나의 이름만 표시됩니다. 그러나 여러 개가 있는 경우에는 목록에서 선택할 수 있습니다.
기록 시간에 주석 삽입
이제 거래를 성공적으로 마감했으므로 기록적인 시간에 주석을 달아 나중에 코드를 공부할 때 상기시켜 줄 수 있습니다. 떠 있는 막대에서 주석을 삽입할 버튼을 클릭합니다. 떠 있는 막대 옆에 텍스트 상자가 나타나서 원하는 텍스트를 입력할 수 있습니다.
이 주석은 확인 버튼을 클릭하기 전에 방금 완료한 단계(코드) 이후의 코드에 삽입됩니다.
응용 프로그램에서 계속을 클릭할 수 있습니다. 애플리케이션에서 환영 메시지를 보게 될 것입니다.
이제 vuser_end 작업을 선택하고 다음을 클릭합니다. 사인 오프 응용 프로그램에서. 응용 프로그램을 닫고 중지 버튼을 클릭하십시오 플로팅 바에서.
코드 생성
녹화가 중지되면 VUGen 사후 생성 활동이 표시됩니다. 여기에는 녹음을 기반으로 하는 코드, 트랜잭션 및 설명 생성이 포함됩니다. 아래 스샷을 참고하세요.
VUGen이 "생성 후 작업 수행"을 완료한 직후 "생성 후 작업 상관관계에 대한 스캔 수행"을 시작합니다. 상관관계가 무엇을 의미하는지 더 자세히 살펴보겠습니다.
포스트 생성 작업이 완료되면 Design Studio 창이 표시됩니다. 상관관계 후보가 발견되면 이 창에서 검토할 수 있습니다.
닫기 버튼을 안전하게 클릭하면 VUGen이 생성된 코드로 이동합니다.
창은 다음과 같습니다:
위의 그림에서 강조된 것처럼, 편집기에는 이해하기 쉽고 읽기 쉬운 코드가 들어 있습니다. 기록하는 동안 사용된 매개변수를 살펴볼 수 있습니다.
VUGen의 왼쪽에는 코드의 세부사항을 보지 않고도 "스크립트"를 이해할 수 있는 단계 내비게이터(Step Navigator)가 있습니다. 예를 들어, URL을 열고, 고민 시간을 보내고, 양식을 제출하는 등의 단계를 읽을 수 있습니다. 이는 각 요청과 관련된 모든 매개변수를 캡슐화합니다.
스크립트가 생성되었습니다. 파일 메뉴를 클릭한 다음 다른 이름으로 스크립트 저장을 클릭하여 스크립트를 저장할 위치를 찾아보세요. VUGen은 이전에 이미 스크립트를 저장한 경우 마지막으로 사용한 디렉터리를 자동으로 제안합니다. 제안되는 이름은 녹음을 시작할 때 언급한 이름입니다.
모두 완료되었습니다.
이제 첫 번째 스크립트를 성공적으로 생성하고 저장한 것을 축하합니다.
프로토콜 및 프로토콜 조언자 결정
왜 우리가 웹(HTTP/HTML) 프로토콜을 사용했는지 스스로에게 의문을 품었을 수도 있습니다. 어떤 프로토콜을 사용해야 하는지 어떻게 결정했나요? 대답은 그렇게 간단하지 않습니다.
이 질문에 답하기 위한 전제 조건으로 갖춰야 할 아키텍처 기반 기술 세트가 있습니다. 초보자라면 SUL에 대한 견고한 클라이언트 측 아키텍처 및 개발 기술을 가진 사람과 짝을 이룰 수 있습니다. SUL 개발자와 상의하여 애플리케이션에서 어떤 인터페이스를 활용하는지 알아낼 수 있습니다. 이를 통해 가상 사용자 스크립트 개발 및 프로토콜 선택에 사용할 인터페이스로 자연스럽게 이동할 수 있습니다.
아키텍처 기술에 대한 지식이 부족한 초보자의 요구를 해결하기 위해 LoadRunner는 LoadRunner 9.1에서 Protocol Advisor라는 기능을 도입했습니다. 이 기능으로 많은 사람의 삶이 더 편리해졌지만, protocol advisor 대신 아키텍처 및 개발 기술에 더 의존하고 개발팀으로부터 기본 개발 기술에 대한 정보를 받아야 합니다. Protocol이 모든 경우에 올바른 프로토콜을 제안하지 않을 수도 있습니다.
프로토콜 조언자를 사용하려면 기록 => 프로토콜 조언자 => 애플리케이션 분석으로 이동하세요.
아래 스냅샷을 참고하세요:
그러면 프로토콜 조언자의 기본 창이 열립니다. 눈치채시면 녹화를 위해 나타나는 창이 조금 비슷합니다. 아래 창을 살펴보겠습니다.
우리는 웹 기반 애플리케이션을 사용하고 있으므로 웹 브라우저를 선택합니다.
이후에 호출될 애플리케이션의 URL을 지정하십시오. 작업 디렉토리는 VUGen이 사용하는 임시 디렉토리일 뿐이므로 그대로 둘 수 있습니다. 이 디렉터리에 대한 읽기 및 쓰기 액세스 권한이 있는지 확인하세요.
분석 시작 버튼을 클릭합니다.
기록 시간 플로팅 바와 유사한 플로팅 바가 나타납니다. 스냅샷을 살펴보세요:
프로세스는 경과된 시간과 발생한 이벤트 수를 알려줍니다. 그러나 이 정보는 필수는 아닙니다. 이 이벤트 카운터의 유일한 이점은 클라이언트 SUL이 서버와 통신하고 있다는 것입니다.
대기업 애플리케이션의 다양한 비즈니스 프로세스에는 다양한 프로토콜이 포함될 수 있으므로 한 번에 하나의 비즈니스 프로세스만 분석하는 것이 좋습니다. 예를 들어, 일부 애플리케이션의 대시보드에는 Ajax 또는 Flex 등이 있을 수 있지만 로그인 페이지에는 표시되지 않습니다.
특정 비즈니스 프로세스 실행을 마친 후에는 중지 버튼을 누를 수 있습니다. VUGen 프로토콜 어드바이저는 프로토콜 제안에 대한 요약 보고서를 작성합니다. 어떻게 생겼는지 살펴보세요:
Protocol Advisor의 제안을 확인할 수 있습니다. 이것이 최선의 선택일 수도 있고 아닐 수도 있습니다.
이제 Protocol Advisor를 사용하는 법을 배웠을 것입니다. 그러나 이것은 초보자나 "다른 의견"이 필요한 상황에 도움이 될 수 있습니다. 아키텍처 감각, 프로그래밍 지식, 개발 기술 및 개발 팀으로부터 받은 정보에 의존하여 프로토콜을 결정하세요.
녹음 옵션
VUGen이 스크립트를 생성할 때마다 생성된 코드는 "기록 옵션"에서 찾을 수 있는 다양한 구성을 기반으로 합니다. 또는 Ctrl + F7을 눌러 LoadRunner에서 기록 옵션을 볼 수 있습니다.
모든 구성을 논의하기 전에 녹화 옵션 창을 살펴보겠습니다.
일반, 상관 관계, 네트워크 및 데이터 형식 확장과 같은 다양한 구성 범주가 있습니다. 이들 중 가장 중요한 것을 하나씩 이해해 봅시다.
일반 => 녹음:
이 주제에는 세부적인 이해가 필요합니다. 그러므로 이에 대해서는 별도로 논의한다.
일반 => 스크립트:
간략하게 스냅샷을 살펴보세요.
당신은 지원하는 언어 드롭다운이 비활성화되었습니다. 일반적인 오해는 LoadRunner가 다른 언어로 코드를 생성하지 않는다는 것입니다. 또 다른 신화는 다른 언어로 작업하려면 라이센스가 필요하다는 것입니다.
둘 다 거짓입니다. LoadRunner는 스크립트를 생성할 때 사용할 언어를 스스로 결정합니다. 거의 모든 경우에 당신은 다음과 같은 작업을 하게 될 것입니다. C 언어.
확실히 Java 애플리케이션(예: Java 애플릿) 생성되는 코드는 다음 위치에 있습니다. Java스크립트 언어.
VUGen은 다음에서 스크립트를 생성합니다. VB스크립트 언어 Visual Basic classic(MS Visual Studio 2002)에서 개발된 애플리케이션에만 해당
스크립팅 옵션:
"트랜잭션 종료 후 고정 인지 시간 생성"을 선택할 수 있습니다. 즉, 사용자가 아무리 기다려도 생성된 인지 시간(지연)은 지정된 값과 동일합니다. 값은 초 단위입니다.
작업의 최대 줄 수 파일은 VUGen이 작업을 생성하는 최대 줄 수를 나타냅니다. 스크립트가 더 큰 경우 VUGen은 자동으로 새 작업을 생성합니다. 기본값은 60,000으로 설정되어 있습니다. 지정할 수 있는 최대값은 65,000입니다.
이 구성은 데스크탑 애플리케이션을 다룰 때 도움이 될 수 있습니다. Oracle 백엔드에.
일반 => 프로토콜 기록 시작 시 선택한 프로토콜을 선택 및 선택 취소할 수 있는 옵션을 제공합니다.
기본적으로 이는 다음을 원할 때만 사용됩니다. 스크립트 다시 생성.
화면을 살펴보세요:
이는 스크립트를 기록할 때 다중 프로토콜을 사용한 경우에 유용합니다. 스크립트를 재생성하고 원하지 않는 프로토콜을 선택 취소하고 다시 기록할 필요 없이 새 스크립트를 얻을 수 있습니다.
일반 => 코드 생성:
아래 스냅샷을 살펴보세요.
이 구성은 VUGen에게 기록 시간에 상관관계에 대한 후보를 찾도록 지시합니다. 자동 상관 관계를 원하지 않으면 이 기능을 끄는 것이 좋습니다.
상관관계 => 구성 :
아래 스크린샷을 보고 화면에 익숙해지세요.
자동 상관관계는 5%에서 10%까지만 도움이 되지만 "규칙 검색" 및 "발견된 값 자동 상관관계"를 선택할 수 있습니다. 그러나 스크립트가 재생되지 않으면 버튼을 클릭하여 기본값으로 복원하는 것을 고려할 수 있습니다.
상관관계 => 규칙 :
규칙으로 이동하면 VUGen이 상관관계 후보를 찾기 위해 사용하는 다양한 규칙을 볼 수 있습니다. 애플리케이션(SUL)이 매개변수로 사용하는 것이 무엇인지 알고 있는 경우 사용자 정의 규칙을 추가할 수 있습니다. 그러나 이는 기록 시간 설정의 고급 사용입니다. 초보자라면 이 주제를 건너뛰어도 됩니다.
HTTP 속성 => 많은:
이 프레임은 HTTP 바인딩과 관련된 다양한 설정을 제공합니다.
각 작업에 대한 컨텍스트를 재설정하면 이 옵션을 활성화하면 VUGen이 작업 간의 모든 HTP 컨텍스트를 녹음 전 초기 상태로 재설정하여 녹음 세션의 깔끔한 시작을 제공하도록 지시합니다. 이 옵션은 기본적으로 활성화되어 있습니다.
필요하지 않은 한 나머지 구성은 그대로 둘 수 있습니다.
네트워크 => 포트 매핑:
이 프레임은 그대로 두어야 합니다. 데스크톱 응용 프로그램을 기록하는 경우 WinINet 수준 데이터를 선택해야 할 수도 있습니다.
옵션(소켓 수준 데이터를 사용하는 경우)으로 이동하여 SSL 버전이나 기타 SSL(Secure Socket Layer) 유형과 같은 다양한 옵션을 선택할 수 있습니다. 초보자 수준이거나 이러한 옵션이 필요하지 않은 경우 건너뛸 수 있습니다. 화면에 익숙해지도록 살펴보세요.
이제 대부분의 기록 시간 옵션이 완료되었습니다. 다음 주제로 넘어가서 HTML과 URL 기반 스크립팅의 차이점을 이해해 보겠습니다.
HTML 기반 스크립팅과 URL 기반 스크립팅의 차이점
HTML 기반 스크립트 또는 URL 기반 스크립트를 선택하는 옵션을 발견했을 것입니다. 플래시백을 위해 스냅샷을 살펴보세요.
그렇다면 이 옵션은 무엇이며 어떤 옵션을 선택해야 할까요?
The HTML 기반 스크립트 사용자 작업을 기반으로 하며 스크립트에는 수행된 작업에 직접적으로 해당하는 기능이 포함되어 있습니다. 작은 코드 조각의 예를 이해해 보겠습니다.
예:
web_link(“Enterprise Systems Performance", "Text=Enterprise Systems Performance," "Snapshot=t4.inf", LAST);
The URL 기반 스크립트 사용자 작업의 결과로 서버로 전송된 HTTP 요청을 기반으로 합니다.
다음은 위와 동일한 작업을 수행하는 URL 모드의 코드 예입니다(HTML 모드에서).
예:
web_url(“Enterprise Systems Performance", "URL=/esp.html", "TargetFrame=", "Resource=0", "RecContentType=text/html", "Referer=/atc?. . . , "Snapshot=t4.inf", "Mode=URL", LAST);
Tip 앞으로 나아가기 전에 스스로 실험해 보는 것이 가장 좋습니다. 녹화 시간 설정을 변경하고 동일한 스크립트를 두 번, 즉 HTML 모드로 한 번, URL 모드로 한 번 기록한 다음 둘을 비교합니다. 차이점을 이해할 수 있도록 스크립트를 짧게 유지하세요.
사용할 모드를 어떻게 결정합니까?
두 모드의 장단점을 이해하여 특정 상황에서 어떤 모드가 더 적합한지 이해해 보겠습니다.
HTML 기록의 이점
- 동적 가치를 캡처할 필요성 감소
- 작업 태그 값과 숨겨진 데이터는 하드코딩되지 않습니다.
- 재생 중에 메모리에서 검색됩니다.
- 동적인 경우 VUser는 계속 실행됩니다.
- 스크립트는 비즈니스 프로세스만큼만 큽니다. 페이지당 한 단계입니다.
HTML 기록의 단점
- 스크립트의 확장성이 떨어집니다.
- 재생 중 메모리(캐시)를 검색합니다.
- 더 많은 메모리가 필요합니다
- 더 많은 CPU 전력이 필요합니다.
URL 기록의 이점
- 유연성
- 지원 Java 페이지의 애플릿 및 ActiveX 개체
- UNIX에서 재생 기능
- 확장성
- 스크립트는 더 적은 리소스를 필요로 하기 때문에 HTML 스크립트보다 확장성이 뛰어납니다.
URL 기록의 단점
- 스크립트에는 더 많은 상관 관계가 필요합니다(캐시에서 아무것도 검색되지 않음).
- 상황에 맞는 검사가 작동하지 않습니다(파서가 비활성화됨)*
- 스크립트가 큼(모든 이미지와 프레임이 별도의 단계로 기록됨)
다음은 간단한 그림입니다.
HTML 모드 | URL 모드 |
---|---|
직관적이고 이해하기 쉽습니다. | HTML 스크립트만큼 직관적이지 않습니다. |
스크립트는 더 작고 요청은 캡슐화되어 이해하기 쉽습니다. | 스크립트는 크기가 커서 각 이미지, CSS, HTML 등에 대한 호출을 포함하므로 이해하기 어렵습니다. |
확장 가능 | 보다 확장 가능하고 효과적인 부하 시험. |
재생성 스크립트 사용
방금 녹화한 것과 동일한 스크립트를 녹화하고 싶지만 녹화 시간 설정은 다르다고 가정해 보겠습니다. 이러한 경우 스크립트 재생성 기능을 사용할 수 있습니다.
Record => Regenerate Script 또는 단축키 Ctrl+를 사용하여 액세스할 수 있습니다.Shift+R
메뉴를 클릭하면 VUGen은 기존 스크립트와 기존 스크립트에 대한 모든 변경 사항이 손실된다는 경고를 표시합니다. 경고 메시지는 다음과 같습니다.
옵션을 클릭하여 여기에서 녹화 시간 옵션을 열 수도 있습니다.
확인을 클릭하여 스크립트 재생성을 진행합니다.
스크립트 재생 및 로그 이해
스크립트를 저장한 후 도구 모음에서 재생하거나 F5를 누르세요.
도구 모음에서 이 버튼을 찾을 수 있습니다.
서버가 실행 중인지 확인해야 합니다(애플리케이션이 제대로 작동하려면 필요함).
스크립트를 재생할 때 QuickTest Professional과 달리 재생할 브라우저를 열지 않는다는 것을 알 수 있습니다. 이 실행은 SUL에서 단 1명의 사용자 로드만 시뮬레이션한다는 점을 기억하십시오. 이 실행의 목적은 스크립트가 작동하는지 확인하는 것입니다.
Tip 애플리케이션 자체의 영향을 확인해야 합니다. 예를 들어, 레코드를 생성하는 경우 애플리케이션으로 이동하여 스크립트가 실제로 레코드를 생성했는지 수동으로 확인하세요. 귀하의 스크립트는 다른 테스트 또는 QA 팀에서 테스트되지 않을 가능성이 높으므로 스크립트에 매우 주의하고 철저하게 테스트해야 합니다.
재생 로그를 활성 상태로 둘 수 있습니다. 이는 상관 관계의 후보와 발생할 수 있는 오류 및 경고를 식별하는 데 큰 도움이 되기 때문입니다. 로그 생성에는 많은 리소스가 필요하므로 스크립트 디버깅 및 시나리오 사용이 끝나면 로그를 끄는 것이 가장 좋습니다.
녹화 및 재생 중에 생성된 파일 개요
VUGen을 닫고 스크립트 폴더에 생성된 파일을 살펴보겠습니다.
VUGen은 VUser 런타임 및 설정 정보가 포함된 일련의 구성 파일, 데이터 파일 및 소스 코드 파일을 생성합니다. 스크립트의 각 반복 결과는 별도로 저장됩니다. 스크립트를 한 번 이상 실행한 경우 result1이라는 이름의 디렉터리가 표시됩니다. 이 디렉토리는 시스템용이므로 테스터는 무시해야 합니다.
이해해야 할 중요한 파일:
VUGen은 각 작업에 대해 하나의 .c(C 언어 코드 파일)를 생성합니다. 따라서 마지막으로 vuser_init.c, vuser_end.c 및 Action.c를 갖게 됩니다. 더 많은 작업을 생성했다면 해당 파일도 볼 수 있습니다. 예를 들어 myAction.c
재생 로그는 output.txt라는 파일에 저장됩니다. 여러 번 교체한 경우 출력.txt에는 마지막 실행 로그가 포함되는 반면, 출력.bak에는 마지막 실행 이전 로그가 포함됩니다.
.usr 파일에는 사용자 정의한 모든 런타임 구성이 포함됩니다. 모든 구성을 기본값으로 두더라도 이 usr 파일에는 정보가 포함됩니다. 이 파일에는 스크립트를 만드는 데 사용되는 LoadRunner 버전도 포함되어 있습니다. 이 정보는 버전 번호를 기억할 수 없는 오래된 스크립트를 읽는 경우 유용합니다.
"data"라는 폴더가 보일 것입니다. 이 폴더에는 이벤트 이미지와 코드 사본이 보관됩니다. VUGen은 코드를 "재생성"할 때 이러한 파일을 사용합니다.