vugen recording options loadrunner
LoadRunner의 VuGen 스크립트 기록 옵션에 대한 전체 개요 :
에 VuGen 스크립팅에 대한 간략한 소개 이것의 이전 튜토리얼에서 주어졌습니다. 단계별 LoadRunner 가이드 .
이 자습서에서는 몇 가지 중요한 '녹음 옵션'에 대해 설명합니다.
'녹음 옵션'은 스크립트 녹음에서 중요한 개념 중 하나입니다. 스크립트를 기록하는 방법에 대한 다양한 옵션을 선택할 수 있습니다.
=> LoadRunner 자습서의 전체 시리즈를 보려면 여기를 클릭하십시오.
학습 내용 :
스크립트 기록의 옵션
이전 튜토리얼에서 볼 수 있듯이 화면 왼쪽 하단에 '녹화 옵션'링크가 있습니다. ‘녹화 시작’ 페이지.
이 링크를 클릭하여 ‘녹음 옵션’ 페이지.
이제 이러한 옵션에 대해 자세히 설명하겠습니다.
# 1) 일반 녹음
이 옵션을 사용하면 두 가지 녹음 옵션 중 하나를 선택할 수 있습니다.
- HTML 기반
- URL 기반
(i) HTML 기반 : HTML 기반 레코딩은 컨텍스트 기반 (또는 컨텍스트 기반) 레코딩이라고도합니다. 이 기록 모드에서는 각 사용자 작업이 별도의 요청으로 기록됩니다. 예를 들어 , 사용자가 작업 (예 : 로그인)을 수행하면 하나의 '로그인 요청'이 생성됩니다.
에서 예 아래에는 URL을 호출하고 '웹 투어'애플리케이션에 로그인하기 위해 HTML 모드로 기록 된 Vugen 스크립트가 있습니다.
여기에는 Invoke url과 Login의 두 가지 사용자 작업이 있습니다. 따라서 이러한 사용자 작업 각각에 대해 하나씩 두 개의 요청이 기록됩니다.
// Request1 – 웹 둘러보기 호출 URL
web_url('index.htm', 'URL=http://127.0.0.1:1080/WebTours/index.htm', 'Resource=0', 'RecContentType=text/html', 'Referer=', 'Snapshot=t1.inf', 'Mode=HTML', EXTRARES, 'Url=../favicon.ico', 'Referer=', ENDITEM , 'Url=https://www.bing.com/favicon.ico', 'Referer=', ENDITEM , LAST );
// Request2 – 로그인
web_submit_form('login.pl', 'Snapshot=t2.inf', ITEMDATA , 'Name=username', 'Value=jojo', ENDITEM , 'Name=password', 'Value=bean', ENDITEM , 'Name=login.x', 'Value=47', ENDITEM , 'Name=login.y', 'Value=10', ENDITEM , LAST );
또한 첫 번째 요청에는 URL이 표시되지만 두 번째 요청에는 표시되지 않습니다. 즉, 두 번째 요청 (로그인)은 이전 요청 (호출 URL)의 응답에 따라 달라 지므로이 녹화 모드를 '상황에 맞는'녹화라고합니다.
HTML 기반 레코딩의 장점은 스크립트가 더 작고 간단하며 많은 사용자 정의 / 향상 (상관 관계 등)이 필요하지 않다는 것입니다.
반면, 스크립트의 유지 관리가 어려워 질 수 있습니다. 요청은 상황에 따라 달라지며 UI 변경은 스크립트에 영향을 미치고 재생시 오류를 유발할 수 있습니다.
HTML 기반 레코딩은 일반적으로 브라우저 기반 애플리케이션에 권장됩니다.
(ii) URL 기반 : URL 기반 녹화는 문맥 인식 또는 문맥없는 녹화라고도합니다. 이 기록 모드에서는 서버에 대한 각 요청 (사용자 작업에 의해 시작됨)이 URL과 함께 별도의 요청으로 기록됩니다.
예를 들어 , 사용자가 작업을 수행 할 때 (예 : 애플리케이션에 로그인), 기본 로그인 HTML 페이지와 함께 이미지, javascript, CSS 파일 등과 같은 비 HTML 리소스도 다운로드됩니다. URL 기반 기록은 이러한 각 요청에 대해 개별적으로 요청을 생성합니다.
아래 예에서는 URL을 시작하고 '웹 투어'애플리케이션에 로그인하기 위해 Vugen 스크립트를 URL 모드로 기록했습니다.
여기서도 두 가지 사용자 작업이 있습니다. Invoke url과 Login이지만 'Invoke url'작업과 관련된 이미지와 아이콘이 별도의 요청으로 기록되기 때문에 두 개 이상의 요청이 있습니다.
// Request1 – 웹 둘러보기 URL 호출
web_url('index.htm', 'URL=http://127.0.0.1:1080/WebTours/index.htm', 'Resource=0', 'RecContentType=text/html', 'Referer=', 'Snapshot=t1.inf', 'Mode=HTTP', LAST ); web_concurrent_start(NULL); // Request1a - image web_url('hp_logo.png', 'URL=http://127.0.0.1:1080/WebTours/images/hp_logo.png', 'Resource=1', 'RecContentType=image/png', 'Referer=http://127.0.0.1:1080/WebTours/header.html', 'Snapshot=t3.inf', LAST ); // Request1b - image web_url('webtours.png', 'URL=http://127.0.0.1:1080/WebTours/images/webtours.png', 'Resource=1', 'RecContentType=image/png', 'Referer=http://127.0.0.1:1080/WebTours/header.html', 'Snapshot=t4.inf', LAST); web_concurrent_end(NULL); web_concurrent_start(NULL); // Request1c - icon web_url('favicon.ico', 'URL=http://127.0.0.1:1080/favicon.ico', 'Resource=1', 'Referer=', 'Snapshot=t9.inf', LAST ); // Request1d - icon web_url('favicon.ico_2', 'URL=https://www.bing.com/favicon.ico', 'Resource=1', 'RecContentType=image/x-icon', 'Referer=', 'Snapshot=t10.inf', LAST); web_concurrent_end(NULL);
// Request2 – 로그인
web_submit_data('login.pl', 'Action=http://127.0.0.1:1080/cgi-bin/login.pl', 'Method=POST', 'RecContentType=text/html', 'Referer=http://127.0.0.1:1080/cgi-bin/nav.pl?in=home', 'Snapshot=t12.inf', 'Mode=HTTP', ITEMDATA , 'Name=userSession', 'Value=123203.335763467zDDHcHVpfiDDDDDDDiAc', ENDITEM , 'Name=username', 'Value=jojo', ENDITEM , 'Name=password', 'Value=bean', ENDITEM , 'Name=JSFormSubmit', 'Value=off', ENDITEM , 'Name=login.x', 'Value=47', ENDITEM , 'Name=login.y', 'Value=10', ENDITEM , LAST );
보시면 모든 요청에 각각의 URL이 있습니다. 즉, 요청이 이전 요청의 응답에 종속되지 않으므로이 녹화 모드를 '컨텍스트없는'녹화라고합니다.
URL 기반 레코딩에서 생성 된 스크립트는 크고 복잡하므로 더 많은 사용자 정의 / 향상 (상관 관계 등)이 필요합니다.
그러나 요청이 컨텍스트가 없기 때문에 스크립트의 유지 관리가 쉽습니다. UI 변경은 스크립트에 영향을주지 않습니다.
일반적으로 비 브라우저 (Windows) 기반 애플리케이션에는 URL 기반 레코딩이 권장됩니다.
HTML 모드에는 두 가지 장점 (HTML 및 URL 기록 모드)을 결합한 두 번째 옵션 인 '명시 적 URL 만 포함하는 스크립트'가 있습니다. 스크립트는 작고 단순하게 유지되므로 스크립트 유지 관리가 쉬워집니다. 이 기록 모드는 주로 웹 응용 프로그램에 권장됩니다.
# 2) 일반 스크립트
우리는 일반적으로 이러한 옵션을 변경하지 않지만 적어도 일부는 이해할 가치가 있습니다.
언어: 이 드롭 다운을 통해 스크립트 작업시 사용할 언어를 선택할 수 있습니다. 허용되는 언어는 사용되는 프로토콜에 따라 다릅니다. Web-http / HTML 프로토콜의 경우‘C 언어’및‘JavaScript’언어가 지원됩니다. 여기서는‘C 언어’를 선택하겠습니다.
속성 – 임계 값보다 큰인지 시간 생성 : 이 옵션은 사용자가 언급 된 임계 값 (여기서는 3 초)보다 큰 값을 기다리는 경우에만 VuGen이 생각 시간 (사용자 작업 사이의 대기 시간)을 삽입하도록 지시합니다.
다른 속성은 자명합니다.
# 3) 일반 프로토콜
이 옵션은 스크립트를 기록하기 위해 선택한 프로토콜을 표시합니다. 그에 따라 선택-선택 취소 할 수 있습니다.
# 4) HTTP 속성-고급
이 페이지는 코드 생성 및 재생을 사용자 정의하는 데 도움이되는 다양한 옵션을 제공합니다.
이러한 옵션 중 일부를 이해하겠습니다.
각 작업에 대한 컨텍스트 재설정 –이 옵션은 Vuser가 브라우징 세션을 시작하여 새 사용자를보다 정확하게 에뮬레이션 할 수 있도록 작업 사이의 모든 HTTP 컨텍스트를 재설정합니다. 이 옵션을 사용하면 작업 시작시 컨텍스트없는 기능이 항상 기록됩니다. 또한 캐시를 지우고 사용자 이름과 암호를 재설정합니다.
로컬에 스냅 샷 리소스 저장 – 이 옵션은 기록 및 재생 중에 스냅 샷 리소스의 로컬 복사본을 저장합니다. 이렇게하면 스냅 샷을 더 정확하게 만들고 더 빨리 표시 할 수 있습니다.
다른 옵션은 기본값으로 둘 수 있습니다.
# 5) 네트워크 – 매핑 및 필터링
이를 통해 3 가지 캡처 레벨 중 하나를 선택할 수 있습니다.
- 소켓 레벨
- WinINet 수준
- 소켓 수준 및 WinINet 수준
소켓 수준 기록에서 Micro Focus (Loadrunner 용)에서 개발 한 기본 소켓 API는 HTTP, FTP 등과 같은 다양한 애플리케이션 수준 프로토콜과 상호 작용 (및 요청 / 트래픽 기록)하는 데 사용됩니다. 여기서 포트 매핑이 관련됩니다.
WinINet 수준 기록에서 Microsoft (Windows 용)에서 개발 한 WinINet API는 지정된 포트에서 다양한 응용 프로그램 수준 프로토콜과 상호 작용 (및 요청 / 트래픽 기록)하는 데 사용됩니다 (포트 매핑은 여기에서 관련 없음).
WinINet 수준을 선택하면 LoadRunner는 WinINet API를 사용하여 서버와 통신하는 응용 프로그램에서 생성 한 트래픽을 기록합니다. 소켓 수준을 선택하면 Vugen은 지정된 포트에서 소켓 수준의 트래픽을 캡처합니다.
스크립트를 녹음 할 때 어떤 것을 선택해야하는지 말하는 것은 쉬운 대답이 아닙니다. 시행 착오 방법을 사용하는 것이 좋습니다. 스크립트가 기록되지 않은 경우 성공할 때까지이 옵션간에 전환합니다.
위에서 설명한 것처럼 소켓 수준 캡처의 경우 포트 매핑이 관련이 있으며 지정된 서버-포트 조합의 트래픽을 원하는 통신 프로토콜로 매핑하는 데 사용됩니다 (트래픽 필터링은 지정된 서버-포트의 트래픽을 제외하는 데 사용됨).
또한 '옵션'버튼은 SSL 버전 등을 선택할 수있는 고급 포트 매핑 설정을 가져 오지만 대부분의 경우 이러한 옵션에 대해 걱정하지 않습니다.
지금까지 스크립트 레코딩과 관련된 레코딩 옵션에 대해 논의했습니다. 다음 튜토리얼에서 다른 녹음 옵션에 대해 다룰 것입니다.
최신 정보:
아래는 Micro Focus LoadRunner 버전에 기록 된 실습 비디오 튜토리얼이지만 Micro Focus LoadRunner 버전에서도 여전히 매우 관련성이 높고 유용합니다.
비디오 1 – VuGen 레코딩 옵션 파트 I
이 비디오 튜토리얼은 VUGen 스크립트 및 프로토콜 레코딩 옵션에 대한 개요를 자세히 제공합니다.
비디오 1 요약 :
이 튜토리얼은 VuGen 녹음 옵션을 다룹니다. 이 외에도 다음 사항도 포함됩니다.
- 스크립트 섹션
- 새 가상 사용자 대화 상자
- 녹음 시작 대화 상자
에 스크립트 섹션 , 우리는 스크립트의 세 부분 (vuser_init, Action, vuser_end)과 실행 순서에 대해 논의했습니다.
의 위에 새 가상 사용자 대화 상자 , 우리는 스크립팅을위한 프로토콜을 선택하는 동안 사용자가 그 중요성을 알 수 있도록 모든 필드와 그 중요성을 기반으로합니다. 이것은 스크립트 생성의 첫 번째 단계입니다. VuGen은 생성 옵션을 제공합니다. 단일 프로토콜 과 다중 프로토콜 스크립트.
녹화 시작 대화 상자 , 유효한 입력 데이터로 필드에 대해 논의했습니다. 이것은 스크립트 생성을위한 두 번째 단계입니다. 이 대화 상자 유형에서 응용 프로그램, 브라우저, URL, 작업 디렉토리 및 '작업에 기록'옵션이 선택됩니다.
에 녹음 옵션 에서 다음 주제를 자세히 다뤘습니다.
- 스크립트
- 실험 계획안
- 녹음
- 포트 매핑
- 고급 설정
- 상관 관계
- 코드 생성
스크립트 – 스크립트와 관련된 몇 가지 설정과 함께 스크립팅 언어를 선택하는 옵션을 제공합니다. 웹 (HTTP / HTML) 프로토콜의 경우 스크립팅 언어는 C입니다.
실험 계획안 – 새 가상 사용자 대화 상자에서 선택한 프로토콜이 표시됩니다.
1 부에서는 스크립트 섹션과 다른 대화 상자를 보았습니다. 녹음 옵션의 경우 스크립팅 언어를 선택하고 스크립팅 중에 사용할 프로토콜을 확인하는 방법을 살펴 보았습니다.
나머지 녹음 옵션은 아래 2 부에서 확인할 수 있습니다.
비디오 2 – VUGen 녹화 옵션 파트 2
이 비디오 자습서에서는 녹화, 포트 매핑, 고급 설정, 상관 관계, 코드 생성과 같은 가장 중요한 녹화 옵션을 예제와 함께 자세히 다룹니다.
비디오 2 요약 :
이 자습서에서는 나머지 녹음 옵션을 다룹니다. 1 부에서는 스크립트와 프로토콜을 보았습니다. 다른 옵션은 다음과 같습니다.
- 녹음 – 여기에서 모드 또는 http / html 레벨을 선택할 수 있습니다. 우리는 URL 및 HTMl 웹 모드 (HTTP / HTML) 프로토콜에 대해 자세히 논의했습니다.이 프로토콜은 이들 간의 주요 차이점에 대해 잘 이해하고 이해할 수 있습니다.
- 포트 매핑 – 포트 매핑 옵션을 제공합니다.
- 고급 설정 – 여기에는 스크립트 생성 또는 스크립트 실행과 관련된 몇 가지 고급 설정이 포함됩니다. 사용 가능한 각 옵션에 대해 자세히 설명했습니다.
- 상관 관계 – 이것은 Automated Correlation과 관련이 있습니다. 여기에서 상관 규칙이 생성되고 활성화됩니다. 간단히 말해서이 대화 상자에서 사용자가 사용할 수있는 필드에 대해 설명했습니다.
- 코드 생성 – 이것은 웹 프로토콜의 데이터 형식 기능을 향상시킵니다.
I 부 및 II 부 자습서에서는 사용자가 LoadRunner를 사용하기 전에 알아야하는 기록 옵션 및 프로토콜 선택과 관련된 다양한 대화 상자의 모든 중요한 필드를 설명합니다. 그러면 VuGen 구성에 필요한 모든 정보가 포함 된 스크립트를 기록 할 수 있습니다.
결론
이 자습서에서는 '기록 옵션'(스크립트 기록과 관련된 옵션)에 대해 설명했습니다.
다음 시리즈 튜토리얼에서 '상관 관계'에 대해 논의 할 때 '녹음 옵션 2 부'에 대해 설명하겠습니다.
=> LoadRunner 튜토리얼의 전체 시리즈를 보려면 여기를 방문하십시오
이전 튜토리얼 | NEXT 튜토리얼
추천 도서
- 녹화 예제가있는 VuGen (Virtual User Generator) 스크립트 소개
- 상관 관계가있는 VuGen 스크립트 기록, 재생 및 동적 값
- LoadRunner VuGen 스크립트 파일 및 런타임 설정을 설정하는 방법
- LoadRunner VuGen 스크립팅을 사용한 웹 서비스 성능 테스트
- HP LoadRunner 자습서를 사용한 부하 테스트
- 예제와 함께 VuGen 스크립트에서 사용되는 중요한 LoadRunner 함수
- LoadRunner VuGen 스크립팅 과제
- Micro Focus LoadRunner 소개-LoadRunner를 사용한 부하 테스트 자습서 # 1