SlideShare a Scribd company logo
3 SECONDS OR LESS…
PERFORMANCE TESTS INTRODUCTION
AUTHOR: PIOTR LISS
WHY TEST PERFORMANCE?
 Why NOT to test
 It will work without it
 Why YES
 Locate performance downgrade before release
 Define the limits
 Find our bottleneck before user will
 On commercial sites – clients loss
 On internal sites – users frustration
 DDoS attack simulation
WHY TEST PERFORMANCE?
GOOGLE RANKING
Source: http://www.monitis.com/blog/website-performance-its-impact-on-google-ranking/
WHY TEST PERFORMANCE?
3 SECONDS OR LESS
Source: https://www.soasta.com/blog/google-mobile-web-performance-study/
WHY TEST PERFORMANCE?
FINANCIAL ASPECT
Source: https://www.doubleclickbygoogle.com/articles/mobile-speed-matters/
WHY TEST PERFORMANCE?
INCREASING SIZE OF AVERAGE PAGE
Source: http://httparchive.org/trends.php?s=All&minlabel=Nov+15+2010&maxlabel=Feb+1+2018
WHAT ARE PERFORMANCE TESTS?
DEFINITION
Test which result generates measurable value
regarding efficiency of testing product.
 response time
 number of users
 request per
second
 bits per second
 speed
 stability
 reliability
 capacity
 application
 web page
 service
 database
WHAT ARE PERFORMANCE TESTS?
HOW TO TEST
 Requirements – examples:
 can handle 1000 request per hour
 response time not bigger than 2000ms with 100 concurrent users
 can handle 6 hours with active 50 concurrent users
 after spike load application returns to previous state
 Parameters:
 number of active users (connections)
 response time
 capacity (maximum load)
 requests per second
WHAT ARE PERFORMANCE TESTS?
LOAD TEST
How application behave with predictable and safe load (good candidate for Continuous Integration process
and response time measurement)
0
10
20
30
40
50
0:00 1:00 2:00 3:00 4:00 5:00 6:00 7:00 8:00 9:00 10:00 11:00 12:00 13:00 14:00 15:00
Users
Time
LOAD TEST
WHAT ARE PERFORMANCE TESTS?
STRESS TEST
Usable to define border values (good test to define capacity and how infrastructure behave after crash)
0
10
20
30
40
50
60
0:00 1:00 2:00 3:00 4:00 5:00 6:00 7:00 8:00 9:00 10:00
Users
Time
STRESS TEST
WHAT ARE PERFORMANCE TESTS?
SPIKE TEST
Short and extremely high load to verify do application return to its before test state
0
10
20
30
40
50
60
0:00 1:00 2:00 3:00 4:00 5:00
Users
Time
SPIKE TEST
WHAT ARE PERFORMANCE TESTS?
SOAK/ENDURANCE TEST
Few hours load tests to verify does application on stable load will not lose its usability from beginning
(Memory Leak)
0
10
20
30
40
50
0:01:00 0:30:00 0:59:00 1:28:00 1:57:00 2:26:00 2:55:00 3:24:00 3:53:00
Users
Time
ENDURANCE TEST
HOW TESTING TOOL WORKS?
Testing tool
emulates user
story scenario
repeating it X
times during
Y seconds.
HOW TESTING TOOL WORKS?
 Eliminate any unrelated with tested product element:
 no User Interface if it’s not generated on our application (e.g. no web browser)
 eliminate external application on test environment (e.g. in place of external authorization proxy server make a
plug that will always emulate same result)
 Make as real as possible:
 Think time
 Cache as a browser
 Embedded resources
 Stable increasing load
 Cookies
 Different load regions (if possible)
 Environment “warm up”
 Divide test to steps
TOOLS
APACHE JMETER
 since: 1998
 free license: for all (Apache License Version 2.0)
 protocols: web, webservices (SOAP, REST), FTP, Mail, DB,
TCP, OS command line and many more
 programming experience: minimal (groovy, beanshell)
 requirements: any operating system that runs Java
 support: accessible community, keen to help, many
tutorials, trainings, courses, forum topics and discussions
 main advantages:
 dozens of free useful plugins that extend functionalities (e.g.
additional protocols, visualizations, webdriver)
 User-friendly interface
 Easy scalability
