Site icon Software Test Tips

Micro Focus LoadRunner – Tips and Tricks

LoadRunner Tips and Tricks

LoadRunner is a software performance testing tool from Micro Focus.  It is used to check applications, measuring system behavior, and performance under load.  LoadRunner can simulate a large number of users recording using program software and assessing the operation of components of the application.

LoadRunner simulates user activity by simulating interactions using the user interface like keypresses or mouse motions or by generating messages between application components.  The interactions that are generated are stored in scripts.  LoadRunner can generate the scripts by recording them, like logging HTTP requests between a client web browser and an application’s server. After you install LoadRunner and start using it you might face some issues.

This post will have the monthly Micro Focus LoadRunner Tips and Tricks which will be a consolidation of various common issues in Micro Focus LoadRunner. Do check out this article for troubleshooting tips and tricks for other tools.

Table of Contents

1. LoadRunner – Tips and Tricks – Nov 2020

Below is a list of tips for some common LoadRunner problems. 

1. Set the system’s TEMP and TMP directories

Changing the system’s temporary directories

To create a temporary directory:

To add/change the temporary environment:

2. Adding C code to an existing AJAX TruClient script in LoadRunner 11

In LoadRunner 11 external C functions can be called after recording the script with TruClient protocol.

3. Configure the Windows Data Execution Prevention (DEP) feature

Data Execution Prevention (DEP) is a feature that has been introduced with Microsoft Windows XP SP2, Windows Server 2003, Windows Vista and newer versions of the Windows operating systems. This feature performs additional checks on memory to help prevent malicious code from running on Windows platforms. However, DEP may in some cases interfere with the operation of software including LoadRunner components. If unusual behavior is observed when recording scripts, running load tests, or analyzing data then it may be necessary to modify the DEP configuration to continue working.

To modify the Windows XP or Windows Server 2003 DEP configuration

To disable DEP completely in Windows XP or Windows Server 2003

If the DEP options are greyed out then it means that DEP is completely disabled.

To enable or disable DEP in Windows Vista, follow these steps:

DEP Options:

4. Windows limitation of maximum path length on the temporary directory of Performance Center Load Generator

If while running VuGen scripts in Performance Center the following error appears:

“Error: The user files were not transferred to the local load generator”

The controller cannot transfer the script files to the Load Generator.

When running a scenario in LoadRunner Controller / Performance Center, the Controller transfers the Vugen script files to the temporary location on the Load Generators. The temporary location will be created under <the load generator’s temporary directory>\<brr folder>\netdir\<Path to the results folder on the controller>\<results name>.

For example, if the script in Controller is stored in c:\VugenScript\Script1 and the Load Generator has the temporary folder set to C:\Documents and Settings\Default User\Local Settings\Temp, the Load Generator would save this script file in C:\Documents and Settings\Default User\Local Settings\Temp\<brr folder>\netdir\c\VugenScript\Script1.

