Venkat Matta

it's all about the Performance Testing

Scripting Challenges & Techiniques

Scripts Technique’s :-

  1. Although LoadRunner’s HTTP/HTML protocol has been reliable and flexible, it’s always good to try the other protocols available in LoadRunner to identify which ones are the most compatible with the application under test. LoadRunner’s Protocol Analysis is a good start.
  2. Transaction names should use a naming convention which allow sorting and ordering so that the transaction summary graphs can easily show transactions in proper order.
  3. After recording a script, make sure to rearrange Think Times to be placed outside of transactions to avoid including think time as part of actual transaction time.
  4. Changing runtime settings’ Browser Cache handling and Browser’s emulation of new user can help resolving some playback issues.
  5. Make use of the various Description properties of functions like web_button can help in identifying the correct component to perform action on.

Few tips to solve common problem in web recordings:-

Recording a LoadRunner test script in Virtual User Generator (VuGen) is usually very simple – click the record button, do whatever needs to be done in the browser, and click the ‘Stop Recording’ button.  But occasionally, the results might not be what you expected.

Here are the five most common problems seen when recording a test using the Web (HTTP/HTML) protocol, and how to resolve them.

 Problem 1: No events are being recorded

Here are the most common reasons why no events are showing in the script:

 The events counter keeps increasing, while the generated script is empty

This may be because VuGen’s recording mechanism fails to identify HTTP data. To fix it, ensure that your application indeed uses HTTP Web traffic. If the application uses SSL connections, make sure you choose the correct SSL version (SSL 2, SSL 3, TLS) through the Port Mapping dialog, available by clicking the ‘Options…’ button on the Record > Recording Options… dialog:

Sc_1

The Advanced Port Mapping Settings dialog opens when you click ‘Options…’:

Sc_2

The events counter shows less than five events, while the application keeps getting data from the server

 In this case, VuGen’s recording mechanism fails to capture any network activity at all. Ensure that your application really does provide some network traffic, ie. it sends and receives data through the IP network. If an antivirus program is running, turn it off during recording. Check the recording log for any clues about the recording failure. Messages such as “connection failure” or “connection not trapped” can be a sign of the wrongly configured Port Mapping settings.

 In addition, if you are recording on a Chrome or Firefox browser, make sure that all the instances of the browser are closed prior to the recording.

Problem 2: Specific events are not recorded

This problem could be caused by the event being dropped as “uninteresting”. By default, VuGen’s Web (HTTP/HTML)protocol records client requests that return an HTTP response status of 2xx or 302, and discards all other requests. If a missing request returns a response that was discarded, such as 301, you can make a modification to the registry to instruct VuGen to generate a command for it:

 Locate the following registry key:

  • [HKEY_CURRENT_USER\Software\Mercury Interactive\Networking\Multi Settings\QTWeb\Recording]
  • Add the following string value to it:
  • “GenerateApiFuncForCustomHttpStatus”=”301”

 Problem 3: The recorded application becomes unresponsive during the recording

This could be caused by VuGen’s recording mechanism not being able to connect to the application’s server. Network connection errors can be seen in the Recording Log:

[Net An. Warning (1068:197c)] Request Connection: Remote Server @ 123.123.123.123 – 5222 (Service=) Failed attempt #1. Unable to connect to remote server: rc = -1 , le = 10060) [Net An. Warning (1068:197c)] Request Connection: Remote Server @ 123.123.123.123 – 5222 (Service=) Failed attempt #2. Unable to connect to remote server: rc = -1 , le = 10060)

Note: the Recording log is in the ‘Output’ pane.  Make sure ‘Recording’ is selected in the combo-box on the left:

SC3

This workaround can be done in case the communication to 123.123.123.123:5222 is not important for the business process and can be omitted. If that’s not the case, the same entry should still be added, but left as checked. That will ensure correct traffic capture to this address.

Problem 4: During the recording the recorded application shows an error message about the wrong server certificate

The problem is caused by the inability of the client side to verify the validity of the server certificate. In order to fix this problem, the LoadRunner Certificate Authority (CA) file should be added to the machine’s “Trusted Root Certificate Authorities” certificate store (in case of a Java client application, LoadRunner’s CA should be added to Java’s trusted CA list using the keytool). This file is supplied with LoadRunner, and is called wplusCAOnly_Expiration_2022.crt. It’s located in the <LR_folder\bin\certs> folder.

 To add it to the store, double-click on the file to open the certificate:

SC4

Then click ‘Install Certificate…’ to open the Certificate Import Wizard’:

SC5

Make sure you check ‘Place all certificates in the following store’ and select ‘Trusted Root Certification Authorities’.  When the wizard is completed, you should be able to record the application.

Problem 5: The browser crashes during recording when using the Ajax Click and Script protocol

This can happen when some of the Ajax controls inside the application are not recognized by VuGen. In order to fix it:

Go to the  <LR_folder\dat\protocols> folder and open the WebAjax.lrp file

  • Comment out the following: DllGetClassObject:jscript.dll=DllGetClassObjectHook:ajax_hooks.dll (simply put a semi-colon (‘;’) in front of the line)

You should now be able to record the application.

Advertisements

Information

This entry was posted on March 23, 2016 by in Loadrunner.
%d bloggers like this: