VuGen provides the facility to use multi threading. This helps us to generate more virtual users on load generators. If we set Vuser to run as a process, the same driver program is loaded into memory for each Vuser on load generator, thus taking up a large amount of memory. This limits the number of Vusers that can be run on a single load generator. If we set Vuser to run as a thread, then one instance of the driver program is loaded into the memory and will be used by multiple vusers depending upon the vuser type. Each thread shares the memory of the parent driver program, thus enabling more Vusers to be run per generator.
Tuesday, February 9, 2016
Advantage of running Vuser as thread during Load test in Loadrunner
Monday, February 8, 2016
What is correlation? Explain types of Correlation.
Correlation is a process to capture dynamic values and pass
them at appropriate places in the script on run time.
E.g. There are situations when a request is based on a response
of previous request received from the server, such as, a Session ID, server
date/time which is fetched from server. Depending upon the configuration of the
servers, these values changes (it might change every time you run the
application, after certain time, hour, day etc.). Obviously, if the execution
of script depends upon a value returned by server, it means we need to find a way
where we can “catch” the server response and replace those values in the
requests where it is required. This whole process is called Correlation in
Loadrunner.
In simple words, the solution by using Correlation is:
1. Capture response of previous step
2. Use captured value of step 1 to serve as input to all
subsequent steps
Loadrunner provides 2 ways for doing correlation.
1. Automatic Correlation
Loadrunner has provided a
mechanism by which we it will automatically capture the dynamic values.
Below are the steps for Automatic
correlation
a.
Rules Scan
b.
Automatically correlate values found – If you
check this option then vugen will not ask for correlation, it will
automatically correlate the dynamic values for the defined rules.
c.
Record Scan
d.
Replay Scan
IV.
Click on Rules (Correlation à Rules)
In this window you can choose the application you are recording. Loadrunner has provided some predefined rules for various applications.
You can create new rules for your
application if you know left and right boundaries. We will take this topic in
my next article.
V. Click Ok. If you have already recorded the
application then click on regenerate the script. It will replace all the
dynamic values which are identified by defined rules.
Note. We can do the same process
of automatic correlation before recording the script, then we don’t need to
regenerate the script.
2. Manual Correlation
In this we directly identify the
dynamic value and write code in the script
Below are the steps for doing
manual correlation:
I.
Find the dynamic value which is required to correlate.
II.
Find unique left and right boundaries of where
dynamic value is coming from the server.
III.
If unique left and right boundaries can’t be
found then find for which occurrence of left and right boundary this dynamic
value is coming.
IV.
Add a web_reg_save_param function to the script,
above the request whose response contains that dynamic value.
V.
Add a parameter name, left boundary, right
boundary, and occurrence to the function
VI.
Replace the dynamic value with this parameter in
the script every time it occurs.
Labels:
automatic,
boundaries,
correlation,
dynamic,
id,
left,
loadrunner,
manual,
performance,
recording,
regenerate,
request,
response,
right,
rule,
session,
value,
vugen
Types of Goal Oriented Scenario in Loadrunner
Loadrunner offer five different types of goals in Goal-Oriented Scenario. These are:
- The number of concurrent Vusers
- The number of hits per second
- The number of transactions per second
- The number of pages per minute
- The transaction response time
Labels:
goal,
Goal-Oriented,
hits,
loadrunner,
oriented,
pages,
response,
scenario,
time,
tps,
transaction,
transactions,
Vusers
Components of HP Loadrunner?
There are 4 components of LoadRunner:
1. VUGen (Virtual User Generator)- This component helps us to automate the business scenarios which can emulate virtual uers during the performance test.
2. Controller – Administrative center for creating, maintaining and executing load test scenarios. Assigns scenarios to Vusers and load generators, starts and stops loading tests.
3. Load Generator/Agent – An agent through which we can generate load
4. Analysis – Provides graphs and reports that summarize the system performance.
5.Agent process - It manages connection between Controller and Load Generator instances.
Out of these 4 components only Controller requires license rest all are free.
1. VUGen (Virtual User Generator)- This component helps us to automate the business scenarios which can emulate virtual uers during the performance test.
2. Controller – Administrative center for creating, maintaining and executing load test scenarios. Assigns scenarios to Vusers and load generators, starts and stops loading tests.
3. Load Generator/Agent – An agent through which we can generate load
4. Analysis – Provides graphs and reports that summarize the system performance.
5.Agent process - It manages connection between Controller and Load Generator instances.
Out of these 4 components only Controller requires license rest all are free.
Friday, February 5, 2016
Phases of performance testing life cycle?
Planning:
This is the first phase of life cycle. During this phase team will gather performance testing requirements with the help of Business Analysts and Application Architects. After Requirement gathering team will prepare performance test plan and get is approved with BA's and architects of the application. Output of this phase is performance test plan which will consist of all the details of business process which we need to include in performance test and what all performance test we need to execute.
Design:
During this phase performance testing team will create performance test scripts using performance testing tools i.e. HP Loadrunner, Jmeter etc of the business scenarios finalized during planning phase.Output of this phase is the automated performance test scripts of the business process.
Execution:
During this phase we conduct various types of tests like Average load test, Peak load test, Stress test, Soak test, Endurance test. Output of this phase is the performance test results of all the performance test conducted in this phase.
Analyse Results:
During this phase we capture results of all the performance test executions and create graphs based on those results. After studying those graphs we try to identify if there are any issues related to transaction response time, server utilization etc. Output of this phase is transaction response time details and various utilization graphs.
Tuning:
During this phase we try to identify root cause of performance bottlenecks and resolve them. We need to use applicaiton monitoring tools for understaing how application servers perform under load. Output of this phase is improved performance of the application
This is the first phase of life cycle. During this phase team will gather performance testing requirements with the help of Business Analysts and Application Architects. After Requirement gathering team will prepare performance test plan and get is approved with BA's and architects of the application. Output of this phase is performance test plan which will consist of all the details of business process which we need to include in performance test and what all performance test we need to execute.
Design:
During this phase performance testing team will create performance test scripts using performance testing tools i.e. HP Loadrunner, Jmeter etc of the business scenarios finalized during planning phase.Output of this phase is the automated performance test scripts of the business process.
Execution:
During this phase we conduct various types of tests like Average load test, Peak load test, Stress test, Soak test, Endurance test. Output of this phase is the performance test results of all the performance test conducted in this phase.
Analyse Results:
During this phase we capture results of all the performance test executions and create graphs based on those results. After studying those graphs we try to identify if there are any issues related to transaction response time, server utilization etc. Output of this phase is transaction response time details and various utilization graphs.
Tuning:
During this phase we try to identify root cause of performance bottlenecks and resolve them. We need to use applicaiton monitoring tools for understaing how application servers perform under load. Output of this phase is improved performance of the application
How to identify the performance bottlenecks situations?
We need to configure performance monitoring tools on all the servers under test(Application, Web, Database servers). These tools will help us to see how servers are behaving against load and stress conditions. These monitors can help to us to determine the condition which causes increased response time of the application. The measurements of performance of the application are based on response time, throughput, hits per sec, network delay graphs, etc
Mostly used tool for conducting performance test is HP Loadrunner. This tool can collate with various monitoring tools which helps to relate the performance test results with the monitoring tool graphs and this in turn help us to identify performance bottlenecks.
Mostly used tool for conducting performance test is HP Loadrunner. This tool can collate with various monitoring tools which helps to relate the performance test results with the monitoring tool graphs and this in turn help us to identify performance bottlenecks.
Labels:
apm,
bottleneck,
identify,
loadrunner,
monitoring,
performance,
tool
Difference between Performance Testing and Performance Engineering
Performance testing means testing the performance of the application with a pre-defined user load. This involves requirement gathering, scripting, execution, result sharing and report generation.
Performance Engineering is the next step once performance testing is complete. During this we analyse performance test results and try to correlate them with different server utilization graphs in order to find performance bottlenecks and the solution is provided to resolve the identified issues.
Performance Engineering is the next step once performance testing is complete. During this we analyse performance test results and try to correlate them with different server utilization graphs in order to find performance bottlenecks and the solution is provided to resolve the identified issues.
Subscribe to:
Comments (Atom)