This is caused by a limitation of the maximum path length on Windows OS. The length limitation is 255 bytes in Windows XP and 260 bytes in Windows Vista. Please refer to MSDN: File Names, Paths, and Namespaces(http://msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx) for more details on this limitation.

To fix this issue, on the Load Generator:

5. VuGen script recording is slow and the recording platform occasionally becomes CPU bound

When recording a Citrix script, if the recording activity is very slow and the recording platform sometimes becomes CPU bound and peaks of 100% of CPU being used is observed. However, if VuGen is restarted or the recording platform is rebooted, recording performance is initially normal.

The reason for this could be that the Data Execution Prevention (DEP) feature is enabled on the recording platform. Disabling the Data Execution Prevention (DEP) feature using the procedure described in How to configure the Windows Data Execution Prevention (DEP) feature should resolve this issue.

6. Change the 90th percentile column in the summary report to other values

Modifying the .asc file to reflect the desired percentage will change the percentile in the summary report.

Note: Please disable the default template when you implement the changes:

After changing the percentile, bring up your graph and recreate the template.

Since this is an application-level setting, the column name changes to the new percentile figure only on the next invocation of Analysis. In order for the changes to be reflected on current session Go To Tools-> Options -> Result Collection and Click on “Apply Now on Active Session”

7. 90th Percentile – Definition, Calculation

To understand the performance of an application it is important to understand the concept of percentiles. A percentile is a measure used in statistics indicating the value below which a given percentage of observations in a group of observations fall. For example, the response time for a HTTP request below which 90% of the response time values lie, is called the 90-percentile response time. In the screenshot below this is 3.0 seconds (so 90 percent of the requests is processed in 3.0 seconds or less:

The 90th percentile is the value for which 90% of the data points are smaller

The 90th percentile is a measure of statistical distribution, not unlike the median. The median is the middle value. The median is the value for which 50% of the values were bigger, and 50% smaller. The 90th percentile tells you the value for which 90% of the data points are smaller and 10% are bigger.

Statistically, to calculate the 90th percentile value:

Example:

There are ten instances of transaction “t1” with the values 1,3,2,4,5,20,7,8,9,6 (in sec).

8. Error: “URL Security cannot be asserted.” returned from login step in correlated Oracle Applications R12 script

If you have correlated a Web Protocol script recorded against an Oracle Applications R12 application, the login step continues to fail and the following message:

URL Security cannot be asserted. The given URL has either expired or has been tampered with. Please contact your System Administrator for help.

is displayed in the page returned by the server.

The default correlation performed by VuGen may not select the correct value for the “oas” parameter and consequently the login step fails during replay. This message indicates that a correlated value in the URL sent to the server during script replay is not correct. This is due to an incorrect correlation.

Typically the login step is performed by a “POST” action such as:

web_submit_data("OA.jsp",
"Action=http://frsdev.moe.gov.sa:8000/OA_HTML/OA.jsp?page=/oracle/apps/fnd/sso/login/webui/MainLoginPG&_ri=0&_ti={WCSParam1}&language_code=US&requestUrl=&oapc=2&oas={WCSParam2}..",
"Method=POST",
.
.
LAST);

If an incorrect correlation of the value of the “oas” parameter is performed, this login step will fail.

To fix this issue typically there may be several different values for the “oas” parameter present in data returned by the server to the client during the recording of the business process. The value that is required for this parameter for the login step is returned by the server within the following content:

Action.c(nnn): method="POST" action="/OA_HTML/OA.jsp?page=/oracle/apps/fnd/sso/login/webui/MainLoginPG&_ri

Action.c(nnn): =0&_ti=1963387896&language_code=US&requestUrl=&oapc=2&oas=_puaepcRLdyxa9Nwu4WQqw.."><input

and therefore the correlation statement that is required should be similar to:

web_reg_save_param("WCSParam2",
"LB/IC=language_code=US&requestUrl=&oapc=2&oas=",
"RB/IC=..\"",
"Ord=1",
"Search=body",
"RelFrameId=1",
LAST);

9. Error running more than two Citrix Vusers in load test only: “Error: Got unexpected disconnect event, exiting …”

When running a load test using the Citrix protocol, more than two Vusers fail with the error “Error: Got unexpected disconnect event, exiting …”

Starting with the Citrix XenApp plugin v 11.2 and onward, the LoadRunner Agent must run as a process. By default, it runs as a service.

Change the LoadRunner Agent on the load generator to run as a process rather than a service. One way this can be done by using the HP LoadRunner Agent Run Time Settings configuration tool (in Start|All Programs folder), and selecting “manually log in to this machine”.

NOTE: It is not recommended to run Citrix Vuser scripts on the LoadRunner controller, other than for troubleshooting purposes, rather separate load generators should be used.

10. Error -86801: Host access denied, not available or missing

Media Player scripts fail with the error: Error -86801:Host access denied, <hostname> not available or missing.

To fix this issue, Call the mms_disable_host_check function in all Media Player scripts

11. Capture a dump of a crash using the “ntsd” tool

If a LoadRunner component (VuGen, Controller, Analysis, mdrv, etc) crashes during use, further information is required to allow LoadRunner R&D to investigate the issue. One of the most useful means to analyze the root cause of the crash is the call stack from the crash, which when combined with the source code allows the identification of the problem and provision of a workaround.

To generate a crash dump file:

12. Add a custom monitor to LoadRunner Analysis

To add a custom monitor to LoadRunner Analysis

[Database Server Resources]
NumGraphs=3
Graph0=Oracle
Graph1=SQLserver
Graph2=MyDBmon

Note: The name you entered here (in this case, “MyDBmon”) should be the template name (the definition file without the “.def” extension). The user will not see this name in any way.

13. Set the Summary Report to display transactions in the order of execution

Modify the SQL query in the AnalysisSummary.asc file to set the Summary Report to display transactions in the order of execution

SELECT [Event_map].[Event Name] AS [Event Name],[Minimum],[Average],[Maximum],StdVal,[Table2].[Value] AS [90 Percent], Round([PassedT].[CountAll],0) AS Pass, Round([FailedT].[CountAll],0) AS Fail, Round([StoppedT].[CountAll],0) AS Stop FROM (((((Event_map LEFT JOIN [Table1] ON [Table1].[Event Name] = [Event_map].[Event Name]) LEFT JOIN (SELECT * FROM [Table0] WHERE [Transaction End Status] = ‘Pass’) AS PassedT ON [Event_map].[Event Name] = [PassedT].[Event Name]) LEFT JOIN (SELECT * FROM [Table0] WHERE [Transaction End Status] = ‘Fail’) AS FailedT ON [Event_map].[Event Name] = [FailedT].[Event Name]) LEFT JOIN (SELECT * FROM [Table0] WHERE [Transaction End Status] = ‘Stop’) AS StoppedT ON [Event_map].[EventName] = [StoppedT].[Event Name]) LEFT JOIN [Table2] ON [Event_map].[Event Name] = [Table2].[Event Name]) LEFT JOIN [TempForSummaryRep0] ON [Event_map].[Event Name] = [TempForSummaryRep0].[Event Name] WHERE [Event_map].[Event Type] = ‘Transaction’ and ([Table2].[Percent] = 90 OR [Table2].[Percent] Is Null) GROUP BY [Event_map].[Event Name],[Event_map].[Event ID], [Minimum],[Average],[Maximum],StdVal, Round([PassedT].[CountAll],0), Round([FailedT].[CountAll],0), Round([StoppedT].[CountAll],0),[Table2].[Value] ORDER BY [Event_map].[EventID]

14. VuGen in LoadRunner crashes when opening the parameter list

The following error message is displayed in the VuGen user interface when either accessing the parameter list or attempting to parameterize a value in a script:

VuGen caused an EXCEPTION_ACCESS_VIOLATION in module MFC80.DLL.

The cause of this is because a product that updates the mfc80.dll module (for example, SQL Server 2008) is installed in the affected machine. After this module is updated applications such as VuGen which are developed in Visual Studio 2005 will hit an access violation in the mfc80.dll module and then crash. The problem is due to version incompatibility.

This problem is documented by Microsoft. The fix and further information about the problem are available at the following link: http://support.microsoft.com/kb/961894

15. VuGen hangs when trying to create parameters

When trying to create a new parameter in VuGen, the CPU utilization for VuGen.exe goes up to 100% and stays there eventually causing VuGen to crash.

The reason for this is because the ss32x25.ocx file was not registered on the machine.

To fix this issue register the ss32x25.ocx file on the VuGen machine.

Use the regsvr32 command to register or unregister a DLL

To register a DLL or OCX file

Method 1:

Method 2:

To unregister a DLL or OCX file

Method 1:

Method 2:

16. VuGen keeps crashing and/or menu items are not working

If the VuGen crashes when stopping a recording session thereby causing problems in saving the script, it does not show all the toolbar icons or floating recording toolbar is missing, this happens when some DLLs are not registered properly or some configuration files are corrupted.

Below are the steps to re-register the DLLs and to re-create the configuration files:

Note : It is always a good practice to keep the background processes to the minimum when recording as they may conflict with VuGen hooking, and may cause crashes during or after recording. Shut down all unnecessary programs before recording a script.

17. Web recorder hangs when switching Actions on the toolbar during recording

This occurs when the recorder needs the context from a previous Action in order to determine what to record. By default, “Reset Context for each action” in the Recording options is enabled. This option resets the HTML context, so that a contextless function is always recorded in the beginning of the Action. It also clears the cache and resets the usernames and passwords (enabled by default).

To fix this issue, Clear the “Reset Context for each action” option in the Recording options -> Internet Protocol:Advanced section.

18. VuGen hangs when trying to open a large “replay.vdf” file

After recording a Tuxedo script, one of the files attached to the script is “replay.vdf.” When trying to open it, or scrolling down on it, the VuGen Editor hangs. This happens because the replay.vdf file is large, colorful and uses a lot of comments.

In order to improve performance implement the below steps:

19. Internet Explorer freezes randomly when recording a Secure Web application

In secure http communication, the “handshake” syncs the server and the client up with the encryption methods and keys that will be used for the remainder of the communications. A successful handshake creates the new “secure key” that the remainder of the connection will be using. In this case, the Client tries to set up a secure connection (ssl handshake) every time, instead of using the “secure key” that was created during the first successful handshake, for the remainder of the session. The ssl handshake succeeded on some attempts but was failing on other requests, and that is why Internet Explorer froze randomly at different steps in the Business Process with the below error messages

[Net An. Warning (1590: d10)] Request Connection: Remote Server @ xx.xxx.x.xxx:443 (Service=) Failed attempt #1. Unable to connect to proxy (@ xx.xxx.x.xxx:xxxx): sid = xxxx, rc = 10056)

[Net An. Warning (1590: d10)] Request Connection: Remote Server @ xx.xxx.x.xxx:443 (Service=) Failed attempt #2. Unable to connect to proxy (@ xx.xxx.x.xxx:xxxx): sid = xxxx, rc = 10056)

To fix this issue, In the Registry change

[HKEY_CURRENT_USER/Software/Mercury Interactive/LoadRunner/Protocols/WPlus/SSL/OpenSSL] “ReuseSSLSession” value to 1

By doing this, you are ensuring that the “secure key” created during the first successful ssl handshake, is reused for the entire session instead of the client trying to do a ssl handshake every time.

20. VuGen crashes/hangs while recording a client-server application using ODBC

VuGen may also crash with various errors such as the followings:

The reason for these errors is that the application is returning a large chunk of data to the client, and the recorder is trying to put that data in the recording log.

To fix this issue, make the Trace and ASCII file detail levels “Brief Trace” or “Off” in the recording options

Before you start to record,

21. VuGen crashes with Web and FLEX protocols

When creating a Multi-Protocol Script that contains FLEX and WEB protocols (or Multi Web protocol) a VuGen crash can occur without any error messages. This happens when the WEB protocol is set to be in HTML Mode. When in URL mode the crash does not occur. There are no error codes except a generic Windows message stating the application crashed.

This issue can be seen on machines that are running Windows XP. Please refer to the Microsoft KB article in the link below that can correct this VuGen Crash. Microsoft released a hotfix for a Windows-specific issue that can cause this VuGen crash.

22. Error -205177: Failed to startup RRE due to a timeoutfunction xlrCReplayEngineStartupNotifier::WaitForStartupNotification

Error -205177: Failed to startup RRE due to a timeoutfunction xlrCReplayEngineStartupNotifier::WaitForStartupNotification

During the replay of an Ajax TruClient script in Vugen or the Controller the following error was observed:

Error -205177: Failed to startup RRE due to a timeoutfunction xlrCReplayEngineStartupNotifier::WaitForStartupNotification in .\xlrReplayEngineStartupNotifier.cpp(82), modified Sun Sep 5 16:57:31 2010, compiled Sep 14 2010 08:22:14 [MsgId: MERR-205177]

Error -205177: Internal Error – Failed on Wait for Startup [MsgId: MERR-205177]

The reason for this is because the script was saved in a UNC path location (network drive) and is missing files from the RRE folder where the script is saved.

To resolve this issue try one of the below options:

2. LoadRunner – Tips and Tricks – Dec 2020

1. Recurrent X in the input box while recording

It often happens that users face recording HTTP/HTML with Vugen while it works properly on the Web browser. Sometimes the VuGen input box appears as an X and it becomes difficult to utilize the recording tool. Even when the Manual Business Process is ongoing and as the input box is present on the screen actively. While VuGen recording’s output remains the same and the input box comes into sight as X. As the application under test (AUT) merely performs in 32bit process on the contrary VuGen can simply initiate at 64bit IE throughout the recording process. A reminder, this fix is only meant for the 1250 version specifically. If the same problem is present in other versions then please make sure to use a ticket with support.

To solve this VuGen running issue, you can use the Fix 1250 with the help of the steps below:

  1. QTWeb.Irp
  2. WebBase.Irp
  3. WinSock.Irp
  4. Wplus.Irp

2. The error “Cannot find symbol” occurs in repetition 

Java actions are very important for the functioning of all the Web related activities. When the symbol actions are corrupt or missing then it becomes difficult to operate the Web functions in the Java user protocol. To fix this “cannot find symbol’ error, you can follow the instructions given below:

import lrapi.lr;
import lrapi.web;
public class Actions
{
    public int init() throws Throwable {
        return 0;
    }//end of init
    public int action() throws Throwable {
        web.custom_request("post_query_exe", 
    "Method=POST", 
    new String[]{
        "URL=http://MicroFocus/cgi–bin/post_query_exe",
                "TargetFrame=",
    "LAST"}
);
        return 0;
    }//end of action
    public int end() throws Throwable {
        return 0;
    }//end of end
}

3. Window does not appear with the new step web_convert_param

When Windows does not appear even with the new step web_convert_param then it means that this is a user interface problem. It needs to be fixed quickly, you can solve this issue by following the steps below:

You need to replace the two adjoined configuration files: websteps_steps.dat and WebHTTP.addin

Here, only fix 1260 can be used for the issue particularly. It has been duly effective on the 12.60 version, for a different version or service pack levels a case with support would suffice better. You can find those files in the installation folder in the storage: %vugen_path%

  1. \dat\websteps_steps.dat
  2. AddIns\VuGen\Protocols\WebHttpHtml\WebHTTP.addin

4. When VuGen cannot generate many actions

It often happens that VuGen is not able to generate more than 10 actions in the TruClient protocol. We witness the “maximum amount of actions have been reached” message on the screen. It happens when we are juggling with a lot of actions in the Development mode and once the limit reaches 10 this error shows. To fix this issue you can simply follow the steps provided below:

Specifically for the 1260 version

Just remember that this fix meant for the 1260 version. Once you are done generating 10 actions in the development mode, you need to select any action, record or enter a few codes. 

Then you need to select all the lines and Right click on it.

Then you will see New action, then you need to click on that and create a unique name for it.

Now we need to edit it and make some important changes in the JavaScript file to solve the problem. So Click on Edit File.

Then you will find Irtuclientweb_master_prefs.js under these two destinations:

  1. <install>/day
  2. %AppData%\Roaming\Hewlett-Packard\LoadRunner\TruClientWeb
"TruClient": {
…
      "MaxAllowedActions": {
             "value": 10---------> change to any number
     },

5. VuGen integration problems along with the LoadRunner Enterprise

It often happens that when we paste a server address from the Web, we are only able to copy a Loadtest, admin or LRE, and it doesn’t connect at all. Users are not even able to save the scripts that are initiated or opened from the LoadRunner enterprise while using “https” and “http”. There are not enough files for uploading as run-time files for the DevWeb scripts sometimes at all.  Sometimes it happens that when there is a crowd of various folders in varied paths having the same name the folder tree is unable to grow at all. If the user wants to use a different second script from the same previous project then they would have to re-authenticate again their respective username, password and then select the project. These script related or the integration issues can be solved by following the instructions below:

  1. You need to download the hotfix and then extract LRE_SP2_VuGen_Fix.zip 
  2. You need to find the original “VuGenToolkit.exe” under %vugen_path%\bin\VuGenToolKit and backup it.
  3. You need to find the original “Ire-uploader” folder that is in: %vugen_path%\bin and then backup it.
  4. You need to backup the original “DevWeb.lrp” file that can be found under %vugen_path%\dat\protocols.
  5. Now you have to copy the VuGenToolkit.exe from step 1 to the %vugen_path%\bin\VuGenToolKit\VuGenToolkit.exe.
  6. Then copy the entire lre-uploader folder from Step 1 to the vugen_path%\bin\lre-uploader
  7. Finally copy the DevWeb.lrp 1 to the %vugen_path%\dat\protocols\DevWeb.lrp

6. Error message hinders the completion of the TC script 

While working with the TC script, it often happens that we come across this dialogue box saying “Do you want to leave this site”. Some of the applications on the test will have this same pop up message which later stops the TC script from replaying and proceeding ahead with it. You can put hold to this dialogue box by adding an evaluate javascript. All you have to do is follow the steps given below with the help of the codes:

// Inject this code to all windows
function injectToDoc(doc) {
var scr = document.createElement("script");
scr.type = "text/javascript";
scr.innerHTML = `
window.addEventListener(
"beforeunload",
function(e) {
var rreState = window.top.document.documentElement.getAttribute("hp_attr_state");
if (rreState === "replay") {
console.log("*** setting e.returnValue");
e.returnValue = "TruClient_We_will_let_you_go_";
}
}, true
);
`;
doc.head.appendChild(scr);
}
function doInjection(win) {
injectToDoc(win.document);
const iframes = win.document.querySelectorAll('iframe');
if (iframes.length > 0) {
for (let i = 0; i < iframes.length; ++i) {
console.log(`injecting to iframe: ${iframes[i].id}`);
doInjection(iframes[i].contentWindow);
}
}
}
doInjection(window);

7. Fault in the Internet Explorer injection

Sometimes it happens that there is an internet explorer injection problem. That can be solved single handedly by unchecking the “Enforce standard mode”. You simply have to uncheck it in the TruClient Internet Explorer and investigate if that fixes the problem.  TruClient can also be responsible for injecting code into some web pages so you need to be vary of that. It could also cause irregular or unforeseen behavior of the Application under test (AUT). You can definitely solve this issue so follow the instructions given below carefully:

  1. You need to put a IEInjectionBlacklist.ini file in the script folder. 
  2. To blacklist the particular codes you need to pick out the URLS.

This example is for the “IEInjectionBlacklist.ini” format:

  1. In this fix you will need to use both the URLs and regex:
[Urls]

http://kalimanjaro.hpeswlab.net/webgui/multiplefileform.html

[http://www.google.co.il*]www.google.co.il*

http://16.44.49.218/*/Index.htm

[regexUrls]

^http:\/\/www/\.hpe/\.com\/.*

  1. In this fix you only use urls:
[Urls]

http://kalimanjaro.hpeswlab.net/webgui/multiplefileform.html

  1. In this fix you only use regex :
[regexUrls]

^http:\/\/www/\.hpe/\.com\/.*

If you need to check whether you were successful in blocking the code injection in the browser or the target page then you can try the code below to confirm:

<!doctype html><meta id="hp_injected_meta" http-equiv="X-UA-Compatible" content="IE=edge"> <script type="text/javascript" id="hp_injected_script" src="C:\Program Files (x86)\Micro Focus\LoadRunner\dat\WebIE\RRE\content\injectedCode\injectToAUTWin.js?mode=interactive"></script><!DOCTYPE html>

Then you can simply Right click to view the page and then click on “View Source”. After this if there are no visible signatures like the one mentioned above then you can be steered clear of all your worries. The blacklist fixed the problem completely.

8. Error in generating Transaction summary and response time graphs related

Sometimes there is an error in generating transaction summaries and average transaction response time graphs. In the beginning opening test results in the analysis shows an OK with the data. But later when the whole data is produced it is invalid. The dialogue shows that “Transaction Summary and Average Transaction Response Time graphs were not created”. The users are unable to access the complete data in analysis. It majorly occurs due to the Corrupted Dlls: Analysis.DataLayer.dll and Analysis.loader.dll. This error can be fixed you just need to follow the instructions given below:

  1. You need to download the hotfix.
  2. Make sure to extract all the files.
  3. Then you need to go to the Recycle for the Bin folder to create a backup. This backup is for Analysis.DataLayer.dll and Analysis.loader.dll.
  4. Then you need to replace all of them with the ones that are present in the hotfix folder.
  5. Now all you have to do is restart the analysis tool.

9. Disappearance of transaction counts from the analysis summary page

It happens that at the moment global filters are applied all the transaction counts just vanish. There is not even a speck about the transaction counts in the analysis summary page at all. The reason this error occurs recurrently could be because of the corrupted dil. As crucial as this may seem, this issue can be fixed indeed, just follow all the instructions given below:

  1. You need to download and install the hotfix.
  2. Then you must extract the said files.
  3. Then you need to go to the Recycle for the Bin folder to create a backup Analysis.ChartUI.dll.
  4. Then you need to replace all of them with the ones that are shown in the hotfix folder.
  5. Now all you have to do is restart the analysis tool.

10. Miscalculation error in HTML reports and appearance of wrong values

It seldom happens that users are unable to view the HTML report with accurate values. What actually happens is that it shows incorrect values under the transaction response time that comes under the load graph. Everytime the user tries to open the HTML report it doesn’t show the actual values at all. Even though the report is generated in the analysis tool, the transaction response time under the LG (load graph) does not view any of the user’s information that it is supposed to show. The actual picture from the report should show values from 0 to X but this only shows 0. It has to be a Graphical User-interface testing problem. It could also happen due to the missing or corrupt Analysis.GUI.dll and CSScriptDict.js files.

This problem like any can be solved quite easily if you closely follow the fixes (hotfix) given below:

  1. You need to end all the open and ongoing sessions of the Analysis.
  2. Find the Recycle Bin or Bin folder: <Install Dir>\Micro Focus\LoadRunner\bin
  3. Then find Analysis.GUI.dll file and backup.
  4. Then you need to find the html folder: <Install Dir>\Micro Focus\LoadRunner\bin\html
  5. Then find <Install Dir>\Micro Focus\LoadRunner\bin\html and backup.
  6. Now you need to download the Hotfix.zip file and unzip it.
  7. Now you need to replace Analysis.GUI.dll file first and then Analysis.GUI.dll file next in the bin folder.
  8. You need to repeat this whole procedure in all the devices which have Analysis installed in them. 
  9. Click on Analysis and open it.
  10. Now you have to check the Test results and make a totally new html report.

3. LoadRunner – Tips and Tricks – Jan 2021

1. The basic recommended permissions required for LRE DB Administrator

The basic recommended permission is needed for connecting the latest LRE 20202 and further to an Oracle database server. It is specifically based on the installing database user, as they need to obtain permissions to run specific administrative tasks on the Oracle. Tasks could be anything like making the LRE project user schema, copying data between projects and data manipulation of sorts.

Sometimes it happens that the user is unable to utilise the Oracle system due to some security issues. It is widely advised that the user’s database administrator should create an LRE database administrative user properly.

For example:

Ire_admin that has some kind of speciality and certain rules, that need LRE to be installed. The database administrator is very important because, through that, we are able to create and edit an LRE database administrative user. You can use the example script given below for editing:

LRE_ADMIN_DB__ORACLE.sql, 

The script mentioned above attached is the one that can be used for addition too. This script is responsible for making the LRE database administrative user along with the recommended grants that are necessary for the database. The database administrator needs to initiate the script and create the user on the database server in a precise manner.

You just need to follow the steps mentioned below:

/* *************************************************************************************************************** */
/*                                                                         */
/* LRE_ADMIN_DB__ORACLE.sql                                                */
/* ========================                                                */
/* Minimum recommended permissions required for LRE DB administrator.      */
/*                                                       		   */
/* ===========================================================================================*/
/* !!!! This script should be executed with a user that has the SYSDBA System Privileges !!!! */
/* ===========================================================================================*/
/*                                                         */
/* Oracle version. (NON CDB)                               */
/*                                                         */
/* Created by: Aharon S. (1-Dec-2019).                        */
/*                                                         */
/* Parameters:                                                */
/* 1) &p1_admin_user_schema -  admin schema name.             */
/* 2) &p2_admin_user_password -  admin schema password.       */
/* 3) &p3_default_tablespace - default tablespace name.       */
/*                                                            */
/* Usage:                                                     */
/* c:\temp\> sqlplus <dba uid>/<dba password>@<tns alias> @LRE_ADMIN_DB__ORACLE.sql lre_admin lre_admin lre_tablespace   */
/*                                                         */
/*                                                         */
/* Change log:                                             */
/* 01-Dec-2019 by Aharon S.		Initial creation           */
/* 13-Sep-2020 by Aliza S.		Removed the "with admin option" from the "grant create user" statement(s)         */
/*                                                         */
/* ***************************************************************************************************************** */

define p1_admin_user_schema = &1
define p2_admin_user_password = &2
define p3_default_tablespace = &3


create user &p1_admin_user_schema identified by &p2_admin_user_password
default tablespace &p3_default_tablespace temporary tablespace temp
/

grant create session to &p1_admin_user_schema with admin option
/

DECLARE 
v_cdb varchar2(3);
v_sql1 varchar2(255);
v_sql2 varchar2(255);

begin

v_sql1 := 'grant create user to  &p1_admin_user_schema  container=current' ;
v_sql2 := 'grant create user to  &p1_admin_user_schema' ;

select CDB 
into v_cdb
from V$DATABASE;

    if v_cdb = 'YES' THEN
        dbms_output.put_line(v_sql1);
        execute immediate v_sql1  ;
    else
        dbms_output.put_line(v_sql2);
        execute immediate v_sql2  ;
    end if;
end;
/


/* ***********************************************************************
*********************************************************************** */

grant create table to &p1_admin_user_schema with admin option
/

grant create view to &p1_admin_user_schema with admin option
/

grant create trigger to &p1_admin_user_schema with admin option
/

grant create sequence to &p1_admin_user_schema with admin option
/

grant create procedure to &p1_admin_user_schema with admin option
/

/* only if text search is enabled */
grant ctxapp to &p1_admin_user_schema with admin option
/

/* ***********************************************************************
*********************************************************************** */

grant select on dba_free_space to &p1_admin_user_schema
/

grant select on sys.dba_tablespaces to &p1_admin_user_schema
/

grant select on sys.dba_users to &p1_admin_user_schema
/

grant select on sys.dba_registry to &p1_admin_user_schema
/

grant select on sys.dba_roles to &p1_admin_user_schema
/

/* ***********************************************************************
*********************************************************************** */

grant select any table to &p1_admin_user_schema with admin option
/

grant insert any table to &p1_admin_user_schema
/

grant create type to &p1_admin_user_schema with admin option
/

2. Instructions to handle the crisis, when the LRE connection fails every time being connected by utilising the VuGen’s LRE Integration

It often happens that LoadRunner Enterprise connection using VuGen Integration miserably fails at the very beginning, i.e., at the login step itself. This failure is usually caused when fetching all of the test folders from the LoadRunner Enterprise Server fails. Hence, it results in all the operations in the VuGen to fail.

This failure can be fixed, as well. You just need to follow the rules given below:

  1. You need to download the hotfix and then extract all of the contents.
  2. Then you need to end/stop the LoadRunner Backend Service.
  3. After that, you need to create a backup of the authentic and original files:

LRE.Core.Api.dll and LRE.Core.Api.exe files from <LoadRunner Enterprise server installation directory >\LRE_BACKEND\bin.

  1. Then you need to copy all the files from Step 1 and replace them under the folder given above.
  2. Now you need to Restart the LoadRunner Backend Service. 

3. Instructions on changing the log location in Octane

It often happens that users need to relocate the destination of the log in Octane. You can follow the instructions given below to change the log location in Octane:

  1. Inside the Octane installation location, you need to open log4j2-conf.xml file for editing purpose. 

The most obvious path would be:

In Linux: /opt/octane/conf

In Windows: <drive>\<path>\octane\conf

  1. Then you need to find the string:
<Property name="LOG_FOLDER">
  1. Then you need to change the value to the recent new log location, an example for that is given below:

In Linux: /opt/octane/log

You need to note that for Linux Operating System it could be crucial to set the permissions for the specific “Octane” group, octal: rwxrwx— (770)

In Windows: D:/octane/log

You need to note to use the forward slashes carefully, or it will not be applicable.

  1. Do not forget to save the changes, or else all the progress will be lost.
  2. Then you need to restart the Octane service properly. 
  3. After that, you need to verify that the logs were written accurately to the recent new location.

4. Instructions to solve the Flash error on TruClient Browser in LoadRunner Enterprise 2020 SP3

It often happens that Flash does not display on TruClient Browser in LoadRunner Enterprise 2020 SP3. TruClient Browser is a renowned browser, and it is based on the Mozilla techno, after the Mozilla Firefox upgraded to the version 77. It could be that there is a bug due to which the browser is unable to display Flash components accurately in some situations. Then the same bug is brought to the TruClient Browser when it is updated/upgraded to version 77 in LoadRunner Enterprise 2020 SP3.

You can reproduce these steps:

  1. You need to create a new TruClient script.
  2. Then you need to open the Runtime Settings, then find the Replay section and click on it. 
  3. Then you need to inspect it and check the “Enable global plugins support (TruClient Browser only)”
  4. After you have been directed, you will see that the Flash did not show properly.

You can solve the above-mentioned error by following the instructions given below:

Fix 1: 

Here you need to add a Reload step after the navigation step, only if the navigated url has a Flash component. 

Then you need to add the Reload step for the very first flash url navigation; the following url navigations would suffice as well.

Fix 2:

For this fix, you need to carefully go step-by-step:

  1. You need to delete the following folder:
 %appdata%\Hewlett-Packard\LoadRunner\WebTruClientBrowser
  1. And for the existing scripts, you need to open the script folder and find the folder Profiles. If you are unable to find this folder, then that is fine. If you find the folder, then you need to go to the TruClientabrowser, then open the user.js file.

Then you need to find the particular line with the following content:

user_pref("plugin.scan.plid.all", false);

After that, you need to change the value from “false” to “true.

  1. Then you need to open the folder:
%lg_path%dat\WebTruClientBrowser

After that, you need to open the user.js and then locate the line with the following content:

user_pref("plugin.scan.plid.all", false);

After that, you need to change the value from “false” to “true.

After you are done with the existing scripts, then the newly created scripts will work properly.

5. Instructions regarding the addition of runs to trend reports failure

It often happens that users face problems when they add runs to trend reports in upgraded projects. What actually happens is that the database’s trend runs sequence is not updated with the recent total number of trend runs in the project. This eventually results in addition of a new run with the previous remaining PCT_ID (the primary key), and due to that this action fails.

To reproduce, you can follow the steps given below:

  1. You need to log in to a project that was earlier upgraded from LTE 2020 to 2020 SP2. 
  2. Then you need to visit the Trend Report, under the Analysis and then the Performance Trending.
  3. After that you need to create a new report. 
  4. Then you need to add runs to the report. Then no new changes appear, and the action results in complete failure.

It usually occurs while upgrading a project from LRE 2020. The actual sequence TREND_RUNS_SEQ does not get updated; it should go to the highest PCt_ID in the TREND_RUNS table and increment it later by one.

This problem can be fixed. You just need to follow the instructions given below:

  1. First, while using Microsoft SQL Management Studio, you need to connect to the database environment.
  2. Then you need to find the relevant project’s schema in all the Databases.
  3. Then in the project schema, you need to go to Programmability

After that, you select Sequences then dbo.TREND_RUNS_SEQ.

  1. Then you need to click on the Restart Sequence check box to set the input field to the highest PCT_ID in the TREND_RUNS table, then increase it by one.
  2. You need to carefully check and confirm that the sequence value equals the maximum value in the TREND_RUNS table.
  3. Instructions on making a user entity if its username starts with a digit

It often happens that LoadRunner Enterprise comes across an error that automatically makes a user entity when the username begins with a digit. While on the other hand, the application displays a validation message that doesn’t let the user create an entity at all.

You can fix this issue quite easily by following the steps given below:

  1. You need to confirm accurately that no one utilises LoadRunner Enterprise in any condition.
  2. Then you need to download hotfix and then extract its contents.
  3. Then you need to visit:

 <LRE installation directory>\PCWEB_ADMIN 

Then make sure to take the backup of the authentic origin folder ADMINX.

  1. Now you need to copy the ADMINX folder from hotfix to the <LRE installation directory>\PCWEB_ADMIN folder.

7. Instructions to log in properly from the Identity change utility

It often happens that in LRE 2020 SP2, SP3 users are unable to login from Identify change utility. The error window title being: 

lre Site management login details Initialization Error
Unable to connect to LRE server 
Please make sure that your login username and password are correct and try again.

In LRE 2020, SP2 and 2020 SP3, recently a new schema is introduced: 

lre_site_management schema

It was newly introduced in SP2 and then was directed and carried over to SP3.

When the Identity change utility is initiated, it automatically connects to the Management Schema.This error can be easily tackled as well; all you have to do is follow the instructions given below:

The Management Schema does not authenticate LDAP users you need. So, you need to use the original Admin user credentials that the user was provided with during the application configuration, do not select any LDAP.user.

8. Unable to generate an analysis report for large result sets

Getting Parsing error with large result sets (less than 2 GB).:

Parse Command line error:

Unable to cast COM object of type ‘System._ComObject’ to interface type ‘Borland.Vcl.Fields’. This operation failed because the QueryInterface call on the COM component with IID ‘{XXXXXXXXXXXX}’ failed due to the following error:

No such interface supported. (Exception from HRESULT XXXXXXXXX (E_NOINTERFACE)).

Note: Small result sets work just fine on the same machine.

The cause is due to taking a lot of resources. The workaround is to change the Data collection option from “Generate Summary data while generating complete data’ (third option which is the default) to “Generate Complete data” which is the second option in the Analysis which is available under Analysis —-> Tools

9. Verify the arguments provided in web_set_certificate_ex() are correct

If the above command works, then the arguments provided in web_set_certificate_ex() are valid.

Example: s_client -connect ivorde.ro:443 -cert example.pem -key keyex.pem -pass 1234

10. VuGen gives exception error at the end of the recording or during replay due to thumbnails

If you are getting the following pop-up error at the end of the recording:

AXWIN Frame Window: thumbprocess.exe – Application error

The instruction at ” 0x7dc995fe” referenced memory at “0x02b87cf4”. The memory could not be “read”.

Click on OK to terminate the program. Click on CANCEL to debug the program.

The workaround is as follows:

Now try doing a recording (or replay if the issue was during replay) with VuGen

4. LoadRunner – Tips and Tricks – Feb 2021

1. Copying Runtime Settings from one script to another causes the test to fail when starting

When you copy Runtime Settings from one script to another, the test fails at the beginning of the run. When the Run Logic is copied the Runtime Settings from one script to another, causes the script validation to fail at the start of the run. The problem you face is because of the inability to start a run after copying Runtime Settings from one script to another. 

How to be duplicated: 

  1. Log on to Enterprise LoadRunner. 
  2. Going for a trial/check. 
  3. Attach at least two scripts that are distinct. 
  4. Copy the Runtime Settings from one to another script.

The problem can be corrected as follows: 

  1. Install the hotfix and remove the contents 
  2. Build a PC.Internal.WebA.dll backup file from the folder <LoadRunner ENterprise Server>\PCWEB\bin. 
  3. Copy and replace a file called PC.Internal.WebA.dll in the file above. 
  4. Go to a test in LoadRunner Enterprise in which you have copied the Runtime Settings. 
  5. Delete any scripts that you have copied to the Runtime Settings from the evaluation. 
  6. Add the scripts previously removed. 
  7. Copy back the Runtime Settings from phase 5 to the scripts. 
  8. Get the run program started.

2. System Temp folder runs out of space during project migration

Some scripts could not be copied correctly during project migration if the system’s Temp folder runs out of space. The issue is that if the system’s Temp folder runs out of space, the scripts may have not been copied correctly. The justification is because LoadRunner Enterprise uses the system’s Temp folder to transfer scripts from the ALM repository to its own repository as an intermediate folder. The scripts will not be copied if there is insufficient space available in the Temp folder.

 How to be duplicated :

  1. Sign on to Enterprise Management for LoadRunner. 
  2. Go to the tab on Ventures. 
  3. Migrate a project with a collection of very broad files. 
  4. You can see in the LoadRunner Enterprise Program that it is difficult to reach some of the scripts.

 The problem can be corrected as follows:

  1. Install the hotfix and remove the contents 
  2. Stop the Backend LoadRunner Service. 
  3. Build a backup from the <LoadRunner Enterprise Server>\LRE BACKEND folder of the AlmUpgradeEngine.dll file. 
  4. Copy and update the file with AlmUpgradeEngine.dll in the folder mentioned above. 
  5. Reboot the Backend Service LoadRunner.

3. Facing the following error when installing LG

You will face errors when you try to install the LG program. Adding a Linux LG designed to run on a custom port via a MI Listener

The problem can be corrected as follows:

1.Since in this case MiL is requested to run on port 8443 for example, instead of port 443, these are the changes that need to be done on the MiListener server.

  1. Edit the file in MiL C:\Program Files (x86)\Micro Focus\MI Listener\launch_service\dat\channel_configure.dat and add the line below in the section

  [General] OFWPort=8443

  1. Edit the file in MiL C:\Program Files (x86)\Micro Focus\MI Listener\launch_service\dat\mdrv.dat and add the line below in the section

[Launcher] OFWPort=8443

2. On the Linux LG machine here are the changes:

  1. In the below file you can change the parameter from 0 to 1

cd /opt/MF/MF_LoadGenerator/bin ./m_daemon_setup stop vi /opt/MF/MF_LoadGenerator/dat/br_lnch_server.cfg [FireWall] FireWallServiceActive=1

  1. Save the file. > vi /opt/MF/MF_LoadGenerator/config/.mercury/m_agent_attribs_$HOSTNAME$.cfg
  1. Edit the file by making the changes mentioned below: 

•ServerPort=”8443″

ServerMachine=”IP_of_MiListener”

HostSymbol=”LG_Key_to_use_In_LRE”

•Adapt the IP of the hostname, and the LG key. The new MiL 8443 port should be sent via the parameter ServerPort=8443.

3. Save the file and start the daemon.

4. Finally add the LG in LR or LRE and it should connect.

4. Release information for LoadRunner Enterprise 2020 SP3 Hotfix 1

All relevant information on how to download and update the LoadRunner Enterprise 2020 SP3 Hotfix 1 policy and related information is offered.

 We have some common questions like:

  1. Where to download LoadRunner Enterprise 2020 SP3 Hotfix1?
  2. Upgrade Policy
  3. List of hotfixes

Fixation of problem and answers to your  questions are as follows:

  1. Where to download LoadRunner Enterprise 2020 SP3 Hotfix1?

Ans: Download the below link:LRE2020_SP3_Hotfix1.zip to your LRE server(s).

This file contains several important hotfixes which appear in the list.

  1. Upgrade Policy 
  1. List of hotfixes included in the LRE SP3 Hotfix 1. 

Ans: All the things are mentioned in the below box: 

  1. Efficiency and accessibility problems with Timeslot. 
  2. There are no TruClient scripts shown in the Script Viewer. 
  3. Instead of overriding the exit script, uploading a UFT One script produces a newly renamed script. 
  4. If there were strong tests in the last 10 runs, performance issues on the project’s dashboard. 
  5. SSO problems are case-sensitive when LRE is equipped with a load balancer and email login. 
  6. Install script problems when a load balancer is equipped with LRE. 
  7. The LRE Administration user page shows only the first 1000 users. 
  8. Unable to import users that start with a digit and have a username. 
  9. In the LRE Administration, uploading reports in CSV file format is not available.
  10. “Connect to the existing session” does not function in the Load Generator Management dialogue box when activating terminal services. 
  11. The monitor times out when collecting counters from AppDynamics. 
  12. LRE 2020 SP3 update from earlier LRE versions fails on seeding users for Admin schema. 
  13. LRE server problems with the clean up job for LoadRunner Enterprise\scripts\ and \LoadRunner Enterprise\orchidtmp\Repository\ directories. 
  14. The password reset redirect is incorrect for the multi-tenancy URL. 
  15. Multi-tenancy: In LRE Administration, the Hosts tab reveals errors when editing hosts if private load generators are running actively on the tenant.

5. Hotfix for Vugen integration issues with LoadRunner Enterprise 2020SP3

In the Test Lab, the folder tree can not extend properly if there are multiple files under separate paths of the same name. For a longer time, VUGEN’s LRE connection is not alive. For example, if a user tries to open an LRE script and make changes to the script, the connection will be disconnected and not saved to the LRE server until the script has been successfully opened. If the USER wants to open a second project script, the USER must re-authenticate with the username, password, and then pick the project. Any of the old scripts are not saved back to the LRE registry under “Save” action.

The problem can be corrected as follows:

  1. Using the hotfix to download and extract LR-2020-SP3-Hotfix-for-LRE.ZIP 
  2. Backup the original “VuGenToolkit.exe” with: percent vugen path %\bin\VuGenToolKit. 
  3. Backups the initial folder “lre-uploader” in: percent vugen path percent \binin 
  4. Backup the original “LR.VuGen.VuGenLRELRCIntegration.dll” in: percent vugen path percent \binin path percent. 
  5. Copy from Phase 1 VuGenToolkit.exe to: percent vugen path percent \bin\VuGenToolKit\VuGenToolkit.exe percent vugen path percent
  6. Copy from Phase 1 to the lre-uploader folder: percent vugen path percent \bin\lre-uploader 
  7. Copy the file LR.VuGen.VuGenLRELRCIntegration.dll from Phase 1 to percent vugen path % \bininLRELRCIntegration.dll 
  8. The initial “HP.LR.VuGen.DebuggerAddin.dll” backup is located at: percent vugen path % \Addins\VuGen\FrontEnd\VuGenDebugger\VuGenDebugger.dll 
  9. Copy HP.LR.VuGen.DebuggerAddin.dll to : percent vugen path percent \Addins\VuGen\FrontEnd\VuGenDebugger 
  10. If the proxy fails to link to LRE via VuGen, define the following device variables on the VuGen machine:

a.HTTPS_PROXY=http://<my-proxy>:<port> b.HTTP_PROXY=http://<my-proxy>:<port>/  c.Reboot the Vugen programme 

6. Is there a way to remove the license key ?

 There is a solution to every problem. Luckily, you can remove the license key. 

The problem can be corrected if you follow the below instructions :

  1. Go to the “programdata” folder (you can press the win + R keys to open the “RUN window” to write “percent programdata percentage” on it, click “OK”). 
  2. Micro Focus > LoadRunner > details. You can find the ‘LRKey.txt’ file there. 
  3. Open the following file: LRKey.txt from Notepad++. 
  4. Please check whether any LoadRunner processes are running, including Controller (Wlrun.exe), VuGen (VuGen.exe), Analysis (AnalysisUI.exe) or LoadRunner Agent Process/Service, then stop them. 
  5. Next, add LRkey.txt to the zip file for backup purposes. 
  6. LRKey.txt” –> click the right button –> edit.” Licenses are displayed in XML format. 
  7. Look for the xml block that has the licence name in order to delete the licence. 
  8. After removing the license, save the “LRKey.txt” file and close it.

7. Error -205177: Tab 2 heartbeat timeout. [MsgId: MERR-205177]”

Error -205177: Tab 2 heartbeat timeout. [MsgId: MERR-205177]”. (Truclient chrome). The problem is that when you run the load test for truClient chrome script:  you receive an error message: “Error -205177: Tab 2 heartbeat timeout. [MsgId: MERR-205177]”.  

Below are few reasons for this issue and also a further clarification on this workaround

1. What is JavaScript and what does it fix? 

Ans: This is part of the Truclient code for the Chromium browser. It stops testing whether or not the AUT is alive. 

2. What is the impact of this environmental shift? Is it confined to a specific protocol? (Chromium TC or all other browsers)? 

Ans: It’s just going to affect TC Chrome 

3. If this fix is only connected to the TC Protocol, why are any projects not facing these problems using TruClient protocol chrome? 

Ans: This is only connected to the TC Protocol. It depends on the web application is running (Application Under Evaluation, AUT) TC and the machine’s current load. This error is recorded by TC when we think the web application page is hanging

4.Are we just suppressing the error or fixing it?

Ans: We only suppress it, because often we find that it reports false results (the web page is still alive, but we are still reporting heartbeat error). There’s still no permanent remedy available. 

So, it should be OK to do it if all transactions look nice when we disable this function. A permanent fix is not implemented in LRE/LRP 2020 SP3, but the work remains the same. In TruClient, AUT reports to TC repeatedly once every few seconds saying “I’m alive” This is done by calling setTimeout() web API. 

TC will record this “heartbeat” error and stop the current running phase in the TC script if TC does not hear this report for a while.

In certain instances, it is also found that the timer set in the AUT will be cleared by the AUT. This will also cause TC not to hear “I’m alive” from AUT for a moment, so this timeout error will be raised. MF RnD re-alters the implementation to place the setTimeout in TC instead of AUT for this particular problem.

How to fix the problem?

•There is no permanent fix yet for this.

Suppressing the error message is the only thing you can work through. This has to go on ALL machines with load generators (wherever the truclient chrome with heartbeat problems scripts are being run)

The problem can be corrected as follows :

  1. But if the controller behaves like LG, then the controller still needs to make this adjustment. 
  2. Close all processes/services of the loadrunner or load generator where this adjustment needs to be made. 
  3. Find DRRECommunicationMain.js” under % lr path%dat\TCChrome\Extension\RRE\content\DRRECommunication” folder. 
  4. Then comment out the line “DRREHeartbeatMgr. onCheckTimerTimeout();”

Refer the example below:

_setCheckTimer: function ()
{DRREHeartbeatMgr._checkTimer = setInterval(function ()
{//DRREHeartbeatMgr._onCheckTimerTimeout(); }, DRREHeartbeatMgr._interval);}

Note:  For various versions, this js file can be different. You may also create a support ticket and provide them with the file above to make modifications.

8. VuGen integrations to LR Enterprise – Not able to expand folders that contain too many scripts saved on them

LR Enterprise VuGen Integrations – Unable to extend files with so many scripts saved on them. The issue is that most of the folders can be expanded when you open VuGen, link to LRE and try to expand the folders. If, however, the folder contains so many scripts inside it, nothing happens when you click on it to expand, they will not expand. If we try to extend certain directories that contain too many scripts directly from LRE UI, there are no problems.

The problem can be corrected by following the below steps :

  1. Install and decompress the attached LRE-uploader file. 
  2. Go to <Installation route for LoadRunner/VuGen>\bininin 
  3. Look for the lre-uploader folder and make sure to create a whole folder backup. 
  4. Change the existing folder for lre-uploader with the new folder downloaded from move

9. LRE 2020 SP2: Health check shows failed messages, even though the environment is working perfectly fine

LRE 2020 SP2: health check shows failed messages, even though the environment works perfectly fine. For example: check host and backend service connectivity check load test web service management. The environment works just fine. All of the services run on all the LRE modules. Failed messages listed above, however, are shown by health tests. Seems like the host maintenance job is keeping the LRE server busy. So failed messages are seen by a health search.

The problem may occur because of many reasons like: 

  1. Server tab
  2. Check load test management web service
  3. Check Load generators are accessible with DB credentials
  4. Check server user identity
  5. Check the time series Dbs on hosts are accessible from the server
  6. Hosts tab
  7. Check connectivity between host and backend service

The problem can be corrected by following the below steps : 

  1. Disable Task Host Maintenance 
  2. We may also minimise the frequency of host maintenance activities, but errors in health checks are seen occasionally. 
  3. It is better to disable it. 
  4. The problem does not exist with the LRE 2020 SP3.

10. NtityUnlocker fails to authenticate over HTTPS when TLS 1.0 and SSL 3.0 security protocols are disabled on the host machine

When TLS 1.0 and SSL 3.0 security protocols on the host machine are disabled, EntityUnlocker fails to authenticate over HTTPS. The issue was resolved in LRE 2021. The explanation may be that the version of the .NET System application was designed with is hard-coded to use TLS 1.0 or SSL 3.0 by default. When these protocols are disabled on the host and the LRE server uses HTTPS, EntityUnlocker would fail to authenticate because it will not be able to access a secure connection to the LRE server.

The problem can be corrected by following the below steps : 

  1. Install the modified EntityUnlocker.zip and remove its contents 
  2. In the <LoadRunner Enterprise Server>\PCWeb\Downloads folder, place EntityUnlocker.exeder

11. Error: “Couldn’t initialize the Detection library” when running Teradici PCoIP Vusers

If Teradici PCoIP Vusers are operating from the Controller on a remote load generator built by OneLG, Vusers will struggle with:’ Unable to initialise the detection library’

The problem can be corrected by following the below steps : 

  1. To find PCoIP replay.dll, install the Hotfix and remove its contents 
  2. Go to \bin to backup the original pcoip_replay.dll file. 
  3. Substitute the one downloaded from the first step

PS: The issue will be officially fixed in LRP and LRE  version 2020 SP3

5. LoadRunner – Tips and Tricks – Mar 2021

1. Compilation error when including in Vuser script a header or parameter file that resides on UNC path

What is the UNC path? 

UNC- Universal Naming Convention is the Unix group that created a standard for defining servers, printers, and other network tools. The name of the machine is followed by double slashes or backslashes in a UNC path. A single slash or backslash separates the path (disk and directories) within the device, as seen in the examples below. Drive letters (c:, d:, etc.) are not used in UNC names in the DOS/Windows example.

Sum Up: 

  1. When a vuser script refers to files stored on a UNC path, it generates a compilation error. 
  2. FOR EXAMPLE: a header (.h) or parameter (.dat) file. 
  3. In Vugen or on the controller as Localhost, the script works well. When run on a different host load generator, however, it fails.

Problem: CCI compilation error – In file included from c:\documents and settings\networkservice\Local Settings\Temp\brr_fse.978\global_dir\123456789\XYZZarch.c:3 Table ‘<UNC filepath> cannot be opened. Error code is ‘-2’

Cause: 

  1. When the Load Generator Agent is running as an operation, the problem arises (magentservice.exe ). 
  2. Services do not have access to UNC routes by default ( or remote disk drives).

The following  can be taken to resolve the issue: 

Option A: Use magentproc.exe to run the Load Generator Agent as a method. 

Option B: On the Load Generator unit, change the rights of service. 

  1. It is important to configure the Load Generator Agent with sufficient credentials to access the remote machine/location in the UNC path in order to run it as a service and allow it to access a UNC path. 

Taking the following steps: 

Firstly, Enable services to access network (UNC) paths.

  1. Regedit should be opened 
  2. Navigate to [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Lsa]
  3. Change the argument value for “disabledomaincreds” to 0. 
  4. To make the change successful, restart Windows. 
  5. Check to see if the load test is functioning correctly. If not, go to the second stage.

 (taken from http://www.winhelponline.com/articles/110/1/Stored-User-Names-and-Passwords-dialog-is-empty.html)

Secondly – 

  1. Configure this service’s user id to use the required id and password for accessing the UNC route.
  1. To associate a user name and password with a server and credentials, do the following: 

(Alternatively, Start->Settings->Control Panel->User Accounts:: Advanced tab:: Manage Passwords ).

  1. The “Stored User Names and Passwords” dialogue appears, allowing you to add any server and credentials combination. 

2. Vugen Script with custom header file in globals.h fails to execute in Performance Center, however, replays fine in VuGen

What is the VuGen script? 

The VUGen (Virtual User Generator) tool in LoadRunner is used to generate testing scripts that simulate real-user actions on your device. In VUGen, a virtual user (VUser) replaces a person, and the VUser’s behaviours are documented in a VUser script to simulate real-user behaviour for testing and monitoring. It is one of LoadRunner’s four main components. When you first start using HP LoadRunner for Performance Checking, this is the first part you’ll communicate with. 

The features of VUGen , that are quite important are- 

VUScripts: VuGen’s aim, as previously mentioned, is to build VUScripts that can be used to simulate a real-life virtual user.

Actions: An operation is a set of user transactions that are performed in the System Under Load to accomplish a specific mission. In other programming languages, an operation is equivalent to a function. 

There are three default functions in any Vuser script:

  1. Vuser init is a command that starts a user (used to login into the application) 
  2. Taking action (used to record the business process) 
  3. Vuser finish (used to log out of the application) 

VUGen not only records but also replays scripts (for a single VUser) to ensure that they are registered correctly. After you’ve double-checked that the script is right, you can use it in a LoadRunner scenario.

Sum Up: Handling scripts that use custom header files in globals.h on a PC

Problem: 

  1. Vugen scripts that have a custom header file in the global.h file (which is stored on a shared network drive), such as:

#include “lrun.h”

#include “web_api.h”

#include \files-libpccommon.h

  1. Replaying such a script in vugen works well, but when attempting to run it in Performance Center (PC), it fails with the following error messages: 
  2. The file could not be found due to an invalid path.

 Cause: The issue arises because the magnet is normally run as a service on the PC, and services by default are unable to see UNC paths or remote disk drives. You should not have this problem if you run the magnet as a process.

The following  can be taken to resolve the issue: 

Solution 1:

  1. One way to stop running magnet as a mechanism is to keep track of the remote machine’s username and password credentials by following the steps below: 
  2. This message discusses how to make accessing network services in the “MERCURYGLOBAL” (or any other) domain as easy as possible. You can create a mapping Server à Credentials To Use called “Stored User Names and Passwords,” which automates the logging in process. It literally takes the place of my “ReconnectOnStartup” program and hides the login process from you. 
  3. If you can’t change the mapping for “Stored User Names and Passwords,” do the following:
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsa]

(taken from http://www.winhelponline.com/articles/110/1/Stored-User-Names-and-Passwords-dialog-is-empty.html)

  1. You can also add entries to the mapping “Stored User Names and Passwords.” 
  2. Click on the Start, click Run, type rundll32.exe keymgr.dll, KRShowKeyMgr, and then press ENTER (Alternatively, StartàControl PanelàUser AccountsàAdvanced tabàManage Passwords).
  3. The dialog “Stored User Names and Passwords” appears, and you can pair any pair (server, credentials) you want. 
  4. This process is carried out only once, and the saved mapping will last through subsequent log-offs or restarts. 
  5. You can now use the Explorer’s “Map Network Drive” feature on a regular basis to map any folder on the network servers as a local drive.
  6. This also may possibly resolve the problem of installing the new Norton Security Guard that is not working well with the HP Credentials Manager.

Solution 2:

  1. To run magentservice.exe on LoadGenerators, use IUSR METRO or a domain account with complete permissions over the network drive. 
  2. To switch from the default SYSTEM account: 
  3. Locate magentservice.exe in Control panel-> Administrative tools->Services, double-click it, and in the “log on” tab, give the account full permissions.

3. Error when embedding HTTP headers inside a SOAP header

What is meant by a SOAP Header? 

While some WSDL files require a SOAP header to be transferred with each order, the SOAP header is an optional part of the SOAP envelope. A SOAP header is associated with a SOAP request or response message and contains application-specific context information (for example, security or encryption information).

Sum Up: When trying to add an HTTP header to a SOAP header within a web service call(), but the following error pops up. 

Problem: Error: InvokeMethod failure: Unable to cast object of type ‘System.Xml.XmlText’ to type ‘System.Xml.XmlElement’..

Cause: 

  1. It is not recommended to include HTTP headers in a SOAP header. 
  2. The problematic code tends to be as follows:
 web_service_call( "StepName=GetMyView",
         "SOAPMethod=MyMethod|BindingLink|GetMyView",
         "SOAPHeader=<SoapHeader>"
          web_add_header( "<Content-Type", "text/xml; charset="utf-8">);
          web_add_header("SoapAction","MyServices.Services.SomeLink.GetMyView");
          web_add_header("EndPointAddress","https://someserver.nowhere.net/SomeLink/FinalLink.svc/wsHttp");
             web_add_header("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727");
         </SoapHeader>",
     ...
     ... code omitted for clarity
     ...
  BEGIN_ARGUMENTS,
     ...
     ... code omitted for clarity
     ...
  END_ARGUMENTS,
  BEGIN_RESULT,
  END_RESULT,
  LAST);

The following  can be taken to resolve the issue: 

Remove the web_add_header() code from the SOAP header in the web_service_calI(), moving them to just prior to the web_service_call():
web_add_header("Content-Type","text/xml; charset="utf-8");
web_add_header("SoapAction","MyServices.Services.SomeLink.GetMyView");
web_add_header("EndPointAddress","https://someserver.nowhere.net/SomeLink/FinalLink.svc/wsHttp");
web_add_header("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NETCLR 1.1.4322; .NET CLR 2.0.50727");
web_service_call(); // after removing HTTP headers from SOAP header.

4. Jenkins Jobs failing with Failed executing operation ‘Analyzing’

What is Jenkins Job?

Jenkins Freestyle Projects are build jobs, scripts, or pipelines that include steps and post-build activities that can be repeated. It’s a better work or task that can be extended to various operations. You can easily configure, trigger and provide Jenkins project-based protection.

Sum Up: 

With Jenkins jobs, you might be getting the following mistake. The test might go smoothly and compiles the data, but it fails to evaluate them.

Problem: 

ERRORS:

Note: We were able to manually analyze the findings on one of the hosts using AnalysisUI.

The following  can be taken to resolve the issue: RESOLUTION: LRE 2020 SP3 HF4 “HOTFIX 4”

5. TruClient Firefox scalability issues using Microsoft Terminal Services

Sum Up: 

  1. Microsoft Terminal Services is unable to operate a greater number of Vusers. 
  2. When using Microsoft Terminal Services to run a larger number of TruClient Firefox Vusers, the Vusers get trapped in the Init state.

The following  can be taken to resolve the issue: 

  1. The dll launcher.dll and the executable TSLauncher.exe also have an issue. 
  2. The additional parameter written in the RDP file was not passed to the launcher by the controller. 
  3. As a result, the RDP session’s magentproc.exe was not loaded. 
  4. TSLauncher.exe has been patched and will now successfully load magentproc.exe and change the RDP file as required.

Please find below the to follow for your version.

  1. Loadrunner 12.00, LoadRunner 12.01, Performance Center 12.00, and Performance Center 12.01 users can follow these instructions:
  1. Instructions for Loadrunner 12.02 and Performance Center 12.20:
  1. Hotfix files:

6. Jenkins – Performance Center/LoadRunner Integration

Sum Up: 

  1. Details and details about the Jenkins software’s integration with Performance Center and LoadRunner. 
  2. Using the Jenkins – HP Application Automation Tools Plugin, Jenkins, as an open-source and integration platform, helps you to run HP tests. 
  3. This plug-in activates the various ALM platform test sets, such as Unified Functional Testing, QuickTest Professional, or Service Test, LoadRunner scenarios, and Performance Center. 
  4. It’s important to remember that Performance Center and LoadRunner are two separate items, and only the versions mentioned below are supported.
  5. This plugin lets you run an HP test as a build stage and see the results in Jenkin’s UI, just like JUnit. 
  6. This plugin currently supports the following features:

 * HP Unified Functional Testing 11.5x and 12.0x (QuickTest Professional and Service Test 11.50 capabilities)

 * The HP Quality Center 10.00, with the QuickTest Professional Add-in for triggering test sets

 * The HP ALM Lab Management 11.50, 11.52, and 12.xx

 * The HP Service Test 11.20 and 11.50

 * The HP Application Lifecycle Management 11.00, 11.52, and 12.xx

 * The HP Performance Center 12.xx

 * HP QuickTest Professional 11.00

 * HP LoadRunner 11.52 and 12.0x

  1. Use the Quality Center Plugin if you’re using Quality Center 10.00 or earlier and QuickTest Professional 9.x or 10.x. 

7. OpenSSL 1.0.1j upgrade for LoadRunner and Performance Center

Sum Up: 

  1. Upgrade to OpenSSL 1.0.1j for LoadRunner/Performance Center versions 11.0x and 12.0x. 
  2. This hotfix includes the OpenSSL version 1.0.1j libraries and addresses the most recent security vulnerabilities in OpenSSL. 
  3. The hotfix is compatible with the following versions of LoadRunner and Performance Center: 11.04, 12.00, and 12.01. 

Note: Since this update was already included in LoadRunner 11.52 patch 4 and LoadRunner 12.02, this hotfix is no longer necessary. 

  1. There is a security warning available athttps://www.openssl.org/news/secadv_20141015.txt

The following  can be taken to resolve the issue: 

Upgrade instructions:

  1. Backup all ssleay*.dll and libeay*.dll files in the <Installation Dir>\al_agent folders and <Installation Dir>\bin, <Installation Dir>\launch_service.
  2. You will realize that the <Installation Dir> varies for the different components from which it can be concluded that the default path for full LoadRunner is “C:\Program Files (x86)\HP\LoadRunner\”  and for Load Generator standalone installations it is “C:\Program Files (x86)\HP\Load Generator\” and for Performance Center Host it is “C:\Program Files (x86)\HP\Performance Center Host\”).
  3. Extract the patched dlls from the corresponding archives below:

8. Error “No such interface supported” is received on perfmon

Problem: When using a non-administrator account to connect to a monitor, it fails, and when using perform, it returns the error “No such interface enabled.”

Cause: A lack of permissions is the source of the mistake.

The following  can be taken to resolve the issue: 

  1. To reset permissions with secedit, type the following command at the command prompt:
secedit /configure /cfg %windir%\repair\secsetup.inf /db secsetup.sdb /verbose
  1. Remote access to Perfmon counters is now possible. 
  2. Check out this for more information.

9. HTTP 500 and a SOAP Fault during replay of a Web Service script

Sum Up: 

When a Web Service receives an unknown account number, it returns an HTTP 500 error and a SOAP Fault, causing the Vugen Web Service script replay to fail. This Knowledge Brief explains how to modify the Vugen script to manage HTTP 500 and SOAP Faults.

Problem: 

  1. When using a Vugen 9.5 script generated with a WSDL import to evaluate a well-known Web Service, the error returned can not be handled by Vugen if the data listed is invalid. 
  2. The Vugen Web Service script replays without error when the right data is supplied to the Web Service. 
  3. In certain test cases, however, the Web Server returns an HTTP 500 with a SOAP Fault, such as when a call to the service is made with an invalid account number. 
  4. The Vugen replay will fail as a result, with the following messages appearing in the Vugen Replay log:
<snip>
Action.c(6): HTTP/1.0 500 Internal Server Error
Action.c(6): X-Backside-Transport: FAIL FAIL
Action.c(6): Server: Apache-Coyote/1.1
Action.c(6): SoapAction: "http://xxx.yyy.com/xxxx/yyyyy/Recognition-v1/wsdl/Recognition"
Action.c(6):    
Action.c(6): Content-Type: text/xml
Action.c(6): Date: Mon, 30 Nov 2009 07:19:48 GMT
Action.c(6): X-Client-IP: xx.xx.xx.xx
Action.c(6): Connection: Keep-Alive
Action.c(6): Content-Length: 1454
Action.c(6):    
<snip>
Action.c(6): Error Exceptions:
Action.c(6): System.Exception: Soap error:
Message:bad cin value : contract not found
Mercury.LR.LrWsNetClient.ProxyCreator.InvokeMethod(String sMethod, IWSMethodParameters mParams, String sAsyncEvent)
Mercury.LR.LrWsNetClient.NetReplay.InvokeMethod(String sMethod, IWSMethodParameters mParams, String sAsyncEvent)
Action.c(6): Error: <CENTER><STRONG><FONT COLOR=#FF0031>Expected SOAP result, received SOAP fault</FONT></STRONG></CENTER>
Action.c(6): Error: <CENTER><STRONG><FONT COLOR=#FF0031>Failed to retrieve output arguments/checkpoints - SOAP fault occurred</FONT></STRONG></CENTER>
<snip>
  1. How can Vugen handle the SOAP Fault and the HTTP 500 so that the Web Service script can be used to test the service response to invalid data? 

Cause: 

  1. If there is an irrecoverable error, the Web Server generates an HTTP 500 error, but it can also be caused when there is a SOAP Fault, or when a problem is found at the application level. 
  2. This behavior is documented in
  3. http://www.w3.org/TR/2000/NOTE-SOAP-20000508/# Toc478383529 this conduct. 
  4. In this case, a non-existent account number is transferred to the application through the Web Service, resulting in the server returning both an HTTP 500 and a SOAP Fault response.

The following  can be taken to resolve the issue: 

  1. Negative testing is when you test a Web Service with data that is knowingly incomplete or wrong. 
  2. The web service call in a Vugen Web Services script uses optimistic checking by default, which means the script will fail if the server returns a SOAP Error. 
  3. Adjust the default behavior of the web service call to accept ANY response from the server by adding the argument “ExpectedResponse=AnySoap” to allow the script to handle the SOAP Fault. 
  4. For more details, see Volume II – Protocols -> Web Services – Negative Testing in the Vugen 9.50 User Guide. 
  5. The application’s actual error code or message (e.g., “Invalid Account Number”) can then be recovered from the SOAP response by calls to lr_xml_find and lr_xml_get_values within the script. 
  6. The Vugen online support and the Vugen 9.50 User Guide Volume 1 -> Chapter 26 – Programming with the XML API -> Using XML Functions document how to use these functions.

10. Issues under high load for Citrix tests when using HP Citrix Agent


Sum Up: After a large number of Citrix Vusers are running, link or other similar issues can occur during Citrix tests. When Citrix Agent is used for Text Synchronization or other purposes, this occurs.

Problem: Citrix tests have link problems when there is a lot of traffic.

Cause: 

  1. Citrix Virtual Channels are used by the Citrix Agent (which is mounted on the Citrix Server) to communicate with the Citrix Client (on the client machine). 
  2. On the Citrix Server side, and HP Citrix Agent instance is launched for each Citrix Vuser operating on the LoadGenerator machines. As a result, they each create a Citrix Virtual Channel. These channels can experience problems in a large number of situations, resulting in unexpected communication issues. 
  3. To learn more about Citrix Virtual Channels, click here: http://support.citrix.com/article/CTX116890

The following  can be taken to resolve the issue: 

  1. Instead of Citrix Virtual Channels, use TCP Channels. 
  2. After the client and server have built a connection, the Citrix Virtual Channel is used to create a handshake between the Citrix Client and the HP Citrix Agent. TCP networks, on the other hand, are used for forwarding communication. 
  1. CtrxAgent has two additional critical parameters that should be considered. 
  2. NumPorts and MinPortValue Agent will look for a free port starting at MinPortValue and continuing until MinPortValue + NumPorts in order to assign TCP ports.
  3. If you find a Firewall in between, it should be configured to allow communication on those ports.

6. LoadRunner – Tips and Tricks – Apr 2021

Recording issues with vugen with Active X controls.

The input box appears as X while recording with vugen but manually in the browser, it is as expected. The input box is visible as ManualBusinessProcess and the same input box appears as X as vugenRecording during Manual Business Process and vugen recording respectively

However, you can fix this issue. The application under test works only in the 32bit process, but VuGen starts 64bit IE during recording. So use the following Fix_1250 written below

STEP 1: Dowload the fix.zip and find (also you will find readme.txt for instructions)

 QTWeb.lrp

 WebBase.lrp

 WinSock.lrp

 wplus.lrp

STEP 2: Go to <LoadRunner>\dat\protocols\. Make a copy of the original copy of the above 4 lrp files.

STEP 3: Make sure to close all IE windows and kill all IEXPLORE.EXE processes before starting recording.

NOTE: This fix is for the 1250 version. If there is a similar problem with any other version or any other service pack, please open a ticket with support.

Cannot find the symbol Actions.java

The symbol Action.java including the web function in Java user protocol is not found. It’s a concerning issue. 

The symbol Action.java including the web function in Java user protocol is not found. It’s a concerning issue. 

We can resolve this issue using some specific URL. Preferably we can use web functions in javascript in the web.url web.customrequest .This URL works only after importing Irapi.web package. If you use it without this package, you might face a “cannot find symbol” error.

We can fix this situation but let us have a glance at the error.

import lrapi.lr;
 import lrapi.web;
 public class Actions
 {
    public int init() throws Throwable {
        return 0;
    }//end of init
    public int action() throws Throwable {
        web.custom_request("post_query_exe", 
    "Method=POST", 
    new String[]{
        "URL=http://MicroFocus/cgi–bin/post_query_exe",
                "TargetFrame=",
    "LAST"}
 );
        return 0;
    }//end of action
    public int end() throws Throwable {
        return 0;
    }//end of end
 }

In LoadRunner vugen 1260, Insert-> new step web_convert_param does not bring the window

Insert-> new step web_convert_param does not bring the window in LoadRunner vugen 1260

If you are also facing this problem follow the below-written steps to fix it.

STEP 1:Replace 2 attached configuration files (websteps_steps.dat and WebHTTP.addin) Fix1260 in order to fix this issue (under installation folder – %vugen_path% )

STEP 2:The first one is \dat\websteps_steps.dat

STEP 3:The second one is Addlns\VuGen\Protocols\WebHttpHtml\WebHTTP.addin

Note: This fix is tried and tested on the 12.60 version. If the problem exists in any other version or 1260 different service pack levels, please open a case with support.

Resource content is not decoded by default in PC/LR 12.63

In PC/LR 12.63, the default behavior was changed to omit decoding (uncompression) of gzipped resources to improve performance.

If this is not done, it could lead to errors such as Error -26377 (no match found for the requested parameter).

As always we can solve this issue. Just follow the steps written below.

STEP 1:Set the behavior to decode resource content: web_set_option(“DecodeContentForResources”, “Yes”, LASTSTEP

STEP 2:Replace with attached dll in %LR_PATH%bin, which turns on the option by default.

Minimum recommended permissions required for LRE DB administrator for Oracle deployment

There are certain points to keep in mind before connecting to LRE 2020. Let us see it one by one. The database to be used to connect LRE 2020 and above to an Oracle database server, must have enough permissions to perform certain administrative tasks in Oracle. These administrative tasks could be like creating the LRE project user schema, copying data between projects, and data manipulation.

If you’re facing security issues while using the Oracle system, then there’s the recommendation that your database administrator create an LRE database administrator user. For example lre_admin, with the specific privileges required to install LRE.

Also, your database administrator can create an LRE database administrative user, for example, script, LRE_ADMIN_DB__ORACLE.sql, attached here. This script creates the LRE database administrative user with the recommended grants required on the database. Your database administrator should run the script and create this user on the database server.

Vugen unable to create more than 10 Actions in TruClient protocol

If you are using Vugen, then you must be aware that more than 10 Actions in TruClient protocol cannot be created.

If you try to create more than 10 Actions in TC protocol then there are chances of coming 

across an error “Maximum amount of actions have been reached”.

Follow the given steps to create 10 Actions in the Trueclient protocol.

Step 1:Go to development mode.

Step 2: Click on Manage Actions.

Step 3: Click on + to create 10 Actions, and for the 11th Action Error “Maximum amount of actions have been reached”.

Likely to fix the solution, follow the given steps.

Step 1: 12.60–> once 10 Actions are created using “manage Action”

Step 2: any action, record or enter some code. select all lines–> right click–> group Into–> new action (select) give a name.

Step 3: 1261, 1262,1263 the above work around does not resolve.

So we need to edit the file to fix this issue. To edit the file, here are the steps.

Step 1:lrtruclientweb_master_prefs.js under 2 locations

Step 2:. <install>/dat

Step 3: %AppData%\Roaming\Hewlett-Packard\LoadRunner\TruClientWeb

 “TruClient”: {

 …

        “MaxAllowedActions”: {

            “value”: 10———> change to any number

       },

After completing all the cases, the manage action can create more than 10 custom action sections (as specified in the Value)

Is there a way to remove the license key?

Do you want to remove the license key in LoadRunner professional 2020?

Here are the following steps to remove a LoadRunner license.

Step 1: Go to “programdata” folder (you can press the keys win + R this will open the “RUN window” to write on it “%programdata%”, click on “OK”)

Step 2: Focus > LoadRunner > data. There you are going to find the “LRKey.txt” file.

Step 3: Open the file: LRKey.txt in a Notepad++.

Step 4: After that, please check if any LoadRunner processes including the Controller (Wlrun.exe), VuGen (VuGen.exe), Analysis (AnalysisUI.exe) or the LoadRunner Agent Process/Service are running, please stop them.

Step 5: Next, please add LRkey.txt to a zip file for backing up

Step 6: Then go to “LRKey.txt” –> right click –> edit. You will see licenses in XML format.

Step 7: To delete the license, look for the xml block that has the license name.

Step 8: After removing the license, save the “LRKey.txt” file and close it.

Following all these steps will remove your license key.

Hotfix for Vugen integration issues with LoadRunner Enterprise 2020SP2

Are you facing issues in the hotfixed? Here are some of the issues and consequences in hotfix.

1.When copying the server address from the browser, the user might copy “Loadtest” or “admin” or “LRE” and then he will not be able to connect.

2.When the user connects to a URL server without using “http” or “https” prefix, he will connect but will not be able to perform “save” on scripts opened from LoadRunner Enterprise.

3.The hint label was added to LoadRunner Enterprise management dialog to explain the URL address the user needs to input in the server address text box

4.Missing file for DevWeb scripts when uploading as run-time files.

5.In Test Lab, when there are several folders under different paths with the same name, the folder tree might not expand correctly.

6. Vugen connection with LRE is not alive for longer duration. For example: If a user wants to open a script from LRE and make changes in the script, but after the script opens successfully, the connection gets disconnected and not saved in the LRE server.

7.If USER wants to open a second script from the same project, then the USER needs to re-authenticate again with the username, password and then select the project.

Here are some of the solutions for the above given issues.

1.In the hotfix and extract LRE_SP2_VuGen_Fix.zip .

2.Then backup the original “VuGenToolkit.exe” located in: %vugen_path%\bin\VuGenToolKit

3.Backup the original “lre-uploader” folder located in: %vugen_path%\bin

4.Backup the original “DevWeb.lrp” located in: %vugen_path%\dat\protocols

5.Copy VuGenToolkit.exe from Step 1 to: %vugen_path%\bin\VuGenToolKit\VuGenToolkit.exe

6.Copy lre-uploader folder from Step 1 to: %vugen_path%\bin\lre-uploader

7.Copy DevWeb.lrp from Step 1 to: %vugen_path%\dat\protocols\DevWeb.lrp

Error: “Couldn’t initialize the Detection library” when running Teradici PCoIP Vusers

Errors are confronted while running Teradici PCoIP Vusers.This is generated by a controller on a remote Load Generator which has OneLG installed. Users fail with error: ‘Couldn’t initialize the Detection library’.

These errors can be minimised by using the following steps.

Step 1:Go to the Hotfix and extract its contents to find pcoip_replay.dll

Step 2: Go to <OneLG LoadGenerator Installation folder>\bin and take a backup of the original pcoip_replay.dll

Step 3: Replace with the one downloaded from Step 1

PS: The issue will be officially fixed in LRP and LRE version 2020 SP3

Generating VuGenToolKit Debug logs

Do you want to generate VuGenToolKit Debug logs? We will help you to enable it.

Follow the below written steps to enable debug logs for VuGenToolKit

Step 1: Close all VuGen instances running

Step 2. Navigate to %LR_PATH%\bin\VuGenToolKit folder

Step 3: Edit VuGenToolkit_Config.json with a text editor

Step 4: Change the log level value from Error to Debug.

Step 5: Save and restart VuGen.

After this, VuGen creates debug logs at %temp%\VuGenToolkitLog.txt

After reproducing the problem, please revert back to the above changes.

7. LoadRunner – Tips and Tricks – May 2021

1. Error when embedding HTTP headers inside SOAP header

We are getting a replay error while trying to add an HTTP header to a SOAP header inside a web_service_call(). Because this addition is not recommended. Error is InvokeMethod failure: Unable to cast object of type ‘System.Xml.XmlText’ to type ‘System.Xml.XmlElement’.

The problematic code looks something like this:

 web_service_call( "StepName=GetMyView",
         "SOAPMethod=MyMethod|BindingLink|GetMyView",
         "SOAPHeader=<SoapHeader>"
             web_add_header( "<Content-Type", "text/xml; charset="utf-8">);
             web_add_header("SoapAction","MyServices.Services.SomeLink.GetMyView");
             web_add_header("EndPointAddress","someserver nowhere net > Some Link > Final Link.svc > wsHttp");
             web_add_header("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727");
         </SoapHeader>",
     ...
     ... code omitted for clarity
     ...
  BEGIN_ARGUMENTS,
     ...
     ... code omitted for clarity
     ...
  END_ARGUMENTS,
  BEGIN_RESULT,
  END_RESULT,
  LAST);

Solution

You just need remove the web_add_header() code from the SOAP header in the web_service_calI(), moving them to just prior to the web_service_calI():

web_add_header("Content-Type","text/xml; charset="utf-8");
web_add_header("SoapAction","MyServices.Services.SomeLink.GetMyView");
web_add_header("EndPointAddress","some server nowhere.net > Some Link > Final Link.svc > wsHttp");
web_add_header("User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NETCLR 1.1.4322; .NET CLR 2.0.50727");
web_service_call(); // after removing HTTP headers from SOAP header.

2. VuGen Script with custom header file in gloabls.h fails to execute in the Performance Center, however, replays fine in VuGen

Vugen scripts work fine in vugen but show error messages while trying to execute in the Performance Center (PC). It shows invalid path or unable to locate that file. Handling Scripts in PC which are using custom header files in globals.h are like

#include “lrun.h”

#include “web_api.h”

#include \files-libpccommon.h

The problem occurs because PCs usually run the magent as a service and by default services can’t see UNC paths or remote disk drives.  If you run the magent as a process, then you should not have this problem.

Solution 1:

One way of getting around this problem without running magent as a process is to remember the username and password credentials for the remote machine by following the steps mentioned below:

This message describes how to make the process of accessing network resources in “MERCURYGLOBAL” (or any other) domain as simple as it can be. You can build the “Stored User Names and Passwords” mapping Server à Credentials To Use, which automates the process of logging in to the Server. It, actually, replaces my “ReconnectOnStartup” application and hides from you the log-in process.

To enable changing the “Stored User Names and Passwords” mapping (if you can’t) you should do the following steps:

Step 1: Open regedit

Step 2: Navigate to [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsa]

Step 3: Change the “disabledomaincreds” argument value to 0.

Step 4: Restart Windows for the changes to take effect.

(taken from win help online.com > articles > 110 > 1 > Stored User Names and Passwords dialog is empty.html)

Now you can add entries to the “Stored User Names and Passwords” mapping. Click Start, click Run, type rundll32.exe keymgr.dll,KRShowKeyMgr, and then press ENTER (Alternatively, StartàControl PanelàUser AccountsàAdvanced tabàManage Passwords). The “Stored User Names and Passwords” dialog pops up and you can add any pair (server, credentials) you wish to couple. This process is performed only once and the saved mapping will survive the following log-offs or restarts.

Now you can use the Explorer’s “Map Network Drive” regularly to map any folder on the network servers to be referenced as your local drive. This also may, possibly resolve the problem of installing the new Norton Security Guard that is not working well with HP Credentials Manager.

Solution 2:

Use IUSR_METRO or a domain account with full permissions over the network drive to run the magentservice.exe on Load Generators. To change account from the default SYSTEM: Go to Control panel-> Administrative tools->Services and locate the magentservice.exe, double click on it, and in the “log on” tab, place the account with full permissions.

3. Compilation error when including in vuser script a header or parameter file that resides on UNC path

Error pops up when a vuser script references files that are stored on a UNC path. FOR EXAMPLE: a header (.h) or parameter (.dat) file. The script runs fine in Vugen or on the controller as Localhost. But it fails when run remotely on a different host load generator. CCI compilation error – In file included from c:\documents and settings\networkservice\Local Settings\Temp\brr_fse.978\global_dir\123456789\XYZZarch.c:3 Table ‘<UNC filepath> cannot be opened. Error code is ‘-2’. The problem occurs when the Load Generator Agent is running as a service ( magentservice.exe ).

By default services do not have access to UNC paths ( or remote disk drives). 

Solution

Option A: Run the Load Generator Agent as a process (magentproc.exe). .

Option B: Modify the privileges of a service on the Load Generator machine.

 In order to run the Load Generator Agent as a service and allow it to access a UNC path, it is necessary to configure the service with appropriate credentials to access the remote machine/location in the UNC path.

 Follow the below written steps:

1st:   – Allow services to access network (UNC) paths

 Step 1: Open regedit

Step 2: Navigate to [HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Lsa]

Step 3: Change the “disabledomaincreds” argument value to 0.

Step 4: Restart Windows for the change to take effect.

Step 5: Change Test if load test is working. If not, move on to 2nd st

          (taken from win help online.com > articles > 110 > 1 > Stored User Names and Passwords dialog is empty html)

2nd – a.) Configure the userid of this service to use the necessary id and password  to access the UNC path 

                b.) Map a user name/password with a server and credentials:

               1. Click Start-> Run.

               2. Type rundll32.exe keymgr.dll, KRShowKeyMgr”, and then press ENTER (Alternatively, Start->Settings->Control Panel->User Accounts:: Advanced tab:: Manage Passwords ).

               3. The “Stored User Names and Passwords” dialog pops up and its possible to add any pair of server and credentials.

                     – This process is performed only once and the saved mapping will survive the following log-offs or restarts.

– Now it’s possible to use the Explorer’s “Map Network Drive” regularly to map any folder on the network servers to be referenced as your local drive.

 

4. Testing Web Services With a Standard Web Vuser

Is it possible to test a web service with a regular web(http/html) user?

Solution

Yes, it is possible to test  web services using the standard Web (HTTP/HTML) virtual user type instead of the Web Services vuser type. The main disadvantage of this is that it is not possible to generate a SOAP body from the WSDL file using the VuGen wizard. But if the user knows how the XML request should look like, then it is possible.

You can follow the below written steps:

Step 1:Send SOAP payload using lr_custom_request().

Step 2: Add a SOAPAction HTTP header using web_add_header().

Step 3: Remove unnecessary HTTP headers (that are generated automatically by VuGen) with web_remove_auto_header().

Step 4: Verify that to be getting a valid response. Use web_reg_find() for a simple check. For better verification of the SOAP response use lr_xml_find().

To extract values from the response body, use lr_xml_get_values(). Brush up on XPath queries beforehand though.

It may be necessary to HTML-encode some characters in your XML/SOAP message (e.g. convert “&” to “&amp;”). Unfortunately, VuGen does not provide this functionality, so the coder writer will have to either write (or find) a function to do it, or convert all the entries in the data table before running the script.

As an example, here is a simple script that makes use of a web service that will look up the source of a Shakespeare quote for you. The WSDL is available from xmlme.com > WSShakespeare.asmx?wsdl.

Action()
{
  // ContentCheck Rules for known error messages
  web_global_verification("Text=Speech not found", "ID=SpeechNotFound", LAST);
  lr_start_transaction ("Search For Shakespeare Quote");
  // By default, VuGen sends a user-agent header.
  // Let's remove this as an example of removing automatically generated headers.
  web_remove_auto_header("User-Agent", "ImplicitGen=No", LAST);
  // Add a SOAPAction HTTP header
  web_add_header("SOAPAction", "http://xmlme.com/WebServices/GetSpeech");
  // Save the entire body from the HTTP response for later checking with lr_xml_find.
  web_reg_save_param("ResponseBody",
"LB=",
"RB=",
"Search=Body",
"IgnoreRedirections=Yes",
    LAST);
  // Note that the text to search for would normally be replaced with a parameter,
  // and so would the <Request> element of the below SOAP message.
  web_reg_find("Text=TWELFTH NIGHT", LAST);
  web_custom_request("Search Shakespeare",
"URL=http://www.xmlme.com/WSShakespeare.asmx",
"Method=POST",
"Resource=0",
"Referrer=",
"Snapshot=t1.inf",
"Mode=URL",
"EncType=text/xml; charset=utf-8",
"Body=" // As it is SOAP, you are unlikely to have to use BodyBinary, unless your request has CDATA.
"<?xml version=\"1.0\" encoding=\"utf-8\"?>"
"<soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:wsa=\"http://schemas.xmlsoap.org/ws/2004/03/addressing\" xmlns:wsse=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd\" xmlns:wsu=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd\">"
"<soap:Body>"
"<GetSpeech xmlns=\"http://xmlme.com/WebServices\">"
"<Request>Be not afraid of greatness</Request>"
"</GetSpeech>"
"</soap:Body>"
"</soap:Envelope>",
    LAST);
  // The response from the web service looks like this:
  /*
  <?xml version="1.0" encoding="utf-8"?>
  <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
   <GetSpeechResponse xmlns="http://xmlme.com/WebServices">
     <GetSpeechResult>
       &lt;SPEECH&gt;
          &lt;PLAY&gt;TWELFTH NIGHT&lt;/PLAY&gt;
          &lt;SPEAKER&gt;MALVOLIO&lt;/SPEAKER&gt;
       'Be not afraid of greatness:' 'twas well writ.&lt;/SPEECH&gt;
     </GetSpeechResult>
   </GetSpeechResponse>
</soap:Body>
  </soap:Envelope>
  */
  // An example of extracting a value from a SOAP reponse.
  // This saves the <GetSpeechResult> element into {OutputParameter}.
  // The same syntax could be used with lr_xml_find to check the response.
  lr_xml_extract("XML={ResponseBody}",
    "XMLFragmentParam=OutputParameter",
    "Query=/soap:Envelope/soap:Body/GetSpeechResponse/GetSpeechResult", LAST);
  lr_output_message("Source of Shakespeare quote: %s", lr_eval_string("{OutputParameter}"));
  lr_end_transaction ("Search For Shakespeare Quote", LR_AUTO);
  return 0;
}

 

5. Error “No such interface supported” is received on perfmon

While trying to connect the monitor using a non admin account it fails to connect, using perform it returns the error “No such interface supported. The error is caused due to a lack of permissions.

Solution

You just need to follow the below written command. Resetting permissions with secedit, execute on command prompt the following command

secedit /configure /cfg %windir%\repair\secsetup.inf /db secsetup.sdb /verbose

Perfmon counters are now accessible remotely.For additional detail check the below given link:

technet.microsoft.com > en us > library > cc771692(v=ws.10).aspx#BKMK_Scen2

 

6. PC 11.5x – Run test failed. Reason: Failed to launch Controller

Performance Center (PC) 11.5x fails to start a loadtest and the Initializing Run page displays “Run test failed. Reason: Failed to launch Controller”.

The Messages: window reports:

Run test failed: Reason: Failed to launch Controller.

Checking System Health may also report this error on the problematic Host:

Check connectivity between the Controller and Load Generators

The problem is reported after the Host has been added successfully to Lab Management. The Host cannot be used in a load test. Also, in this case the PC Host Controller process wlrun.exe crashes as soon as it is started.

The cause can be a registration failure of certain PC Host DLLs during the Host installation. To verify that this is the case:

  1. Log in to the problematic PC Host using RDP.
  2. Go to Start >Run type wlrun.exe and click OK.
  3. The HP LoadRunner Controller should start. Select OK on the New Scenario dialogue.
  4. If the LoadRunner Controller crashes at this point then go to the Workaround/Fix information.

Solution

To correct the registration failure try the following steps on the problematic PC Host. Note the steps assume the default installation path has been used on the Windows 2008 R2 64 bit machine.

Step 1: Go to Start > Run and type cmd to open the command window.

Step 2: In the command window cd to %windir%\Microsoft.NET\Framework\v2.0.50727

Step 3: Enter the following command:

RegAsm.exe /codebase “C:\Program Files (x86)\HP\Performance Center Host\bin\SLAConfig.dll”

Step 4: cd to %windir%\Microsoft.NET\Framework\v4.0.30319

Step 5: Enter the following commands:

RegAsm.exe /codebase "C:\Program Files (x86)\HP\Performance Center Host\bin\HP.SEV.UI.Component.dll"
RegAsm.exe /codebase "C:\Program Files (x86)\HP\Performance Center Host\bin\HPSEVFacade.dll"

7. How-to use web_Custom_request for xml calls with Web HTTP/HTML instead of Web Service

Do you want to use the web_service_call function with Web Service Protocol?. In this article we will give you the syntax for using web_custom_request with Web HTTP/HTML protocol instead of web_service_call function with Web Service Protocol. This script deals with the web services calls embedded in XML.

How-to create a script using http/html protocol?

How to use Web_Custom_Request to create this script with Web HTTP/HTML prtoocol instead of web_service_calls with Web Service Protocol.

Solution

The web_custom_request format will be

web_custom_request("{Request Name}",
"URL={URL}",
"Method=POST",
"Resource=0",
"Referer=",
"Snapshot=t1.inf",
"Mode=URL",
"EncType=text/xml; charset=utf-8",
"Body="
"{SOAPEnvelope XML}",
LAST);

The original XML will have double quotes, so you need to use escape characters. After that you’ll have to prefix & suffix each line of the XML with double quotes.

Example:

*Orignal XML from SoapUI*

soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ws="http://ws.ext.tally.arbitron.com/">
<soapenv:Header/>
<soapenv:Body>
<ws:getVersion/>
</soapenv:Body>
</soapenv:Envelope>

*Needs to be modified as*

"<soapenv:Envelope xmlns:soapenv=\\"
http://schemas.xmlsoap.org/soap/envelope/\\" xmlns:ws=\\"
http://ws.ext.tally.arbitron.com/\">"
" <soapenv:Header/>"
" <soapenv:Body>"
" <ws:getVersion/>"
" </soapenv:Body>"
"</soapenv:Envelope>"

 

8. LoadRunner Support for Sybase Unwired Platform (SUP)

We need to know if LoadRunner has support for Sybase Unwired Platform (SUP).

Solution

SAP had released a document on Load Testing for SUP found here:

sdn sap com > irj > scn > go > portal >prtroot > docs > library > uuid > c03d916b-945f-2f10-ab9c-af72a97fc0f7?overridelayout=true

It states:

Load Runner is licensed through SAP for testing ABAP based systems and Web (HTML) interfaces.

Currently there are only two methods for testing SUP with LoadRunner:

1. Custom C# program that consumes the MBO objects as described in the App Centric approach described above. This requires a .Net license for LoadRunner that is not part of the licensing agreement sold by SAP. SAP is working with HP to develop a licensing agreement for testing SUP.

2. Citrix client: this does not work for every app type but for MS Windows based apps Citrix can be used to record and parameterize the user interface of the app and replay the virtualized app for each test instance. This method works but requires a lot of hardware to simulate more than 100 client devices . The use of LoadRunner with the Citrix client is part of the SAP license.

Sybase have recently released SUP 2.2., which contains LoadRunner integration.

You can read the press release here: scn sap.com > community > mobile > blog > 2012 > 11 > 16 > sup 22 is released with new features.

However, this solution was developed and released without a collaboration with HP, so all the questions regarding it should be directed to Sybase.

9. Getting error when adding Performance Center Server to Lab Management

Users are getting errors while trying to add Performance Center Server to Lab Management. Here is the error: com.mercury.td.pcextension.labservice.comm.ILabSer​viceSetSererPCServiceExceptionDataFaultFaultMessag​e: Not authorized to reconfigure server. Check the LAB_PC_SETTINGS table in DEFAULT_LAB_PROJECT_DB and edit the value of internal URL and/or external URL if they are not correct.

Solution

Check the value of internal and external URL by the following:

1. SQL Server:  Go to DEFAULT_LAB_PROJECT_DB and from there choose the TD.LAB_PC_SETTINGS table. 

Issue a SELECT SQL Statement to look at the values in the table LAB_PC_SETTINGS.  If the internal and/or external URL is/are not correct, then

edit the value of PC_SET_VALUE which is the value of the internal URL and/or  external URL..

2. Oracle database: If you are accessing the oracle database using system or sys account,  issue a

 SELECT SQL Statement to look at the values in the table LAB_PC_SETTINGS.  If the internal and/or external URL is/are not correct, then

 issue the SQL UPDATE  command to edit the value of internal and/or external URL 

For example  in the screenshot issue the SQL statement to edit the value of the internal URL :

UPDATE DEFAULT_LAB_PROJECT_DB.LAB_PC_SETTINGS
SET  PC_SET_VALUE= 'http://<QC_Server>:8080/qcbin'
WHERE   PC_SET_ID=1005;
=========================

 

10. Web_service_call is failing during replay with “Value cannot be null” error in Vugen

There’s an error in the Vugen web service. It is unable to replay. Hence download and apply the hotfix given in the article. Then replay the vugen script and check if it works.

Web_service_call is failing with the following error during replay —

Action.c(6): t=4566ms: Request done "https://<URL>:<port> "  [MsgId: MMSG-26000]
Action.c(6): Error Exceptions:
Action.c(6): System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ArgumentNullException: Value cannot be null.
Parameter name: soapContext
   at Microsoft.Web.Services2.InputStream..ctor(Stream baseStream, String contentType, Pipeline pipeline)
   at Microsoft.Web.Services2.SoapWebResponse.GetResponseStream()
   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
   at Mercury.LR.NETProxy.OrganizationEntitlementService.HasAccounts(HasAccounts_Type hasAccounts1)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
   at System.RuntimeMethodHandle.InvokeMethodFast(Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
   at Mercury.LR.LrWsNetClient.ProxyCreator.InvokeMethod(String sMethod, IWSMethodParameters mParams, String sAsyncEvent)
   at Mercury.LR.LrWsNetClient.NetReplay.InvokeMethod(String sMethod, IWSMethodParameters mParams, String sAsyncEvent)
Action.c(6): Error: InvokeMethod failure: Value cannot be null.
Parameter name: soapContext.
Action.c(6): Error stack trace: at Mercury.LR.LrWsNetClient.ResultArgExtractor.CreateXmlArgsDoc()
   at Mercury.LR.LrWsNetClient.ResultArgExtractor.ExtractArgAsXml(String sArgPath, ArgumentExtractionType extractionType)
   at Mercury.LR.LrWsNetClient.ResultArgExtractor.ExtractArg(String sArgPath, Boolean IsSaveResultArgumentsAsIs, ArgumentExtractionType extractionType)
   at Mercury.LR.LrWsNetClient.ProxyCreator.ExtractArg(String sArgPath, ArgumentExtractionType extractionType)
   at Mercury.LR.LrWsNetClient.NetReplay.ExtractResultArg(String sArgPath, ArgumentExtractionType extractionType, Array& barrArgValue)
Action.c(6): Error: ExtractResultArg failure: Object reference not set to an instance of an object..
Action.c(6): Error: Web service call "HasAccounts_101" execution failed  ...

Solution

Go through the below written steps to get rid of the error.

Step 1: Please download the fix “LrWsNetProxyBasefix.zip”

Step 2: Unzip this file and there is a dll there called “LrWsNetProxyBase.dll”

Step 3: Go to the <LoadRunner>\bin folder and there will already be a file called “LrWsNetProxyBase.dll” there.   Rename it as “LrWsNetProxyBase_orig.dll”

Step 4: Copy the downloaded dll into <LoadRunner>\bin.

Step 5: Replay the Vugen script with extended logging and all 3 options under it enabled.   Check if the replay works now.

Exit mobile version