I have written before about using the LDAP protocol using LoadRunner. This time, I had a requirement to reset the passwords for all my test users before an execution. Luckily for me, there was already some shell scripts setup that utilised ldapmodify, so it was just a matter of converting them over to LoadRunner scripts.
Continue Reading…
Posts Tagged ‘Tutorial’
Using mldap_modify & mldap_delete functions in LoadRunner
Performance Testing SOAP with LoadRunner – Basics
Web services are more commonly becoming the targets of Performance tests. This post aims to provide an introduction to testing SOAP with LoadRunner without using the Web Services VUser type. Why not use the Web Services Vuser? Errors like this
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Xml.XmlException: 'xsi' is an undeclared namespace.
Using the custom web request (as suggested by Wilson Mar, Stuart Moncrieff and many others) bypasses the XML validation steps of LoadRunner, which is a good thing. This is possible because SOAP is just XML over HTTP, so lets take a look.
Continue Reading…
Timing HTTP Redirects in LoadRunner
One of the most commonly misscripted elements in performance testing is web authentication. I’m not talking about integrated authentication like SPNEGO, I’m talking about a simple HTTP POST with authentication details followed by the sites authenticated home page. The problem is that the user experiences a two step process.
In reality the process is actually 3 steps, with the middle step is transparent to the user. Because it is transparent, tools like LoadRunner will attempt to represent the end-user experience and record only two steps. In most cases, this is the desired end-result. The following diagram shows the three steps that occur.
The issue with recording Logon like this, is that it does not allow you to separate the authentication time from the loading time of the subsequent page. Its a simple process to separate the timing of the authentication and the subsequent page load, and the following code snippet shows you how to do it in LoadRunner.
Action() {
lr_start_transaction("Open_Logon_Page");
// Validate Logon Page
web_reg_find("Text=Lost your password?", LAST);
// Open Logon Page
web_url("logon_page",
"URL=http://www.headwired.com/login.php",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);
lr_end_transaction("Open_Logon_Page", LR_AUTO);
// Disable HTTP Redirects to time Authentication
web_set_option("MaxRedirectionDepth", "0", LAST);
lr_start_transaction("Logon");
lr_start_sub_transaction("Authenticate", "Logon");
// Find Authenticated URL
web_reg_save_param("redirect_url", "LB/ic=Location: ", "RB=\r\n", "Search=Headers", LAST);
// Submit Authentication
web_submit_data("web_submit_data",
"Action=http://www.headwired.com/login.php",
"Method=POST",
"TargetFrame=",
"Referer=",
ITEMDATA,
"Name=log", "Value={USERNAME}", ENDITEM,
"Name=pwd", "Value={PASSWORD}", ENDITEM,
"Name=redirect_to", "Value=http://www.headwired.com/dashboard/", ENDITEM,
"Name=testcookie", "Value=1", ENDITEM,
"Name=wp-submit", "Value=Log In", ENDITEM,
LAST);
lr_end_sub_transaction("Authenticate", LR_AUTO);
// Enable HTTP Redirects to time Authentication
web_set_option("MaxRedirectionDepth", "10", LAST);
lr_start_sub_transaction("Authenticated_Page", "Logon");
// Verify Authenticated Page
web_reg_find("Text=Dashboard", LAST);
web_url("authenticated_page",
"URL={redirect_url}",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);
lr_end_sub_transaction("Authenticated_Page", LR_AUTO);
lr_end_transaction("Logon", LR_AUTO);
return 0;
}
Getting to know your tools: Firebug
I have always enjoyed introducing people to tools that I find really helpful, and one such tool is Firebug. While this Firefox plug-in has many great features, the one that interests me the most is the Net Panel. This tutorial is targeted towards a performance tester. This simple scenario aims show you how Firebug can not only give you a better understanding of the application under test, it can also help you write better scripts.
Continue Reading…
Performance Testing Oracle via JDBC with LoadRunner – Basics
This post discusses a method for testing Oracle via a JDBC connection, to simulate application interaction with the database. It is designed as an introduction to get you started, where you take it from there is up to you.