SlideShare une entreprise Scribd logo
1  sur  48
Performance Testing
Jmeter
The load testing tool
Performance testing is an non-functional testing performed to determine how a
system performs in terms of responsiveness and stability under a particular workload. It
can also serve to investigate, measure, validate or verify other quality attributes of the
system, such as scalability, reliability and resource usage
GOAL/OBJECTIVE IS TO FIND THE BOTTLE NECK IN THE SYSTEM
Load/Capacity Testing
Stress Testing Volume Testing
Endurance/Soak Testing Spike
Testing
Load testing is the simplest form of performance testing. A load test is usually conducted to
understand the behavior of the system under a specific expected load. This load can be the
expected concurrent number of users on the application performing a specific number of
transactions within the set duration. This test will give out the response times of all the
important business critical transactions. If the database, application server, etc. are also
monitored, then this simple test can itself point towards any bottlenecks in the application
software
A bottleneck is a phenomenon where the performance or capacity of an entire system
is limited by a single or limited number of components or resources.
Your web application can consist of several modules used to process request. If one
of them has technical limitation, it limits the performance of the whole system
Bottleneck in the application can be identified by performing the load test with the
defined concurrent user load for various scenarios.
Every system has a capacity limit. When the load goes beyond the limit, the web site starts
responding very slowly and even produce errors.
The purpose of the stress testing is to find the capacity limit of the system. In we can verify at
which point of time the system degrades or fails. Usually done by increasing the user load in
the system.
Volume testing is done against the efficiency of the application. Huge amount of data is
processed through the application (which is being tested) in order to check the extreme
limitations of the system.
The limitation will be concluded upon the slow in the system performance and the failure in the
application.
This type of testing is used to check that the system can withstand the load for a long or large
number of transaction.
Test will be performed with defined set of concurrent users for a prolonged period of time, say
for example 5 to 10 hours or 2 to 3 days.
Spike testing is done by suddenly increasing the number of load generated by, users by a very
large amount and observing the behavior of the system. The goal is to determine the
performance degrade, system failure or it will be able to handle dramatic changes in load.
Say for example, test will be initiated with 200 concurrent user for a certain period of time,
suddenly the concurred user load will be increased to 1000 and the system performance will
be monitored. Like wise the user load will be decreased to 200 concurrent users and verify the
system returns to normal operation and retaining the performance as initiated.
✕ NFR document should be available – It will provide you the expected Response time and required
Concurrent user load, Scenarios to be tested and other performance attributes.
✕ Dedicated Performance test environment should be ready in place.
✕ Scalability on the test environment to the actual production environment should be available.
✕ Gather the environment details like App, Web and DB servers configurations and their capacity.
✕ Performance Test approach document should be ready and sing-off from the stake holders.
o Load Runner, commercial load testing tool from HP
o JMeter, an open source tool from Appache
o RPT, commercial load test tool from IBM
o NeoLoad, commercial, for Windows, Linux, Solaris
o Microsoft Visual Studio Team System 2010, commercial, for Windows, which includes Load
Test Analyzer and Load Test Monitor tools.
o OpenLoad, commercial load testing tool and hosted service
o OpenSTA, an open source tool
o PureLoad, commercial, multiplatform load testing tool
o PushToTest TestMaker, an open source testing framework (load testing and more)
o QEngine, free and commercial, from AdventNet (free edition supports 5 virtual users)
o SQLQueryStress Performance Testing Tool, free, for testing SQL Server StressIT, commercial
and free
o The Grinder, an open source tool
o Flood, open source from and for Apache
o WAPT, Web Application Testing tool, a commercial product, for Windows
o WatchMouse, commercial hosted load testing service
o WebKing, commercial, multiplatform
o WebServer Stress Tool, commercial and free, from Paessler
• It is an Open source tool.
• Can load and performance test many different server types:
● Web - HTTP, HTTPS
● SOAP
● Database via JDBC
● LDAP
● JMS
● Mail - POP3(S) and IMAP(S)
• User friendly GUI Design compare to other tools.
• Full multithreading framework allows concurrent sampling by many threads and simultaneous
sampling of different functions by separate thread groups.
• Caching and Cookies can be enabled and it impact as such as it is executing in the web browser.
• Controllers are configurable and can monitor the server performance.
• Test results are more reliable compare to other open source tools.
• Test results can be captured in various format like summary report, Graph, Aggregate report,
Aggregate graph, Results in tree and Results in Table.
✕ Install Java (2.2. or higher)
✕ Download JMeter http://jakarta.apache.org/site/downloads/index.html
✕ Add path of java installation in environment path variables.
• Open command prompt (user administrative mode to avoid unnecessary hassle).
• Traverse to [jmeter installation path]bin
• Run Jmeter.bat
✕ Thread Group
+ Setup number of thread
+ Set up ramp up period
+ No. of times test executes
✕ Controllers
+ Sampler (Send Request to Server)
+ Logical Controller (Customize logic to send request)
✕ Listener
+ Graph Result
+ View Results Tree and many more.
✕ Timers
+ Delay next request for certain amount of time
Continue….
✕ Assertions
+ Allow you to assert fact about responses received from HTTP request
✕ Configuration Elements
+ Allow you configure settings
✕ Preprocessor
+ Execute prior to sampler request
✕ Post Processor
+ Execute some action after sampler request
✕ 5 users send 2 requests on cfminds.com and repeat it twice. (5 users x 2 requests x 2 repeat = 20
requests)
✕ Right click on test note >> Add >> Thread (users) >> Thread Group
✕ You can add default http request setting from ADD >> Config Element >> HTTP request default.
✕ This will let you define default http parameter for every request.
✕ You can add it from ADD> Sampler >> HTTP Request
✕ Listner responsible for storing all of the results of our HTTP request and presenting in Visualize
mode.
5 Users
50 Users
5 Users
50 Users
✕ JMeter Proxy can use to record all request send to server.
✕ Create test plan with default http testing
✕ Add HTTP Proxy Server in Workbench node.
+ Define port# of proxy server
+ Define URL Pattern to include/exclude
✕ .*.jpg
✕ .*.js
✕ .*.png
✕ .*.gif
✕ .*.jsp
✕ .*.css
✕ .*.txt
✕ .*.ejs
✕ .*.eot
✕ Start Proxy server.
✕ Setup Proxy server on your browser.
✕ Start Recording using the Web Browser.
✕ All the Request will be captured in the Test plan.
✕ Logic Controllers can be used to control flow.
✕ Create CSV file with list of username and password
✕ Store in same folder where your test stores
✕ Add CSV Data set into your test tree from config elements
✕ Add ${USER},${PASS} in request sampler as parameter.
✕ Correlation is used to obtain data which is unique for each run of your test script (ex: session ids).
While recording, these dynamic values are hard-coded in your script causing the script to fail
during playback. Correlation is a technique where dynamic values are not hard-coded in your
script but are extracted at run-time to avoid failure
✕ Correlation will be done using the Regular Expression Extractor in Jmeter.
Sample of Regular Expression and Usage:
✕ ([^"]+) → to correlate whole url/dynamic id
+ Ex: Edmiijkn11124mmk
✕ SessionID=(.+?)& → to correlate the url/dynamic id between 2 parameter. Here it’s between
‘SessionID=‘ and ‘&’ Need to be use if
+ EX: SessionID=jkjoujn434897h3jh35y9h&OrderID=ikikikke99874kmnjhh2
✕ orderID=(.+) → to correlate the url;/dynamic id after the defined parameter. Here it’s after
‘orderID=’
+ EX: SessionID=jkjoujn434897h3jh35y9h&OrderID=ikikikke99874kmnjhh2
Right click the node/url > Add > Post Processor > Regular Expression Extractor
Defining Regular Expression Extractor:
Reference name: Regex
Regular Expression : ([^"]+)
Template : $1$
Match no : 1
Hint:
1. Need to tag/replace the reference name Regex by ${Regex} in the URL /Dynamic Id.
2. Regular expression can be done before URL where the Dynamic Id/URL you found.
Response Assertion
Assertion Result
HTTP Authorization Manager
ADD> Config Element >> HTTP Authorization Manager
App/DB/Web Server configuration
ADD> Sampler >> HTTP Request
•Name the http request as Server Status, Provide the server IP and port
•Mention “/manager/status” in the path
Constant Timer
ADD> Timer >> Constant Timer
Setting up the Data Writer
ADD> Listener >> Simple Data Writer
Setting up monitor results
ADD> Listener >> Monitor Results
Target
VM 1
Master
VM 2
Slave
VM 3
Slave
VM 4
Slave
VM 5
Slave
VM n
Slave
Web Server
Master: The system running Jmeter GUI which control the test.
Slave: The System running Jmeter-server which takes commends from
the GUI and send the requests to the target system.
Target: The Web Server planned for the load test.
✕ JMeter client machine may not able to simulate enough users to stress server.
✕ Control multiple machine to run JMeter without copying test samples to different machine.
✕ Configuration:
+ Copy same version of JMeter to different computer.
+ Add remote node IP in JMeter.proeprties file.
+ Run JMeter on remote machine using /JMETER_HOME/bin/jmeter-server (in command
prompt)
+ Start JMeter GUI in host machine.
+ Select any test plan.
+ Go to Run >> Remote Start >> Remote IP Address.
performancetestingjmeter-121109061704-phpapp02

Contenu connexe

Tendances

Use JMeter as a Performance Testing Tool
Use JMeter as a Performance Testing ToolUse JMeter as a Performance Testing Tool
Use JMeter as a Performance Testing ToolBetawebsolution
 
Jmeter proxy step_by_step
Jmeter proxy step_by_stepJmeter proxy step_by_step
Jmeter proxy step_by_stepKapil Chawla
 
Q Engine Web Testing Tool By Priyanka Chauhan
Q Engine Web Testing Tool By Priyanka ChauhanQ Engine Web Testing Tool By Priyanka Chauhan
Q Engine Web Testing Tool By Priyanka ChauhanPriyanka Chauhan
 
Programming Without Coding Technology (PWCT) - HTTP Get Component
Programming Without Coding Technology (PWCT) - HTTP Get ComponentProgramming Without Coding Technology (PWCT) - HTTP Get Component
Programming Without Coding Technology (PWCT) - HTTP Get ComponentMahmoud Samir Fayed
 
Introduce anypoint studio
Introduce anypoint studioIntroduce anypoint studio
Introduce anypoint studioSon Nguyen
 
Principles of Computer System Design
Principles of Computer System DesignPrinciples of Computer System Design
Principles of Computer System DesignYing(Doris) WANG
 
Create Applicationwith IIS 7
Create Applicationwith IIS 7Create Applicationwith IIS 7
Create Applicationwith IIS 7Sandeep Verma
 
Odoo shipworks Integration
Odoo shipworks IntegrationOdoo shipworks Integration
Odoo shipworks IntegrationEr. Jay Vora
 

Tendances (11)

Use JMeter as a Performance Testing Tool
Use JMeter as a Performance Testing ToolUse JMeter as a Performance Testing Tool
Use JMeter as a Performance Testing Tool
 
Jmeter proxy step_by_step
Jmeter proxy step_by_stepJmeter proxy step_by_step
Jmeter proxy step_by_step
 
Networking in Java
Networking in JavaNetworking in Java
Networking in Java
 
Mail server
Mail serverMail server
Mail server
 
Mail server setup
Mail server setupMail server setup
Mail server setup
 
Q Engine Web Testing Tool By Priyanka Chauhan
Q Engine Web Testing Tool By Priyanka ChauhanQ Engine Web Testing Tool By Priyanka Chauhan
Q Engine Web Testing Tool By Priyanka Chauhan
 
Programming Without Coding Technology (PWCT) - HTTP Get Component
Programming Without Coding Technology (PWCT) - HTTP Get ComponentProgramming Without Coding Technology (PWCT) - HTTP Get Component
Programming Without Coding Technology (PWCT) - HTTP Get Component
 
Introduce anypoint studio
Introduce anypoint studioIntroduce anypoint studio
Introduce anypoint studio
 
Principles of Computer System Design
Principles of Computer System DesignPrinciples of Computer System Design
Principles of Computer System Design
 
Create Applicationwith IIS 7
Create Applicationwith IIS 7Create Applicationwith IIS 7
Create Applicationwith IIS 7
 
Odoo shipworks Integration
Odoo shipworks IntegrationOdoo shipworks Integration
Odoo shipworks Integration
 

En vedette

Instrumen ujian pra protim tahun 6(2013) bm
Instrumen ujian pra protim tahun 6(2013) bmInstrumen ujian pra protim tahun 6(2013) bm
Instrumen ujian pra protim tahun 6(2013) bmKhairiah Abdul Kadir
 
Linked in branding slideshow
Linked in branding slideshowLinked in branding slideshow
Linked in branding slideshowContactSolutions
 
Vattenfall's year-end report 2015
Vattenfall's year-end report 2015Vattenfall's year-end report 2015
Vattenfall's year-end report 2015Vattenfall
 
литературная жизнь гомельщины в контексте литературных процессов в
литературная жизнь гомельщины в контексте литературных процессов влитературная жизнь гомельщины в контексте литературных процессов в
литературная жизнь гомельщины в контексте литературных процессов вЮрий Максименко
 
Vattenfalls bokslutskommuniké för 2015
Vattenfalls bokslutskommuniké för 2015Vattenfalls bokslutskommuniké för 2015
Vattenfalls bokslutskommuniké för 2015Vattenfall
 
ING IABSE December 2015 Paper 8
ING IABSE December 2015 Paper 8ING IABSE December 2015 Paper 8
ING IABSE December 2015 Paper 8Anusha Nandavaram
 
Ulotka wyprzedażowa Oriflame do katalogu 9/2013
Ulotka wyprzedażowa Oriflame do katalogu 9/2013Ulotka wyprzedażowa Oriflame do katalogu 9/2013
Ulotka wyprzedażowa Oriflame do katalogu 9/2013Klara Resto
 
Ulotka promocyjna do katalogu Oriflame 12/2013
Ulotka promocyjna do katalogu Oriflame 12/2013Ulotka promocyjna do katalogu Oriflame 12/2013
Ulotka promocyjna do katalogu Oriflame 12/2013Klara Resto
 
Basics of Online Retargeting
Basics of Online Retargeting Basics of Online Retargeting
Basics of Online Retargeting Nidhish Alex
 
De bai tap_khop_lenh
De bai tap_khop_lenhDe bai tap_khop_lenh
De bai tap_khop_lenhSung Ji Soo
 
Derrick Shelton Visual Resume
Derrick Shelton Visual ResumeDerrick Shelton Visual Resume
Derrick Shelton Visual Resumedshelton82
 
Q3 presentation 2015 for Vattenfall
Q3 presentation 2015 for VattenfallQ3 presentation 2015 for Vattenfall
Q3 presentation 2015 for VattenfallVattenfall
 

En vedette (20)

D1 06
D1 06D1 06
D1 06
 
Instrumen ujian pra protim tahun 6(2013) bm
Instrumen ujian pra protim tahun 6(2013) bmInstrumen ujian pra protim tahun 6(2013) bm
Instrumen ujian pra protim tahun 6(2013) bm
 
Linked in branding slideshow
Linked in branding slideshowLinked in branding slideshow
Linked in branding slideshow
 
Vattenfall's year-end report 2015
Vattenfall's year-end report 2015Vattenfall's year-end report 2015
Vattenfall's year-end report 2015
 
литературная жизнь гомельщины в контексте литературных процессов в
литературная жизнь гомельщины в контексте литературных процессов влитературная жизнь гомельщины в контексте литературных процессов в
литературная жизнь гомельщины в контексте литературных процессов в
 
Kerja sekolah 345 mei
Kerja sekolah 345 meiKerja sekolah 345 mei
Kerja sekolah 345 mei
 
Kesava Kumar Ampavalli 5-6-2016
Kesava Kumar Ampavalli 5-6-2016Kesava Kumar Ampavalli 5-6-2016
Kesava Kumar Ampavalli 5-6-2016
 
Vattenfalls bokslutskommuniké för 2015
Vattenfalls bokslutskommuniké för 2015Vattenfalls bokslutskommuniké för 2015
Vattenfalls bokslutskommuniké för 2015
 
ING IABSE December 2015 Paper 8
ING IABSE December 2015 Paper 8ING IABSE December 2015 Paper 8
ING IABSE December 2015 Paper 8
 
Presentazione socialwork
Presentazione socialworkPresentazione socialwork
Presentazione socialwork
 
Ulotka wyprzedażowa Oriflame do katalogu 9/2013
Ulotka wyprzedażowa Oriflame do katalogu 9/2013Ulotka wyprzedażowa Oriflame do katalogu 9/2013
Ulotka wyprzedażowa Oriflame do katalogu 9/2013
 
Ulotka promocyjna do katalogu Oriflame 12/2013
Ulotka promocyjna do katalogu Oriflame 12/2013Ulotka promocyjna do katalogu Oriflame 12/2013
Ulotka promocyjna do katalogu Oriflame 12/2013
 
Basics of Online Retargeting
Basics of Online Retargeting Basics of Online Retargeting
Basics of Online Retargeting
 
Klon upsr set 1
Klon upsr set  1 Klon upsr set  1
Klon upsr set 1
 
De bai tap_khop_lenh
De bai tap_khop_lenhDe bai tap_khop_lenh
De bai tap_khop_lenh
 
สิ่งที่ส่งมาด้วย2
สิ่งที่ส่งมาด้วย2สิ่งที่ส่งมาด้วย2
สิ่งที่ส่งมาด้วย2
 
Derrick Shelton Visual Resume
Derrick Shelton Visual ResumeDerrick Shelton Visual Resume
Derrick Shelton Visual Resume
 
Ex5
Ex5Ex5
Ex5
 
Q3 presentation 2015 for Vattenfall
Q3 presentation 2015 for VattenfallQ3 presentation 2015 for Vattenfall
Q3 presentation 2015 for Vattenfall
 
US vs argentina
US vs argentinaUS vs argentina
US vs argentina
 

Similaire à performancetestingjmeter-121109061704-phpapp02

Performance testing and j meter
Performance testing and j meterPerformance testing and j meter
Performance testing and j meterPurna Chandar
 
Performancetestingjmeter 121109061704-phpapp02
Performancetestingjmeter 121109061704-phpapp02Performancetestingjmeter 121109061704-phpapp02
Performancetestingjmeter 121109061704-phpapp02Shivakumara .
 
Performance testing jmeter
Performance testing jmeterPerformance testing jmeter
Performance testing jmeterBhojan Rajan
 
JMeter & ColdFusion
JMeter & ColdFusion JMeter & ColdFusion
JMeter & ColdFusion isummation
 
Performance testing and j meter overview
Performance testing and j meter overviewPerformance testing and j meter overview
Performance testing and j meter overviewkrishna chaitanya
 
Performancetestingjmeter 131210111657-phpapp02
Performancetestingjmeter 131210111657-phpapp02Performancetestingjmeter 131210111657-phpapp02
Performancetestingjmeter 131210111657-phpapp02Nitish Bhardwaj
 
Performance eng prakash.sahu
Performance eng prakash.sahuPerformance eng prakash.sahu
Performance eng prakash.sahuDr. Prakash Sahu
 
Soft Test Ireland - Introduction to Jakarta Jmeter - Philip Bannon
Soft Test Ireland - Introduction to Jakarta Jmeter - Philip BannonSoft Test Ireland - Introduction to Jakarta Jmeter - Philip Bannon
Soft Test Ireland - Introduction to Jakarta Jmeter - Philip BannonDavid O'Dowd
 
Getting Started with Apache Jmeter
Getting Started with Apache JmeterGetting Started with Apache Jmeter
Getting Started with Apache JmeterMindfire Solutions
 
Perfromane Test Tool jmeter
Perfromane Test Tool jmeterPerfromane Test Tool jmeter
Perfromane Test Tool jmeterNaga Mallala
 
Performance Test Slideshow Recent
Performance Test Slideshow RecentPerformance Test Slideshow Recent
Performance Test Slideshow RecentFuture Simmons
 
Performance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TPerformance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TFuture Simmons
 
PerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunnerPerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunnertechgajanan
 
Performance Testing With Loadrunner
Performance Testing With LoadrunnerPerformance Testing With Loadrunner
Performance Testing With Loadrunnervladimir zaremba
 

Similaire à performancetestingjmeter-121109061704-phpapp02 (20)

Performance testing and j meter
Performance testing and j meterPerformance testing and j meter
Performance testing and j meter
 
Performancetestingjmeter 121109061704-phpapp02
Performancetestingjmeter 121109061704-phpapp02Performancetestingjmeter 121109061704-phpapp02
Performancetestingjmeter 121109061704-phpapp02
 
Performance testing jmeter
Performance testing jmeterPerformance testing jmeter
Performance testing jmeter
 
JMeter & ColdFusion
JMeter & ColdFusion JMeter & ColdFusion
JMeter & ColdFusion
 
J Meter Intro
J Meter IntroJ Meter Intro
J Meter Intro
 
JMeter Intro
JMeter IntroJMeter Intro
JMeter Intro
 
Performance testing and j meter overview
Performance testing and j meter overviewPerformance testing and j meter overview
Performance testing and j meter overview
 
Performancetestingjmeter 131210111657-phpapp02
Performancetestingjmeter 131210111657-phpapp02Performancetestingjmeter 131210111657-phpapp02
Performancetestingjmeter 131210111657-phpapp02
 
JMETER-SKILLWISE
JMETER-SKILLWISEJMETER-SKILLWISE
JMETER-SKILLWISE
 
QSpiders - Introduction to JMeter
QSpiders - Introduction to JMeterQSpiders - Introduction to JMeter
QSpiders - Introduction to JMeter
 
Performance eng prakash.sahu
Performance eng prakash.sahuPerformance eng prakash.sahu
Performance eng prakash.sahu
 
QSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load RunnerQSpiders - Introduction to HP Load Runner
QSpiders - Introduction to HP Load Runner
 
Soft Test Ireland - Introduction to Jakarta Jmeter - Philip Bannon
Soft Test Ireland - Introduction to Jakarta Jmeter - Philip BannonSoft Test Ireland - Introduction to Jakarta Jmeter - Philip Bannon
Soft Test Ireland - Introduction to Jakarta Jmeter - Philip Bannon
 
Getting Started with Apache Jmeter
Getting Started with Apache JmeterGetting Started with Apache Jmeter
Getting Started with Apache Jmeter
 
Perfromane Test Tool jmeter
Perfromane Test Tool jmeterPerfromane Test Tool jmeter
Perfromane Test Tool jmeter
 
Performance Test Slideshow Recent
Performance Test Slideshow RecentPerformance Test Slideshow Recent
Performance Test Slideshow Recent
 
Performance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TPerformance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N T
 
PerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunnerPerformanceTestingWithLoadrunner
PerformanceTestingWithLoadrunner
 
Performance Testing With Loadrunner
Performance Testing With LoadrunnerPerformance Testing With Loadrunner
Performance Testing With Loadrunner
 
Jmeter From Scratch
Jmeter From ScratchJmeter From Scratch
Jmeter From Scratch
 

Plus de Gopi Raghavendra

kalyanasundaram,Gopi_tcoepresentation
kalyanasundaram,Gopi_tcoepresentationkalyanasundaram,Gopi_tcoepresentation
kalyanasundaram,Gopi_tcoepresentationGopi Raghavendra
 
Key Measurements For Testers
Key Measurements For TestersKey Measurements For Testers
Key Measurements For TestersGopi Raghavendra
 
i_Mobile Testing Service Desk_Own
i_Mobile Testing Service Desk_Owni_Mobile Testing Service Desk_Own
i_Mobile Testing Service Desk_OwnGopi Raghavendra
 
Maven TestNg frame work (1) (1)
Maven TestNg frame work (1) (1)Maven TestNg frame work (1) (1)
Maven TestNg frame work (1) (1)Gopi Raghavendra
 
Test_Automation_-_Let's_Talk_Business.ppt
Test_Automation_-_Let's_Talk_Business.pptTest_Automation_-_Let's_Talk_Business.ppt
Test_Automation_-_Let's_Talk_Business.pptGopi Raghavendra
 
All Work Responsibilities in my whole Life-Testing Profession
All Work Responsibilities in my whole  Life-Testing  ProfessionAll Work Responsibilities in my whole  Life-Testing  Profession
All Work Responsibilities in my whole Life-Testing ProfessionGopi Raghavendra
 

Plus de Gopi Raghavendra (11)

kalyanasundaram,Gopi_tcoepresentation
kalyanasundaram,Gopi_tcoepresentationkalyanasundaram,Gopi_tcoepresentation
kalyanasundaram,Gopi_tcoepresentation
 
Testing Services
Testing ServicesTesting Services
Testing Services
 
Key Measurements For Testers
Key Measurements For TestersKey Measurements For Testers
Key Measurements For Testers
 
i_Mobile Testing Service Desk_Own
i_Mobile Testing Service Desk_Owni_Mobile Testing Service Desk_Own
i_Mobile Testing Service Desk_Own
 
QA Process
QA ProcessQA Process
QA Process
 
Maven TestNg frame work (1) (1)
Maven TestNg frame work (1) (1)Maven TestNg frame work (1) (1)
Maven TestNg frame work (1) (1)
 
Test_Automation_-_Let's_Talk_Business.ppt
Test_Automation_-_Let's_Talk_Business.pptTest_Automation_-_Let's_Talk_Business.ppt
Test_Automation_-_Let's_Talk_Business.ppt
 
Sikuli_Demo.pptx
Sikuli_Demo.pptxSikuli_Demo.pptx
Sikuli_Demo.pptx
 
All Work Responsibilities in my whole Life-Testing Profession
All Work Responsibilities in my whole  Life-Testing  ProfessionAll Work Responsibilities in my whole  Life-Testing  Profession
All Work Responsibilities in my whole Life-Testing Profession
 
Sikuli_Demo(1)
Sikuli_Demo(1)Sikuli_Demo(1)
Sikuli_Demo(1)
 
Load test plan
Load test planLoad test plan
Load test plan
 

performancetestingjmeter-121109061704-phpapp02

  • 2. Performance testing is an non-functional testing performed to determine how a system performs in terms of responsiveness and stability under a particular workload. It can also serve to investigate, measure, validate or verify other quality attributes of the system, such as scalability, reliability and resource usage GOAL/OBJECTIVE IS TO FIND THE BOTTLE NECK IN THE SYSTEM
  • 3. Load/Capacity Testing Stress Testing Volume Testing Endurance/Soak Testing Spike Testing
  • 4. Load testing is the simplest form of performance testing. A load test is usually conducted to understand the behavior of the system under a specific expected load. This load can be the expected concurrent number of users on the application performing a specific number of transactions within the set duration. This test will give out the response times of all the important business critical transactions. If the database, application server, etc. are also monitored, then this simple test can itself point towards any bottlenecks in the application software
  • 5. A bottleneck is a phenomenon where the performance or capacity of an entire system is limited by a single or limited number of components or resources. Your web application can consist of several modules used to process request. If one of them has technical limitation, it limits the performance of the whole system Bottleneck in the application can be identified by performing the load test with the defined concurrent user load for various scenarios.
  • 6. Every system has a capacity limit. When the load goes beyond the limit, the web site starts responding very slowly and even produce errors. The purpose of the stress testing is to find the capacity limit of the system. In we can verify at which point of time the system degrades or fails. Usually done by increasing the user load in the system.
  • 7. Volume testing is done against the efficiency of the application. Huge amount of data is processed through the application (which is being tested) in order to check the extreme limitations of the system. The limitation will be concluded upon the slow in the system performance and the failure in the application.
  • 8. This type of testing is used to check that the system can withstand the load for a long or large number of transaction. Test will be performed with defined set of concurrent users for a prolonged period of time, say for example 5 to 10 hours or 2 to 3 days.
  • 9. Spike testing is done by suddenly increasing the number of load generated by, users by a very large amount and observing the behavior of the system. The goal is to determine the performance degrade, system failure or it will be able to handle dramatic changes in load. Say for example, test will be initiated with 200 concurrent user for a certain period of time, suddenly the concurred user load will be increased to 1000 and the system performance will be monitored. Like wise the user load will be decreased to 200 concurrent users and verify the system returns to normal operation and retaining the performance as initiated.
  • 10. ✕ NFR document should be available – It will provide you the expected Response time and required Concurrent user load, Scenarios to be tested and other performance attributes. ✕ Dedicated Performance test environment should be ready in place. ✕ Scalability on the test environment to the actual production environment should be available. ✕ Gather the environment details like App, Web and DB servers configurations and their capacity. ✕ Performance Test approach document should be ready and sing-off from the stake holders.
  • 11. o Load Runner, commercial load testing tool from HP o JMeter, an open source tool from Appache o RPT, commercial load test tool from IBM o NeoLoad, commercial, for Windows, Linux, Solaris o Microsoft Visual Studio Team System 2010, commercial, for Windows, which includes Load Test Analyzer and Load Test Monitor tools. o OpenLoad, commercial load testing tool and hosted service o OpenSTA, an open source tool o PureLoad, commercial, multiplatform load testing tool o PushToTest TestMaker, an open source testing framework (load testing and more) o QEngine, free and commercial, from AdventNet (free edition supports 5 virtual users) o SQLQueryStress Performance Testing Tool, free, for testing SQL Server StressIT, commercial and free o The Grinder, an open source tool o Flood, open source from and for Apache o WAPT, Web Application Testing tool, a commercial product, for Windows o WatchMouse, commercial hosted load testing service o WebKing, commercial, multiplatform o WebServer Stress Tool, commercial and free, from Paessler
  • 12. • It is an Open source tool. • Can load and performance test many different server types: ● Web - HTTP, HTTPS ● SOAP ● Database via JDBC ● LDAP ● JMS ● Mail - POP3(S) and IMAP(S) • User friendly GUI Design compare to other tools. • Full multithreading framework allows concurrent sampling by many threads and simultaneous sampling of different functions by separate thread groups. • Caching and Cookies can be enabled and it impact as such as it is executing in the web browser. • Controllers are configurable and can monitor the server performance. • Test results are more reliable compare to other open source tools. • Test results can be captured in various format like summary report, Graph, Aggregate report, Aggregate graph, Results in tree and Results in Table.
  • 13. ✕ Install Java (2.2. or higher) ✕ Download JMeter http://jakarta.apache.org/site/downloads/index.html ✕ Add path of java installation in environment path variables.
  • 14. • Open command prompt (user administrative mode to avoid unnecessary hassle). • Traverse to [jmeter installation path]bin • Run Jmeter.bat
  • 15. ✕ Thread Group + Setup number of thread + Set up ramp up period + No. of times test executes ✕ Controllers + Sampler (Send Request to Server) + Logical Controller (Customize logic to send request) ✕ Listener + Graph Result + View Results Tree and many more. ✕ Timers + Delay next request for certain amount of time Continue….
  • 16. ✕ Assertions + Allow you to assert fact about responses received from HTTP request ✕ Configuration Elements + Allow you configure settings ✕ Preprocessor + Execute prior to sampler request ✕ Post Processor + Execute some action after sampler request
  • 17.
  • 18.
  • 19.
  • 20. ✕ 5 users send 2 requests on cfminds.com and repeat it twice. (5 users x 2 requests x 2 repeat = 20 requests) ✕ Right click on test note >> Add >> Thread (users) >> Thread Group
  • 21. ✕ You can add default http request setting from ADD >> Config Element >> HTTP request default. ✕ This will let you define default http parameter for every request.
  • 22. ✕ You can add it from ADD> Sampler >> HTTP Request
  • 23. ✕ Listner responsible for storing all of the results of our HTTP request and presenting in Visualize mode.
  • 26.
  • 27. ✕ JMeter Proxy can use to record all request send to server. ✕ Create test plan with default http testing ✕ Add HTTP Proxy Server in Workbench node. + Define port# of proxy server + Define URL Pattern to include/exclude ✕ .*.jpg ✕ .*.js ✕ .*.png ✕ .*.gif ✕ .*.jsp ✕ .*.css ✕ .*.txt ✕ .*.ejs ✕ .*.eot ✕ Start Proxy server.
  • 28. ✕ Setup Proxy server on your browser. ✕ Start Recording using the Web Browser. ✕ All the Request will be captured in the Test plan.
  • 29. ✕ Logic Controllers can be used to control flow.
  • 30.
  • 31. ✕ Create CSV file with list of username and password ✕ Store in same folder where your test stores ✕ Add CSV Data set into your test tree from config elements ✕ Add ${USER},${PASS} in request sampler as parameter.
  • 32.
  • 33. ✕ Correlation is used to obtain data which is unique for each run of your test script (ex: session ids). While recording, these dynamic values are hard-coded in your script causing the script to fail during playback. Correlation is a technique where dynamic values are not hard-coded in your script but are extracted at run-time to avoid failure ✕ Correlation will be done using the Regular Expression Extractor in Jmeter. Sample of Regular Expression and Usage: ✕ ([^"]+) → to correlate whole url/dynamic id + Ex: Edmiijkn11124mmk ✕ SessionID=(.+?)& → to correlate the url/dynamic id between 2 parameter. Here it’s between ‘SessionID=‘ and ‘&’ Need to be use if + EX: SessionID=jkjoujn434897h3jh35y9h&OrderID=ikikikke99874kmnjhh2 ✕ orderID=(.+) → to correlate the url;/dynamic id after the defined parameter. Here it’s after ‘orderID=’ + EX: SessionID=jkjoujn434897h3jh35y9h&OrderID=ikikikke99874kmnjhh2
  • 34. Right click the node/url > Add > Post Processor > Regular Expression Extractor Defining Regular Expression Extractor: Reference name: Regex Regular Expression : ([^"]+) Template : $1$ Match no : 1 Hint: 1. Need to tag/replace the reference name Regex by ${Regex} in the URL /Dynamic Id. 2. Regular expression can be done before URL where the Dynamic Id/URL you found.
  • 35.
  • 36.
  • 39.
  • 40. HTTP Authorization Manager ADD> Config Element >> HTTP Authorization Manager
  • 41. App/DB/Web Server configuration ADD> Sampler >> HTTP Request •Name the http request as Server Status, Provide the server IP and port •Mention “/manager/status” in the path
  • 42. Constant Timer ADD> Timer >> Constant Timer
  • 43. Setting up the Data Writer ADD> Listener >> Simple Data Writer
  • 44. Setting up monitor results ADD> Listener >> Monitor Results
  • 45.
  • 46. Target VM 1 Master VM 2 Slave VM 3 Slave VM 4 Slave VM 5 Slave VM n Slave Web Server Master: The system running Jmeter GUI which control the test. Slave: The System running Jmeter-server which takes commends from the GUI and send the requests to the target system. Target: The Web Server planned for the load test.
  • 47. ✕ JMeter client machine may not able to simulate enough users to stress server. ✕ Control multiple machine to run JMeter without copying test samples to different machine. ✕ Configuration: + Copy same version of JMeter to different computer. + Add remote node IP in JMeter.proeprties file. + Run JMeter on remote machine using /JMETER_HOME/bin/jmeter-server (in command prompt) + Start JMeter GUI in host machine. + Select any test plan. + Go to Run >> Remote Start >> Remote IP Address.