TOOLS
VISUAL STUDIO LOAD TESTS
 since: 2010
 free license: very limited (requires most expensive VS
version)
 protocols: web, webservices (SOAP, REST)
 programming experience: minimum-medium (C#, VB)
 requirements: any based on Windows
 support: official forum and support group, not to many
online tutorials
 main advantages:
 C# code gives possibility of advance test expansion
 Azure integration
 easy debugging and recording
TOOLS
AZURE PERFORMANCE TESTS
 since: 2014?
 free license: limited
 protocols: web
 programming experience: none
 requirements: web browser + Visual Studio Team
Services account
 support: not needed
 main advantages:
 free 20000 user-minutes/month tests on on-demand test
machine from desired world region
 test import from Visual Studio or JMeter (and partly
Fiddler)
 possibility to use own Azure infrastructure (additional
cost)
TOOLS
HP LOADRUNNER
 since: 1991
 free license: community edition (non-commercial)
 protocols: web, webservices (SOAP, REST), FTP, Mail, DB,
RDP, SAP and many more
 programming experience: medium (ANSI C or few other)
 requirements: Windows system with 8 cores and 16GB
memory
 support: many tutorials, trainings, courses, forum topics and
discussions
 main advantages:
 rich reports
 integration with many external software (including CI)
 good recorder
TOOLS
GATLING
 since: 2011
 free license: almost all (Apache License Version 2.0)
 protocols: web, DB, Mail, webservices (REST)
 programming experience: medium (DSL)
 requirements: any operating system that runs Java
 support: many web helpers and forum topics
 main advantages:
 can generate more load from single machine than other
tools
 simple and user-friendly reports
 easy to write plugins
TOOLS
OTHER
 SoapUI
 WebLOAD
 LoadUI NG Pro
 SmartMeter.io
 Appvance
 NeoLoad
 LoadComplete
 WAPT
 Loadster
 LoadImpact
 Rational Performance Tester
 Testing Anywhere
 OpenSTA
 QEngine (ManageEngine)
 Loadstorm
 CloudTest
 Httperf
 The Grinder
 Tsung
 Locust
 Bees with Machine Guns
 Multi-Mechanize
 Siege
 Apache Bench
PERFORMANCE TEST REPORT ANALYSIS
 Summary of all filtered test steps with errors,
response time and throughput statistics
 APDEX index
 APDEX is from 0 to 1 scale value that represents
how many request finished in given time
 toleration threshold - our target time
 frustration threshold - acceptable maximum time
 Helpful to compare results
PERFORMANCE TEST REPORT ANALYSIS
 Example charts:
 Response times over time
 Active threads
 Bytes sent/receive over time
 Hits per second
 Latency vs request
 Response time percentiles
APACHE JMETER
EXAMPLE USAGE - RECORDER
 JMeter Recorder
 Requires some basic adjustments and web
browser configuration
 Recorded records have to verified because
might contains some not related traffic
 Other methods:
 SAML recorder on any web browser (usually as
plugin)
 JMeter request/response analyzys
 Fiddler traffic recorder
APACHE JMETER
EXAMPLE USAGE – ASSERTIONS
 Text response (XPath response)
 Site header response
 Response time
 (not necessary) code response
APACHE JMETER
EXAMPLE USAGE – REAL BROWSER IMITATION
 Cache
 Embedded resources
 Cookies
APACHE JMETER
EXAMPLE USAGE – TEST RUN
 Verification process – GUI mode
 Run test using listeners
 Run process – non-GUI mode
 Run test using command line
APACHE JMETER
EXAMPLE USAGE – IS THAT ALL?
 Extraction rules - passing tokens and IDs between requests
 External files - e.g. other credential for every iteration
 Loops and IFs - e.g. requesting every few milliseconds until page will get certain content
 Scripts - e.g. exactly decide in which moment start timer
 Continuous Integration - e.g. integration with Jenkins
 Distributed environment - slave machines from different regions to generate load
PERFORMANCE TESTS PROBLEMS
 Asynchronous request and JavaScript code
 Increase performance by better code or by environment improvement?
 Do performance tester has enough work for full-time contract?
 Test environment vs production environment
 What to analyze after performance test run?
LINKS AND THANKS
 Author: Piotr Liss (www.linkedin.com/in/piotrLiss)
 Consultant: Darek Kozon (https://www.linkedin.com/in/dkozon/)
 Link: Blazemeter (https://www.blazemeter.com/)

More Related Content

What's hot

Mastering Test Automation: How to Use Selenium Successfully
Mastering Test Automation: How to Use Selenium Successfully Mastering Test Automation: How to Use Selenium Successfully
Mastering Test Automation: How to Use Selenium Successfully
Applitools
 
Automated Web Testing With Selenium
Automated Web Testing With SeleniumAutomated Web Testing With Selenium
Automated Web Testing With Selenium
Jodie Miners
 
Automated Testing Overview
Automated Testing OverviewAutomated Testing Overview
Automated Testing Overviewantsh
 
Selenium
SeleniumSelenium
Selenium
Sun Technlogies
 
Web UI test automation instruments
Web UI test automation instrumentsWeb UI test automation instruments
Web UI test automation instruments
Artem Nagornyi
 
Java Restart with WebFX
Java Restart with WebFX Java Restart with WebFX
Java Restart with WebFX
Nikita Lipsky
 
Using protractor to build automated ui tests
Using protractor to build automated ui testsUsing protractor to build automated ui tests
Using protractor to build automated ui tests
🌱 Dale Spoonemore
 
OWASP Zed Attack Proxy
OWASP Zed Attack ProxyOWASP Zed Attack Proxy
OWASP Zed Attack Proxy
Fadi Abdulwahab
 
Selenium
SeleniumSelenium
Selenium
Adam Goucher
 
Mastering selenium for automated acceptance tests
Mastering selenium for automated acceptance testsMastering selenium for automated acceptance tests
Mastering selenium for automated acceptance testsNick Belhomme
 
Session on Selenium 4 : What’s coming our way? by Hitesh Prajapati
Session on Selenium 4 : What’s coming our way? by Hitesh PrajapatiSession on Selenium 4 : What’s coming our way? by Hitesh Prajapati
Session on Selenium 4 : What’s coming our way? by Hitesh Prajapati
Agile Testing Alliance
 
Continuous Quality Assurance using Selenium WebDriver
Continuous Quality Assurance using Selenium WebDriverContinuous Quality Assurance using Selenium WebDriver
Continuous Quality Assurance using Selenium WebDriver
AOE
 
My own preferred testing tools - Paris JUG 2011
My own preferred testing tools - Paris JUG 2011My own preferred testing tools - Paris JUG 2011
My own preferred testing tools - Paris JUG 2011David Gageot
 
Automated Testing on Web Applications
Automated Testing on Web ApplicationsAutomated Testing on Web Applications
Automated Testing on Web Applications
Samuel Borg
 
Measuring the visual experience of website performance
Measuring the visual experience of website performanceMeasuring the visual experience of website performance
Measuring the visual experience of website performancePatrick Meenan
 
Let's make this test suite run faster - Paris JUG 2011
Let's make this test suite run faster - Paris JUG 2011Let's make this test suite run faster - Paris JUG 2011
Let's make this test suite run faster - Paris JUG 2011David Gageot
 
Let's make this test suite run faster! SoftShake 2010
Let's make this test suite run faster! SoftShake 2010Let's make this test suite run faster! SoftShake 2010
Let's make this test suite run faster! SoftShake 2010
David Gageot
 
Qa process
Qa processQa process
Qa process
Aila Bogasieru
 

What's hot (20)

Mastering Test Automation: How to Use Selenium Successfully
Mastering Test Automation: How to Use Selenium Successfully Mastering Test Automation: How to Use Selenium Successfully
Mastering Test Automation: How to Use Selenium Successfully
 
Automated Web Testing With Selenium
Automated Web Testing With SeleniumAutomated Web Testing With Selenium
Automated Web Testing With Selenium
 
Automated Testing Overview
Automated Testing OverviewAutomated Testing Overview
Automated Testing Overview
 
Selenium
SeleniumSelenium
Selenium
 
Web UI test automation instruments
Web UI test automation instrumentsWeb UI test automation instruments
Web UI test automation instruments
 
Java Restart with WebFX
Java Restart with WebFX Java Restart with WebFX
Java Restart with WebFX
 
Using protractor to build automated ui tests
Using protractor to build automated ui testsUsing protractor to build automated ui tests
Using protractor to build automated ui tests
 
OWASP Zed Attack Proxy
OWASP Zed Attack ProxyOWASP Zed Attack Proxy
OWASP Zed Attack Proxy
 
Selenium
SeleniumSelenium
Selenium
 
Selenium
SeleniumSelenium
Selenium
 
Mastering selenium for automated acceptance tests
Mastering selenium for automated acceptance testsMastering selenium for automated acceptance tests
Mastering selenium for automated acceptance tests
 
Session on Selenium 4 : What’s coming our way? by Hitesh Prajapati
Session on Selenium 4 : What’s coming our way? by Hitesh PrajapatiSession on Selenium 4 : What’s coming our way? by Hitesh Prajapati
Session on Selenium 4 : What’s coming our way? by Hitesh Prajapati
 
Continuous Quality Assurance using Selenium WebDriver
Continuous Quality Assurance using Selenium WebDriverContinuous Quality Assurance using Selenium WebDriver
Continuous Quality Assurance using Selenium WebDriver
 
Selenium
SeleniumSelenium
Selenium
 
My own preferred testing tools - Paris JUG 2011
My own preferred testing tools - Paris JUG 2011My own preferred testing tools - Paris JUG 2011
My own preferred testing tools - Paris JUG 2011
 
Automated Testing on Web Applications
Automated Testing on Web ApplicationsAutomated Testing on Web Applications
Automated Testing on Web Applications
 
Measuring the visual experience of website performance
Measuring the visual experience of website performanceMeasuring the visual experience of website performance
Measuring the visual experience of website performance
 
Let's make this test suite run faster - Paris JUG 2011
Let's make this test suite run faster - Paris JUG 2011Let's make this test suite run faster - Paris JUG 2011
Let's make this test suite run faster - Paris JUG 2011
 
Let's make this test suite run faster! SoftShake 2010
Let's make this test suite run faster! SoftShake 2010Let's make this test suite run faster! SoftShake 2010
Let's make this test suite run faster! SoftShake 2010
 
Qa process
Qa processQa process
Qa process
 

Similar to TGT#19 - 3 seconds or less - Piotr Liss

JMeter & ColdFusion
JMeter & ColdFusion JMeter & ColdFusion
JMeter & ColdFusion
isummation
 
Основы нагрузочного тестирования с инструментом Jmeter
Основы нагрузочного тестирования с инструментом JmeterОсновы нагрузочного тестирования с инструментом Jmeter
Основы нагрузочного тестирования с инструментом Jmeter
Компьютерная школа Hillel
 
Client-Side Performance Testing
Client-Side Performance TestingClient-Side Performance Testing
Client-Side Performance Testing
Anand Bagmar
 
Zagat.com Case Study (DrupalCon Denver 2012)
Zagat.com Case Study (DrupalCon Denver 2012)Zagat.com Case Study (DrupalCon Denver 2012)
Zagat.com Case Study (DrupalCon Denver 2012)
Phase2
 
Stepin evening presented
Stepin evening presentedStepin evening presented
Stepin evening presentedVijayan Reddy
 
Stating the obvious - 121 Test Automation Day, Dublin, 2018
Stating the obvious - 121 Test Automation Day, Dublin, 2018Stating the obvious - 121 Test Automation Day, Dublin, 2018
Stating the obvious - 121 Test Automation Day, Dublin, 2018
Giulio Vian
 
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
 
PROGNOSIS for Web Applications
PROGNOSIS for Web ApplicationsPROGNOSIS for Web Applications
PROGNOSIS for Web Applicationsantoni0martin
 
Performance eng prakash.sahu
Performance eng prakash.sahuPerformance eng prakash.sahu
Performance eng prakash.sahu
Dr. Prakash Sahu
 
Continuous Profiling in Production: What, Why and How
Continuous Profiling in Production: What, Why and HowContinuous Profiling in Production: What, Why and How
Continuous Profiling in Production: What, Why and How
Sadiq Jaffer
 
QSpiders - Installation and Brief Dose of Load Runner
QSpiders - Installation and Brief Dose of Load RunnerQSpiders - Installation and Brief Dose of Load Runner
QSpiders - Installation and Brief Dose of Load Runner
Qspiders - Software Testing Training Institute
 
Testing Mozilla Web Properties
Testing Mozilla Web PropertiesTesting Mozilla Web Properties
Testing Mozilla Web Properties
Stephen Donner
 
Client-side Performance Testing
Client-side Performance TestingClient-side Performance Testing
Client-side Performance Testing
Thoughtworks
 
Client-Side Performance Testing
Client-Side Performance TestingClient-Side Performance Testing
Client-Side Performance Testing
Anand Bagmar
 
Performance testing
Performance testingPerformance testing
Performance testing
Chalana Kahandawala
 
BDD/TDD based automation on short-term project on real example, Igor Kokoz
BDD/TDD based automation on short-term project on real example, Igor Kokoz BDD/TDD based automation on short-term project on real example, Igor Kokoz
BDD/TDD based automation on short-term project on real example, Igor Kokoz
Sigma Software
 
Google App Engine for Java v0.0.2
Google App Engine for Java v0.0.2Google App Engine for Java v0.0.2
Google App Engine for Java v0.0.2
Matthew McCullough
 
Load Runner
Load RunnerLoad Runner
Load Runner
Shama Ahsan
 
Website Testing Practices
Website Testing PracticesWebsite Testing Practices
Website Testing Practices
deseomar
 

Similar to TGT#19 - 3 seconds or less - Piotr Liss (20)

JMeter & ColdFusion
JMeter & ColdFusion JMeter & ColdFusion
JMeter & ColdFusion
 
Основы нагрузочного тестирования с инструментом Jmeter
Основы нагрузочного тестирования с инструментом JmeterОсновы нагрузочного тестирования с инструментом Jmeter
Основы нагрузочного тестирования с инструментом Jmeter
 
Client-Side Performance Testing
Client-Side Performance TestingClient-Side Performance Testing
Client-Side Performance Testing
 
Zagat.com Case Study (DrupalCon Denver 2012)
Zagat.com Case Study (DrupalCon Denver 2012)Zagat.com Case Study (DrupalCon Denver 2012)
Zagat.com Case Study (DrupalCon Denver 2012)
 
Stepin evening presented
Stepin evening presentedStepin evening presented
Stepin evening presented
 
Stating the obvious - 121 Test Automation Day, Dublin, 2018
Stating the obvious - 121 Test Automation Day, Dublin, 2018Stating the obvious - 121 Test Automation Day, Dublin, 2018
Stating the obvious - 121 Test Automation Day, Dublin, 2018
 
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
 
PROGNOSIS for Web Applications
PROGNOSIS for Web ApplicationsPROGNOSIS for Web Applications
PROGNOSIS for Web Applications
 
Performance eng prakash.sahu
Performance eng prakash.sahuPerformance eng prakash.sahu
Performance eng prakash.sahu
 
Continuous Profiling in Production: What, Why and How
Continuous Profiling in Production: What, Why and HowContinuous Profiling in Production: What, Why and How
Continuous Profiling in Production: What, Why and How
 
QSpiders - Installation and Brief Dose of Load Runner
QSpiders - Installation and Brief Dose of Load RunnerQSpiders - Installation and Brief Dose of Load Runner
QSpiders - Installation and Brief Dose of Load Runner
 
Testing Mozilla Web Properties
Testing Mozilla Web PropertiesTesting Mozilla Web Properties
Testing Mozilla Web Properties
 
Client-side Performance Testing
Client-side Performance TestingClient-side Performance Testing
Client-side Performance Testing
 
Client-Side Performance Testing
Client-Side Performance TestingClient-Side Performance Testing
Client-Side Performance Testing
 
Performance testing
Performance testingPerformance testing
Performance testing
 
BDD/TDD based automation on short-term project on real example, Igor Kokoz
BDD/TDD based automation on short-term project on real example, Igor Kokoz BDD/TDD based automation on short-term project on real example, Igor Kokoz
BDD/TDD based automation on short-term project on real example, Igor Kokoz
 
Google App Engine for Java v0.0.2
Google App Engine for Java v0.0.2Google App Engine for Java v0.0.2
Google App Engine for Java v0.0.2
 
Load Runner
Load RunnerLoad Runner
Load Runner
 
Website Testing Practices
Website Testing PracticesWebsite Testing Practices
Website Testing Practices
 
North east user group tour
North east user group tourNorth east user group tour
North east user group tour
 

More from Trójmiejska Grupa Testerska

Tgt 23 przemyslaw_pradzynski
Tgt 23 przemyslaw_pradzynskiTgt 23 przemyslaw_pradzynski
Tgt 23 przemyslaw_pradzynski
Trójmiejska Grupa Testerska
 
TGT#21 - Tester eksploracyjny, ostatni zawód na świecie. – Radosław Smilgin
TGT#21 - Tester eksploracyjny, ostatni zawód na świecie. – Radosław SmilginTGT#21 - Tester eksploracyjny, ostatni zawód na świecie. – Radosław Smilgin
TGT#21 - Tester eksploracyjny, ostatni zawód na świecie. – Radosław Smilgin
Trójmiejska Grupa Testerska
 
TGT#19 - Wszyscy jestesmy testerami - Michal Rabczuk
TGT#19 - Wszyscy jestesmy testerami - Michal RabczukTGT#19 - Wszyscy jestesmy testerami - Michal Rabczuk
TGT#19 - Wszyscy jestesmy testerami - Michal Rabczuk
Trójmiejska Grupa Testerska
 
TGT#20 - Ataki XSS - Robert Charewicz
TGT#20 - Ataki XSS - Robert CharewiczTGT#20 - Ataki XSS - Robert Charewicz
TGT#20 - Ataki XSS - Robert Charewicz
Trójmiejska Grupa Testerska
 
TGT#20 - Automated Tests Only For Testers - Kasper Kulikowski
TGT#20 - Automated Tests Only For Testers - Kasper KulikowskiTGT#20 - Automated Tests Only For Testers - Kasper Kulikowski
TGT#20 - Automated Tests Only For Testers - Kasper Kulikowski
Trójmiejska Grupa Testerska
 
TGT#20 - TGT in Numbers - Mateusz Radkiewicz
TGT#20 - TGT in Numbers - Mateusz RadkiewiczTGT#20 - TGT in Numbers - Mateusz Radkiewicz
TGT#20 - TGT in Numbers - Mateusz Radkiewicz
Trójmiejska Grupa Testerska
 
TGT#18 - End-to-end testing using Protractor - Jakub Raniszewski
TGT#18 - End-to-end testing using Protractor - Jakub RaniszewskiTGT#18 - End-to-end testing using Protractor - Jakub Raniszewski
TGT#18 - End-to-end testing using Protractor - Jakub Raniszewski
Trójmiejska Grupa Testerska
 
TGT#18 - BDD with The Three Amigos in API Testing - Julia Szarlej
TGT#18 - BDD with The Three Amigos in API Testing - Julia SzarlejTGT#18 - BDD with The Three Amigos in API Testing - Julia Szarlej
TGT#18 - BDD with The Three Amigos in API Testing - Julia Szarlej
Trójmiejska Grupa Testerska
 
TGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin Kubecki
TGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin KubeckiTGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin Kubecki
TGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin Kubecki
Trójmiejska Grupa Testerska
 
TGT#17 - RestApi testing tips and tricks: how to start testing api of your we...
TGT#17 - RestApi testing tips and tricks: how to start testing api of your we...TGT#17 - RestApi testing tips and tricks: how to start testing api of your we...
TGT#17 - RestApi testing tips and tricks: how to start testing api of your we...
Trójmiejska Grupa Testerska
 
TGT#16 - Pain of test automatization in PAAS/SAAS solutions - Krzysztof Lembi...
TGT#16 - Pain of test automatization in PAAS/SAAS solutions - Krzysztof Lembi...TGT#16 - Pain of test automatization in PAAS/SAAS solutions - Krzysztof Lembi...
TGT#16 - Pain of test automatization in PAAS/SAAS solutions - Krzysztof Lembi...
Trójmiejska Grupa Testerska
 
TGT#16 - Rozmowa techniczna (short talk) - Waldemar Mozoła
TGT#16 - Rozmowa techniczna (short talk) - Waldemar MozołaTGT#16 - Rozmowa techniczna (short talk) - Waldemar Mozoła
TGT#16 - Rozmowa techniczna (short talk) - Waldemar Mozoła
Trójmiejska Grupa Testerska
 
TGT#16 - Sztuka projektowania testów - Agnieszka Garwolińska
TGT#16 - Sztuka projektowania testów - Agnieszka GarwolińskaTGT#16 - Sztuka projektowania testów - Agnieszka Garwolińska
TGT#16 - Sztuka projektowania testów - Agnieszka Garwolińska
Trójmiejska Grupa Testerska
 
TGT#15 - Piramida testów w praktyce (notatki z dyskusji)
TGT#15 - Piramida testów w praktyce (notatki z dyskusji)TGT#15 - Piramida testów w praktyce (notatki z dyskusji)
TGT#15 - Piramida testów w praktyce (notatki z dyskusji)
Trójmiejska Grupa Testerska
 
TGT#15 - Testowanie w metodykach zwinnych czyli skąd testerzy wiedzą więcej o...
TGT#15 - Testowanie w metodykach zwinnych czyli skąd testerzy wiedzą więcej o...TGT#15 - Testowanie w metodykach zwinnych czyli skąd testerzy wiedzą więcej o...
TGT#15 - Testowanie w metodykach zwinnych czyli skąd testerzy wiedzą więcej o...
Trójmiejska Grupa Testerska
 
TGT#14 - @Before – Nie będę automatyzować @After – No dobra, to nie jest taki...
TGT#14 - @Before – Nie będę automatyzować @After – No dobra, to nie jest taki...TGT#14 - @Before – Nie będę automatyzować @After – No dobra, to nie jest taki...
TGT#14 - @Before – Nie będę automatyzować @After – No dobra, to nie jest taki...
Trójmiejska Grupa Testerska
 
TGT#14 - Case Study: Współpraca Testera i Product Ownera w zespole scrumowym ...
TGT#14 - Case Study: Współpraca Testera i Product Ownera w zespole scrumowym ...TGT#14 - Case Study: Współpraca Testera i Product Ownera w zespole scrumowym ...
TGT#14 - Case Study: Współpraca Testera i Product Ownera w zespole scrumowym ...
Trójmiejska Grupa Testerska
 
TGT#13 - UI Tests Automation Framework in Evolve EDM – Case Study - Mateusz R...
TGT#13 - UI Tests Automation Framework in Evolve EDM – Case Study - Mateusz R...TGT#13 - UI Tests Automation Framework in Evolve EDM – Case Study - Mateusz R...
TGT#13 - UI Tests Automation Framework in Evolve EDM – Case Study - Mateusz R...
Trójmiejska Grupa Testerska
 
TG#13 - Nie samym Selenium człowiek żyje, czyli jak tworzyć stabilne testy fu...
TG#13 - Nie samym Selenium człowiek żyje, czyli jak tworzyć stabilne testy fu...TG#13 - Nie samym Selenium człowiek żyje, czyli jak tworzyć stabilne testy fu...
TG#13 - Nie samym Selenium człowiek żyje, czyli jak tworzyć stabilne testy fu...
Trójmiejska Grupa Testerska
 

More from Trójmiejska Grupa Testerska (20)

Rafal prezentacja testowanie ai
Rafal prezentacja testowanie aiRafal prezentacja testowanie ai
Rafal prezentacja testowanie ai
 
Tgt 23 przemyslaw_pradzynski
Tgt 23 przemyslaw_pradzynskiTgt 23 przemyslaw_pradzynski
Tgt 23 przemyslaw_pradzynski
 
TGT#21 - Tester eksploracyjny, ostatni zawód na świecie. – Radosław Smilgin
TGT#21 - Tester eksploracyjny, ostatni zawód na świecie. – Radosław SmilginTGT#21 - Tester eksploracyjny, ostatni zawód na świecie. – Radosław Smilgin
TGT#21 - Tester eksploracyjny, ostatni zawód na świecie. – Radosław Smilgin
 
TGT#19 - Wszyscy jestesmy testerami - Michal Rabczuk
TGT#19 - Wszyscy jestesmy testerami - Michal RabczukTGT#19 - Wszyscy jestesmy testerami - Michal Rabczuk
TGT#19 - Wszyscy jestesmy testerami - Michal Rabczuk
 
TGT#20 - Ataki XSS - Robert Charewicz
TGT#20 - Ataki XSS - Robert CharewiczTGT#20 - Ataki XSS - Robert Charewicz
TGT#20 - Ataki XSS - Robert Charewicz
 
TGT#20 - Automated Tests Only For Testers - Kasper Kulikowski
TGT#20 - Automated Tests Only For Testers - Kasper KulikowskiTGT#20 - Automated Tests Only For Testers - Kasper Kulikowski
TGT#20 - Automated Tests Only For Testers - Kasper Kulikowski
 
TGT#20 - TGT in Numbers - Mateusz Radkiewicz
TGT#20 - TGT in Numbers - Mateusz RadkiewiczTGT#20 - TGT in Numbers - Mateusz Radkiewicz
TGT#20 - TGT in Numbers - Mateusz Radkiewicz
 
TGT#18 - End-to-end testing using Protractor - Jakub Raniszewski
TGT#18 - End-to-end testing using Protractor - Jakub RaniszewskiTGT#18 - End-to-end testing using Protractor - Jakub Raniszewski
TGT#18 - End-to-end testing using Protractor - Jakub Raniszewski
 
TGT#18 - BDD with The Three Amigos in API Testing - Julia Szarlej
TGT#18 - BDD with The Three Amigos in API Testing - Julia SzarlejTGT#18 - BDD with The Three Amigos in API Testing - Julia Szarlej
TGT#18 - BDD with The Three Amigos in API Testing - Julia Szarlej
 
TGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin Kubecki
TGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin KubeckiTGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin Kubecki
TGT#17 - Efektywne testy oprogramowania w środowisku Scrumowym - Marcin Kubecki
 
TGT#17 - RestApi testing tips and tricks: how to start testing api of your we...
TGT#17 - RestApi testing tips and tricks: how to start testing api of your we...TGT#17 - RestApi testing tips and tricks: how to start testing api of your we...
TGT#17 - RestApi testing tips and tricks: how to start testing api of your we...
 
TGT#16 - Pain of test automatization in PAAS/SAAS solutions - Krzysztof Lembi...
TGT#16 - Pain of test automatization in PAAS/SAAS solutions - Krzysztof Lembi...TGT#16 - Pain of test automatization in PAAS/SAAS solutions - Krzysztof Lembi...
TGT#16 - Pain of test automatization in PAAS/SAAS solutions - Krzysztof Lembi...
 
TGT#16 - Rozmowa techniczna (short talk) - Waldemar Mozoła
TGT#16 - Rozmowa techniczna (short talk) - Waldemar MozołaTGT#16 - Rozmowa techniczna (short talk) - Waldemar Mozoła
TGT#16 - Rozmowa techniczna (short talk) - Waldemar Mozoła
 
TGT#16 - Sztuka projektowania testów - Agnieszka Garwolińska
TGT#16 - Sztuka projektowania testów - Agnieszka GarwolińskaTGT#16 - Sztuka projektowania testów - Agnieszka Garwolińska
TGT#16 - Sztuka projektowania testów - Agnieszka Garwolińska
 
TGT#15 - Piramida testów w praktyce (notatki z dyskusji)
TGT#15 - Piramida testów w praktyce (notatki z dyskusji)TGT#15 - Piramida testów w praktyce (notatki z dyskusji)
TGT#15 - Piramida testów w praktyce (notatki z dyskusji)
 
TGT#15 - Testowanie w metodykach zwinnych czyli skąd testerzy wiedzą więcej o...
TGT#15 - Testowanie w metodykach zwinnych czyli skąd testerzy wiedzą więcej o...TGT#15 - Testowanie w metodykach zwinnych czyli skąd testerzy wiedzą więcej o...
TGT#15 - Testowanie w metodykach zwinnych czyli skąd testerzy wiedzą więcej o...
 
TGT#14 - @Before – Nie będę automatyzować @After – No dobra, to nie jest taki...
TGT#14 - @Before – Nie będę automatyzować @After – No dobra, to nie jest taki...TGT#14 - @Before – Nie będę automatyzować @After – No dobra, to nie jest taki...
TGT#14 - @Before – Nie będę automatyzować @After – No dobra, to nie jest taki...
 
TGT#14 - Case Study: Współpraca Testera i Product Ownera w zespole scrumowym ...
TGT#14 - Case Study: Współpraca Testera i Product Ownera w zespole scrumowym ...TGT#14 - Case Study: Współpraca Testera i Product Ownera w zespole scrumowym ...
TGT#14 - Case Study: Współpraca Testera i Product Ownera w zespole scrumowym ...
 
TGT#13 - UI Tests Automation Framework in Evolve EDM – Case Study - Mateusz R...
TGT#13 - UI Tests Automation Framework in Evolve EDM – Case Study - Mateusz R...TGT#13 - UI Tests Automation Framework in Evolve EDM – Case Study - Mateusz R...
TGT#13 - UI Tests Automation Framework in Evolve EDM – Case Study - Mateusz R...
 
TG#13 - Nie samym Selenium człowiek żyje, czyli jak tworzyć stabilne testy fu...
TG#13 - Nie samym Selenium człowiek żyje, czyli jak tworzyć stabilne testy fu...TG#13 - Nie samym Selenium człowiek żyje, czyli jak tworzyć stabilne testy fu...
TG#13 - Nie samym Selenium człowiek żyje, czyli jak tworzyć stabilne testy fu...
 

Recently uploaded

Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 

Recently uploaded (20)

Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 

TGT#19 - 3 seconds or less - Piotr Liss

  • 1. 3 SECONDS OR LESS… PERFORMANCE TESTS INTRODUCTION AUTHOR: PIOTR LISS
  • 2. WHY TEST PERFORMANCE?  Why NOT to test  It will work without it  Why YES  Locate performance downgrade before release  Define the limits  Find our bottleneck before user will  On commercial sites – clients loss  On internal sites – users frustration  DDoS attack simulation
  • 3. WHY TEST PERFORMANCE? GOOGLE RANKING Source: http://www.monitis.com/blog/website-performance-its-impact-on-google-ranking/
  • 4. WHY TEST PERFORMANCE? 3 SECONDS OR LESS Source: https://www.soasta.com/blog/google-mobile-web-performance-study/
  • 5. WHY TEST PERFORMANCE? FINANCIAL ASPECT Source: https://www.doubleclickbygoogle.com/articles/mobile-speed-matters/
  • 6. WHY TEST PERFORMANCE? INCREASING SIZE OF AVERAGE PAGE Source: http://httparchive.org/trends.php?s=All&minlabel=Nov+15+2010&maxlabel=Feb+1+2018
  • 7. WHAT ARE PERFORMANCE TESTS? DEFINITION Test which result generates measurable value regarding efficiency of testing product.  response time  number of users  request per second  bits per second  speed  stability  reliability  capacity  application  web page  service  database
  • 8. WHAT ARE PERFORMANCE TESTS? HOW TO TEST  Requirements – examples:  can handle 1000 request per hour  response time not bigger than 2000ms with 100 concurrent users  can handle 6 hours with active 50 concurrent users  after spike load application returns to previous state  Parameters:  number of active users (connections)  response time  capacity (maximum load)  requests per second
  • 9. WHAT ARE PERFORMANCE TESTS? LOAD TEST How application behave with predictable and safe load (good candidate for Continuous Integration process and response time measurement) 0 10 20 30 40 50 0:00 1:00 2:00 3:00 4:00 5:00 6:00 7:00 8:00 9:00 10:00 11:00 12:00 13:00 14:00 15:00 Users Time LOAD TEST
  • 10. WHAT ARE PERFORMANCE TESTS? STRESS TEST Usable to define border values (good test to define capacity and how infrastructure behave after crash) 0 10 20 30 40 50 60 0:00 1:00 2:00 3:00 4:00 5:00 6:00 7:00 8:00 9:00 10:00 Users Time STRESS TEST
  • 11. WHAT ARE PERFORMANCE TESTS? SPIKE TEST Short and extremely high load to verify do application return to its before test state 0 10 20 30 40 50 60 0:00 1:00 2:00 3:00 4:00 5:00 Users Time SPIKE TEST
  • 12. WHAT ARE PERFORMANCE TESTS? SOAK/ENDURANCE TEST Few hours load tests to verify does application on stable load will not lose its usability from beginning (Memory Leak) 0 10 20 30 40 50 0:01:00 0:30:00 0:59:00 1:28:00 1:57:00 2:26:00 2:55:00 3:24:00 3:53:00 Users Time ENDURANCE TEST
  • 13. HOW TESTING TOOL WORKS? Testing tool emulates user story scenario repeating it X times during Y seconds.
  • 14. HOW TESTING TOOL WORKS?  Eliminate any unrelated with tested product element:  no User Interface if it’s not generated on our application (e.g. no web browser)  eliminate external application on test environment (e.g. in place of external authorization proxy server make a plug that will always emulate same result)  Make as real as possible:  Think time  Cache as a browser  Embedded resources  Stable increasing load  Cookies  Different load regions (if possible)  Environment “warm up”  Divide test to steps
  • 15. TOOLS APACHE JMETER  since: 1998  free license: for all (Apache License Version 2.0)  protocols: web, webservices (SOAP, REST), FTP, Mail, DB, TCP, OS command line and many more  programming experience: minimal (groovy, beanshell)  requirements: any operating system that runs Java  support: accessible community, keen to help, many tutorials, trainings, courses, forum topics and discussions  main advantages:  dozens of free useful plugins that extend functionalities (e.g. additional protocols, visualizations, webdriver)  User-friendly interface  Easy scalability
  • 16. TOOLS VISUAL STUDIO LOAD TESTS  since: 2010  free license: very limited (requires most expensive VS version)  protocols: web, webservices (SOAP, REST)  programming experience: minimum-medium (C#, VB)  requirements: any based on Windows  support: official forum and support group, not to many online tutorials  main advantages:  C# code gives possibility of advance test expansion  Azure integration  easy debugging and recording
  • 17. TOOLS AZURE PERFORMANCE TESTS  since: 2014?  free license: limited  protocols: web  programming experience: none  requirements: web browser + Visual Studio Team Services account  support: not needed  main advantages:  free 20000 user-minutes/month tests on on-demand test machine from desired world region  test import from Visual Studio or JMeter (and partly Fiddler)  possibility to use own Azure infrastructure (additional cost)
  • 18. TOOLS HP LOADRUNNER  since: 1991  free license: community edition (non-commercial)  protocols: web, webservices (SOAP, REST), FTP, Mail, DB, RDP, SAP and many more  programming experience: medium (ANSI C or few other)  requirements: Windows system with 8 cores and 16GB memory  support: many tutorials, trainings, courses, forum topics and discussions  main advantages:  rich reports  integration with many external software (including CI)  good recorder
  • 19. TOOLS GATLING  since: 2011  free license: almost all (Apache License Version 2.0)  protocols: web, DB, Mail, webservices (REST)  programming experience: medium (DSL)  requirements: any operating system that runs Java  support: many web helpers and forum topics  main advantages:  can generate more load from single machine than other tools  simple and user-friendly reports  easy to write plugins
  • 20. TOOLS OTHER  SoapUI  WebLOAD  LoadUI NG Pro  SmartMeter.io  Appvance  NeoLoad  LoadComplete  WAPT  Loadster  LoadImpact  Rational Performance Tester  Testing Anywhere  OpenSTA  QEngine (ManageEngine)  Loadstorm  CloudTest  Httperf  The Grinder  Tsung  Locust  Bees with Machine Guns  Multi-Mechanize  Siege  Apache Bench
  • 21. PERFORMANCE TEST REPORT ANALYSIS  Summary of all filtered test steps with errors, response time and throughput statistics  APDEX index  APDEX is from 0 to 1 scale value that represents how many request finished in given time  toleration threshold - our target time  frustration threshold - acceptable maximum time  Helpful to compare results
  • 22. PERFORMANCE TEST REPORT ANALYSIS  Example charts:  Response times over time  Active threads  Bytes sent/receive over time  Hits per second  Latency vs request  Response time percentiles
  • 23. APACHE JMETER EXAMPLE USAGE - RECORDER  JMeter Recorder  Requires some basic adjustments and web browser configuration  Recorded records have to verified because might contains some not related traffic  Other methods:  SAML recorder on any web browser (usually as plugin)  JMeter request/response analyzys  Fiddler traffic recorder
  • 24. APACHE JMETER EXAMPLE USAGE – ASSERTIONS  Text response (XPath response)  Site header response  Response time  (not necessary) code response
  • 25. APACHE JMETER EXAMPLE USAGE – REAL BROWSER IMITATION  Cache  Embedded resources  Cookies
  • 26. APACHE JMETER EXAMPLE USAGE – TEST RUN  Verification process – GUI mode  Run test using listeners  Run process – non-GUI mode  Run test using command line
  • 27. APACHE JMETER EXAMPLE USAGE – IS THAT ALL?  Extraction rules - passing tokens and IDs between requests  External files - e.g. other credential for every iteration  Loops and IFs - e.g. requesting every few milliseconds until page will get certain content  Scripts - e.g. exactly decide in which moment start timer  Continuous Integration - e.g. integration with Jenkins  Distributed environment - slave machines from different regions to generate load
  • 28. PERFORMANCE TESTS PROBLEMS  Asynchronous request and JavaScript code  Increase performance by better code or by environment improvement?  Do performance tester has enough work for full-time contract?  Test environment vs production environment  What to analyze after performance test run?
  • 29. LINKS AND THANKS  Author: Piotr Liss (www.linkedin.com/in/piotrLiss)  Consultant: Darek Kozon (https://www.linkedin.com/in/dkozon/)  Link: Blazemeter (https://www.blazemeter.com/)