SlideShare a Scribd company logo
1 of 40
Download to read offline
Jmeter Scripting Essentials
Common best practices & approaches to
keep your jmeter script in shape
Anton Serputko
Staff Performance Engineer at ServiceNow
Performance testing:
- community: t.me/perforator_club
- events: youtube.com/@serputko
- trainings, outsourcing, consulting: perforator.me/
Linkedin: linkedin.com/in/serputkoa/
Performance testing and
Jmeter in 40 mins?
No, it’s tips for you to
start using in your work
with Jmeter
New to Jmeter?
Join Jmeter Bootcamp
Source of knowledge
1. Jmeter documentation
2. Blazemeter knowledgebase
3. Stackoverflow
4. Past experience
5. Performance community
What is good Jmeter scenario
1. realistic production-like user flow and load profiles
2. correlation and parameterization
3. handling static data
4. maintainability
5. performance
6. test metrics results gathering
Test results gathering
Instead of
Get this
Test results in influxdb and grafana
1. Get real-time data
2. Extensive monitoring and analysis
3. Test results comparison
4. Configure backend listener props to get
valid results!
5. Contact me to get dashboards
Backend Listener configuration
1. application: ${__TestPlanName}@${__time(yyyy-MM-dd'T'hh:mm:ss,)}
2. test title: ${__P(CUSTOM_INFO,default value)} in application and
3. eventTags: users=1,rampup=,...
4. percentiles: 90;95;99;50
5. summaryOnly: false
Get valid results
quick fix without going too deep in details
edit jmeter.properties file
1. backend_metrics_window_mode=fixed -> timed
2. increase window sizes to 100000
Scenario structure
1. keep scripting style
a. variable naming convention
b. elements location
c. elements naming convention
2. be careful while recording
3. keep scenario logical using Logic
controllers
4. control load profile(% of actions
execution and think times)
5. debug and validate
6. re-use elements if needed
Elements naming
1. name all elements(pre/post processors)
2. do not parameterize name of sampler with ${}
3. replace parameterized value with static value in name
4. add method/details to recorded request url if they have similar
naming
5. name requests for API testing like GET /v1/auth/login
Elements scope
Be sure element is located where you expect
Scenario recording
Static data
Be default:
1. exclude “All suggested excludes” in Http test script
recorder
2. remove all hardcoded static data from the scenario
3. enable retrieve all embedded resources and parallel
downloads
a. use cache manager if retrieving static data
b. use 6 parallel downloads to
c. disable when you understand possible affect
3-d party resources
1. remove from scenario
2. when 3-d party could be left
a. not sure about their performance and it’s not async
b. use sandboxes or contact service providers
3. mock them if 3d party response is required for the flow
3d party examples: Google analytics, Google AdSense, Paypal, UPS shipping,
Browser internal tracking
Using recorder
1. filtering
a. better to leave extra then leave less
b. ask devs/check api docs if not sure
2. requests grouping with transaction
controllers
3. remove toggled redirect requests
4. always think if what you see is logical:
request duplication, extra requests, etc
5. keep recording action as realistic as
possible, pay attention to actions which
triggers ajax requests
Auto replace while recording
a. auto replace variables while recording if User defined variables is in scope of recorder
i. use with caution as more data could be replaced then you expect
b. auto replace with http request defaults to change to blank
Before scripting
Before scripting:
1. analyze logs, analytics, APM statistics from prod
2. define load profile
a. think times between actions
b. requests, actions percent distribution
c. scenario logic: loops, ifs, etc
While scripting
1. keep scenario logic realistic with logic controllers
a. use built-in jmeter components if possible
b. avoid overcomplicating scenario
c. avoid using custom JSR223 scripting when possible
2. add think time to the scenario:
a. Timers in Flow control action between transaction
controllers
3. control % of action execution
a. Throughput controller
b. Weighted switch controller
c. ALWAYS validate percentage distribution when using
throughput/weighted switch controllers on dummy samples
d. Do not use multiple thread groups
4. cover client logic. Extra requests for logged in user, etc
5. use assertions only in key places to reduce overhead
After scripting
1. validate your scenario
2. compare you test result profile with production profile, and adjust if
needed
Non-linear/Custom logic
1. If/While controller:
a. use groovy functions for best performance
b. do NOT use JS in any case
c. do not forget about .toInteger() for numbers
d. check positive and negative flow
2. Parallel controller
a. new connection and internal thread is created
in for each request
3. Weighted switch controller
a. save values by switching focus to another field
JSR223 Elements
1. Use groovy as a must!
a. a lot of solutions on stackoverflow using beanshell
beanshell is compatible with groovy
b. avoid using JS in any case!
2. Use .setIgnore() for JSR223 sampler
3. Use log.info(“{}”,var), out.println to debug groovy scripts
4. Do not use ${} in groovy, use vars.get()
5. Do not use ${VAR}, ${__JmeterFunction()} as they will be
cached
6. do not forget about .toInteger() in comparison
7. choose “cache compiled script if available” option
Scenario parameterization
1. what if scenario is not parameterized
a. will not work on different env
b. data is hardcoded so hitting cache
c. auth will expire after some time
2. types of parameterization
a. static values parameterization- variables
b. requests correlation- post processors
c. user input parameterization- jmeter functions
3. prefer dynamic data over reading from csv files
Variables
1. naming conventions
a. a, var, ProductID, productid - bad
b. PRODUCT_ID, productId - good
2. use User Defined Variables for variables creation
a. use Jmeter properties in variable value
b. variable could be created in Test Plan, but don’t do that
3. use jmeter properties to pass parameters from command line
4. CSV file to get data
a. use csv only for static data like user credentials
b. avoid using dynamic data which frequently changes, use
post processors to get data from server responses
c. use relative path using get base directory + separator
groovy function
d. use just file name if csv is located near jmx
Post processors/extractors
1. Correlating transactions
a. usually requests are dependent from each other, data sent by the client was previously
received from server
b. get data from responses using regex, jsonpath, css selector, boundary and xpath
c. usually no need to parameterize 100% of parameters
i. for example no need to parameterize amount of products on add to cart request
2. use multiple variables using regular expression groups from single extractor
3. use regex, jsonpath tester in view results tree to debug queries
4. set NOT_FOUND default value in extractors
5. do not place regex extractor on transaction controller level as it applies to multiple requests
Jmeter functions
● install Jmeter custom plugins
● use function helper
● re-use jmeter function result as a variable
● if function is used in user defined variables it will be initialized
only 1 time and then not changed when you call the variable
Debugging
1. add 1 debug post-processor on test plan level
a. avoid adding many debug samplers/post-processors
2. validate jmeter errors in jmeter.log
3. common issues with scope: wrong placement, not in element
4. if you put function call in user defined variables it will be initialized
inly 1 time and then not changed when you call the variable
5. validate positive and negative cases for if controllers
6. use log.info(“{}”,var), out.println to debug groovy scripts
7. debug issues/validate logic with dummy sampler
8. common issues working with variables:
a. misspelled ${} with $(), $[], {} without $, etc.
b. misspelled variable name on create or use
c. [ ] space before/after VARIABLE_NAME
Re-using elements
1. module controllers. re-use ONLY really
frequently used actions
2. do not move everything to module
controllers thoughtlessly
a. harder to navigate through scenario
3. if re-usable element is moved the link in
module controller will be broken
Non gui mode
● startup command and parameters
● generate html report
● write results to csv
● set jmeter properties to parameterize scenario
● write to log
● console status logger
● validate jmeter errors in jmeter.log
● run tests in non-gui mode
● parameterize non-gui run with jmeter properties
Jmeter plugins
● plugins in plugin manager might be outdated
● webdriver support plugin was not supporting
headless but github master had this changes
● check for bugs and read documentation(sometimes
several times)
● weighted switch
● parallel controller
Undo/Redo
Modify undo.history.size=0 in jmeter.properties
Use backups
Thank You
Let’s keep in touch: linkedin.com/in/serputkoa/
Join our performance testing:
- community: t.me/perforator_club
- events: youtube.com/@serputko
- trainings, outsourcing, consulting: perforator.me/

More Related Content

What's hot

Moq Presentation
Moq PresentationMoq Presentation
Moq PresentationLynxStar
 
How to successfully grow a code review culture
How to successfully grow a code review cultureHow to successfully grow a code review culture
How to successfully grow a code review cultureNina Zakharenko
 
Testing RESTful Webservices using the REST-assured framework
Testing RESTful Webservices using the REST-assured frameworkTesting RESTful Webservices using the REST-assured framework
Testing RESTful Webservices using the REST-assured frameworkMicha Kops
 
Xray for Jira - Overview
Xray for Jira - OverviewXray for Jira - Overview
Xray for Jira - OverviewXpand IT
 
Unit Testing in Angular
Unit Testing in AngularUnit Testing in Angular
Unit Testing in AngularKnoldus Inc.
 
АНТОН СЕРПУТЬКО «Start performance testing from scratch» QADay 2019
АНТОН СЕРПУТЬКО «Start performance testing from scratch» QADay 2019АНТОН СЕРПУТЬКО «Start performance testing from scratch» QADay 2019
АНТОН СЕРПУТЬКО «Start performance testing from scratch» QADay 2019GoQA
 
An Introduction To Automated API Testing
An Introduction To Automated API TestingAn Introduction To Automated API Testing
An Introduction To Automated API TestingSauce Labs
 
RESTful API Testing using Postman, Newman, and Jenkins
RESTful API Testing using Postman, Newman, and JenkinsRESTful API Testing using Postman, Newman, and Jenkins
RESTful API Testing using Postman, Newman, and JenkinsQASymphony
 
Handle Exceptions in Selenium Webdriver | Edureka
Handle Exceptions in Selenium Webdriver | EdurekaHandle Exceptions in Selenium Webdriver | Edureka
Handle Exceptions in Selenium Webdriver | EdurekaEdureka!
 
API Testing following the Test Pyramid
API Testing following the Test PyramidAPI Testing following the Test Pyramid
API Testing following the Test PyramidElias Nogueira
 
Cucumber presentation
Cucumber presentationCucumber presentation
Cucumber presentationAkhila B
 
Qt test framework
Qt test frameworkQt test framework
Qt test frameworkICS
 
Demystifying observability
Demystifying observability Demystifying observability
Demystifying observability Abigail Bangser
 
¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas
¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas
¡Introducción a Cypress! - Globant Tech Insiders: Automatización de PruebasGlobant
 
Software Testing - Test Design Techniques
Software Testing - Test Design TechniquesSoftware Testing - Test Design Techniques
Software Testing - Test Design TechniquesRegina Vitalicio
 
Automation - web testing with selenium
Automation - web testing with seleniumAutomation - web testing with selenium
Automation - web testing with seleniumTzirla Rozental
 

What's hot (20)

Bdd and spec flow
Bdd and spec flowBdd and spec flow
Bdd and spec flow
 
Moq Presentation
Moq PresentationMoq Presentation
Moq Presentation
 
How to successfully grow a code review culture
How to successfully grow a code review cultureHow to successfully grow a code review culture
How to successfully grow a code review culture
 
Testing RESTful Webservices using the REST-assured framework
Testing RESTful Webservices using the REST-assured frameworkTesting RESTful Webservices using the REST-assured framework
Testing RESTful Webservices using the REST-assured framework
 
Xray for Jira - Overview
Xray for Jira - OverviewXray for Jira - Overview
Xray for Jira - Overview
 
Unit Testing in Angular
Unit Testing in AngularUnit Testing in Angular
Unit Testing in Angular
 
АНТОН СЕРПУТЬКО «Start performance testing from scratch» QADay 2019
АНТОН СЕРПУТЬКО «Start performance testing from scratch» QADay 2019АНТОН СЕРПУТЬКО «Start performance testing from scratch» QADay 2019
АНТОН СЕРПУТЬКО «Start performance testing from scratch» QADay 2019
 
An Introduction To Automated API Testing
An Introduction To Automated API TestingAn Introduction To Automated API Testing
An Introduction To Automated API Testing
 
Jenkins with SonarQube
Jenkins with SonarQubeJenkins with SonarQube
Jenkins with SonarQube
 
RESTful API Testing using Postman, Newman, and Jenkins
RESTful API Testing using Postman, Newman, and JenkinsRESTful API Testing using Postman, Newman, and Jenkins
RESTful API Testing using Postman, Newman, and Jenkins
 
Handle Exceptions in Selenium Webdriver | Edureka
Handle Exceptions in Selenium Webdriver | EdurekaHandle Exceptions in Selenium Webdriver | Edureka
Handle Exceptions in Selenium Webdriver | Edureka
 
API Testing following the Test Pyramid
API Testing following the Test PyramidAPI Testing following the Test Pyramid
API Testing following the Test Pyramid
 
Cucumber presentation
Cucumber presentationCucumber presentation
Cucumber presentation
 
Qt test framework
Qt test frameworkQt test framework
Qt test framework
 
Demystifying observability
Demystifying observability Demystifying observability
Demystifying observability
 
¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas
¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas
¡Introducción a Cypress! - Globant Tech Insiders: Automatización de Pruebas
 
Cypress Testing.pptx
Cypress Testing.pptxCypress Testing.pptx
Cypress Testing.pptx
 
Software Testing - Test Design Techniques
Software Testing - Test Design TechniquesSoftware Testing - Test Design Techniques
Software Testing - Test Design Techniques
 
Automation - web testing with selenium
Automation - web testing with seleniumAutomation - web testing with selenium
Automation - web testing with selenium
 
Testing Angular
Testing AngularTesting Angular
Testing Angular
 

Similar to АНТОН СЕРПУТЬКО « Якісний перфоманс сценарій в Jmeter, це як?» Online QADay 2023

Perf test Eng interview preparation
Perf test Eng interview preparationPerf test Eng interview preparation
Perf test Eng interview preparationpratik mohite
 
ScalaUA - distage: Staged Dependency Injection
ScalaUA - distage: Staged Dependency InjectionScalaUA - distage: Staged Dependency Injection
ScalaUA - distage: Staged Dependency Injection7mind
 
Dive into Angular, part 5: Experience
Dive into Angular, part 5: ExperienceDive into Angular, part 5: Experience
Dive into Angular, part 5: ExperienceOleksii Prohonnyi
 
Eradicate Flaky Tests - AppiumConf 2021
Eradicate Flaky Tests - AppiumConf 2021Eradicate Flaky Tests - AppiumConf 2021
Eradicate Flaky Tests - AppiumConf 2021Anand Bagmar
 
Software Testing
Software TestingSoftware Testing
Software TestingAdroitLogic
 
Introduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe CommerceIntroduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe CommerceBartosz Górski
 
Introduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe CommerceIntroduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe CommerceBartosz Górski
 
Perfromane Test Tool jmeter
Perfromane Test Tool jmeterPerfromane Test Tool jmeter
Perfromane Test Tool jmeterNaga Mallala
 
Loadrunner Onloine Training
Loadrunner Onloine TrainingLoadrunner Onloine Training
Loadrunner Onloine TrainingNagendra Kumar
 
Guidelines and Best Practices for Sencha Projects
Guidelines and Best Practices for Sencha ProjectsGuidelines and Best Practices for Sencha Projects
Guidelines and Best Practices for Sencha ProjectsAmitaSuri
 
Performance testing checklist.pdf
Performance testing checklist.pdfPerformance testing checklist.pdf
Performance testing checklist.pdfAnuSelvaraj2
 
The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.
The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.
The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.Test Evolve
 
Droidcon Spain 2016 - The Pragmatic Android Programmer: from hype to reality
 Droidcon Spain 2016 - The Pragmatic Android Programmer: from hype to reality Droidcon Spain 2016 - The Pragmatic Android Programmer: from hype to reality
Droidcon Spain 2016 - The Pragmatic Android Programmer: from hype to realityDaniel Gallego Vico
 
How to kill test flake in appium
How to kill test flake in appiumHow to kill test flake in appium
How to kill test flake in appiumGaurav Singh
 
Automation frameworks
Automation frameworksAutomation frameworks
Automation frameworksVishwanath KC
 
Mykola Kovsh - Functional API automation with Jmeter
Mykola Kovsh - Functional API automation with JmeterMykola Kovsh - Functional API automation with Jmeter
Mykola Kovsh - Functional API automation with JmeterIevgenii Katsan
 

Similar to АНТОН СЕРПУТЬКО « Якісний перфоманс сценарій в Jmeter, це як?» Online QADay 2023 (20)

Perf test Eng interview preparation
Perf test Eng interview preparationPerf test Eng interview preparation
Perf test Eng interview preparation
 
ScalaUA - distage: Staged Dependency Injection
ScalaUA - distage: Staged Dependency InjectionScalaUA - distage: Staged Dependency Injection
ScalaUA - distage: Staged Dependency Injection
 
Dive into Angular, part 5: Experience
Dive into Angular, part 5: ExperienceDive into Angular, part 5: Experience
Dive into Angular, part 5: Experience
 
Eradicate Flaky Tests - AppiumConf 2021
Eradicate Flaky Tests - AppiumConf 2021Eradicate Flaky Tests - AppiumConf 2021
Eradicate Flaky Tests - AppiumConf 2021
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Test AI/ML Applications
Test AI/ML ApplicationsTest AI/ML Applications
Test AI/ML Applications
 
Load testing jmeter
Load testing jmeterLoad testing jmeter
Load testing jmeter
 
Introduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe CommerceIntroduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe Commerce
 
Introduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe CommerceIntroduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe Commerce
 
Test Automation
Test AutomationTest Automation
Test Automation
 
Perfromane Test Tool jmeter
Perfromane Test Tool jmeterPerfromane Test Tool jmeter
Perfromane Test Tool jmeter
 
Loadrunner Onloine Training
Loadrunner Onloine TrainingLoadrunner Onloine Training
Loadrunner Onloine Training
 
Guidelines and Best Practices for Sencha Projects
Guidelines and Best Practices for Sencha ProjectsGuidelines and Best Practices for Sencha Projects
Guidelines and Best Practices for Sencha Projects
 
MSSQL Queries.pdf
MSSQL Queries.pdfMSSQL Queries.pdf
MSSQL Queries.pdf
 
Performance testing checklist.pdf
Performance testing checklist.pdfPerformance testing checklist.pdf
Performance testing checklist.pdf
 
The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.
The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.
The complete guide to BDD + Cucumber Best Practices and Anti-Patterns.
 
Droidcon Spain 2016 - The Pragmatic Android Programmer: from hype to reality
 Droidcon Spain 2016 - The Pragmatic Android Programmer: from hype to reality Droidcon Spain 2016 - The Pragmatic Android Programmer: from hype to reality
Droidcon Spain 2016 - The Pragmatic Android Programmer: from hype to reality
 
How to kill test flake in appium
How to kill test flake in appiumHow to kill test flake in appium
How to kill test flake in appium
 
Automation frameworks
Automation frameworksAutomation frameworks
Automation frameworks
 
Mykola Kovsh - Functional API automation with Jmeter
Mykola Kovsh - Functional API automation with JmeterMykola Kovsh - Functional API automation with Jmeter
Mykola Kovsh - Functional API automation with Jmeter
 

More from GoQA

Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...
Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...
Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...GoQA
 
АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»
АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»
АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»GoQA
 
КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»
КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»
КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»GoQA
 
МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...
МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...
МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...GoQA
 
ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»
ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»
ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»GoQA
 
ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»
ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»
ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»GoQA
 
ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»
ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»
ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»GoQA
 
СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...
СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...
СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...GoQA
 
БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»
БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»
БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»GoQA
 
ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»
ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»
ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»GoQA
 
ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»
ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»
ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»GoQA
 
КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...
КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...
КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...GoQA
 
НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...
НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...
НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...GoQA
 
РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»
РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»
РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»GoQA
 
СЕРГІЙ РУСІНЧУК «Розкриття майстерності QA команд через KPI»
СЕРГІЙ РУСІНЧУК «Розкриття майстерності QA команд через KPI»СЕРГІЙ РУСІНЧУК «Розкриття майстерності QA команд через KPI»
СЕРГІЙ РУСІНЧУК «Розкриття майстерності QA команд через KPI»GoQA
 
КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...
КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...
КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...GoQA
 
Слуцька Вікторія - Виступити і не наступити на граблі: Як виступати QA спеціа...
Слуцька Вікторія - Виступити і не наступити на граблі: Як виступати QA спеціа...Слуцька Вікторія - Виступити і не наступити на граблі: Як виступати QA спеціа...
Слуцька Вікторія - Виступити і не наступити на граблі: Як виступати QA спеціа...GoQA
 
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Планування стратегії розвитку тестування на проекті»
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Планування стратегії розвитку тестування на проекті»ОЛЕКСАНДР ХОТЕМСЬКИЙ «Планування стратегії розвитку тестування на проекті»
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Планування стратегії розвитку тестування на проекті»GoQA
 
ОЛЕКСІЙ ОСТАПОВ «Створення плагінів для pytest»
ОЛЕКСІЙ ОСТАПОВ «Створення плагінів для pytest»ОЛЕКСІЙ ОСТАПОВ «Створення плагінів для pytest»
ОЛЕКСІЙ ОСТАПОВ «Створення плагінів для pytest»GoQA
 
РОМАН ДУМАНСЬКИЙ «Testing the application in the Amazon Cloud»
РОМАН ДУМАНСЬКИЙ «Testing the application in the Amazon Cloud»РОМАН ДУМАНСЬКИЙ «Testing the application in the Amazon Cloud»
РОМАН ДУМАНСЬКИЙ «Testing the application in the Amazon Cloud»GoQA
 

More from GoQA (20)

Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...
Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...
Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...
 
АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»
АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»
АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»
 
КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»
КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»
КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»
 
МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...
МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...
МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...
 
ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»
ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»
ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»
 
ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»
ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»
ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»
 
ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»
ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»
ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»
 
СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...
СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...
СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...
 
БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»
БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»
БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»
 
ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»
ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»
ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»
 
ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»
ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»
ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»
 
КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...
КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...
КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...
 
НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...
НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...
НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...
 
РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»
РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»
РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»
 
СЕРГІЙ РУСІНЧУК «Розкриття майстерності QA команд через KPI»
СЕРГІЙ РУСІНЧУК «Розкриття майстерності QA команд через KPI»СЕРГІЙ РУСІНЧУК «Розкриття майстерності QA команд через KPI»
СЕРГІЙ РУСІНЧУК «Розкриття майстерності QA команд через KPI»
 
КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...
КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...
КАТЕРИНА АБЗЯТОВА - Certify with confidence: ISTQB Foundation 4.0. Common err...
 
Слуцька Вікторія - Виступити і не наступити на граблі: Як виступати QA спеціа...
Слуцька Вікторія - Виступити і не наступити на граблі: Як виступати QA спеціа...Слуцька Вікторія - Виступити і не наступити на граблі: Як виступати QA спеціа...
Слуцька Вікторія - Виступити і не наступити на граблі: Як виступати QA спеціа...
 
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Планування стратегії розвитку тестування на проекті»
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Планування стратегії розвитку тестування на проекті»ОЛЕКСАНДР ХОТЕМСЬКИЙ «Планування стратегії розвитку тестування на проекті»
ОЛЕКСАНДР ХОТЕМСЬКИЙ «Планування стратегії розвитку тестування на проекті»
 
ОЛЕКСІЙ ОСТАПОВ «Створення плагінів для pytest»
ОЛЕКСІЙ ОСТАПОВ «Створення плагінів для pytest»ОЛЕКСІЙ ОСТАПОВ «Створення плагінів для pytest»
ОЛЕКСІЙ ОСТАПОВ «Створення плагінів для pytest»
 
РОМАН ДУМАНСЬКИЙ «Testing the application in the Amazon Cloud»
РОМАН ДУМАНСЬКИЙ «Testing the application in the Amazon Cloud»РОМАН ДУМАНСЬКИЙ «Testing the application in the Amazon Cloud»
РОМАН ДУМАНСЬКИЙ «Testing the application in the Amazon Cloud»
 

Recently uploaded

80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...Nguyen Thanh Tu Collection
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Pooja Bhuva
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxVishalSingh1417
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...Nguyen Thanh Tu Collection
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structuredhanjurrannsibayan2
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxmarlenawright1
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptxMaritesTamaniVerdade
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Association for Project Management
 

Recently uploaded (20)

80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 

АНТОН СЕРПУТЬКО « Якісний перфоманс сценарій в Jmeter, це як?» Online QADay 2023

  • 1. Jmeter Scripting Essentials Common best practices & approaches to keep your jmeter script in shape
  • 2. Anton Serputko Staff Performance Engineer at ServiceNow Performance testing: - community: t.me/perforator_club - events: youtube.com/@serputko - trainings, outsourcing, consulting: perforator.me/ Linkedin: linkedin.com/in/serputkoa/
  • 4. No, it’s tips for you to start using in your work with Jmeter
  • 5. New to Jmeter? Join Jmeter Bootcamp
  • 6. Source of knowledge 1. Jmeter documentation 2. Blazemeter knowledgebase 3. Stackoverflow 4. Past experience 5. Performance community
  • 7. What is good Jmeter scenario 1. realistic production-like user flow and load profiles 2. correlation and parameterization 3. handling static data 4. maintainability 5. performance 6. test metrics results gathering
  • 11.
  • 12. Test results in influxdb and grafana 1. Get real-time data 2. Extensive monitoring and analysis 3. Test results comparison 4. Configure backend listener props to get valid results! 5. Contact me to get dashboards
  • 13. Backend Listener configuration 1. application: ${__TestPlanName}@${__time(yyyy-MM-dd'T'hh:mm:ss,)} 2. test title: ${__P(CUSTOM_INFO,default value)} in application and 3. eventTags: users=1,rampup=,... 4. percentiles: 90;95;99;50 5. summaryOnly: false
  • 14. Get valid results quick fix without going too deep in details edit jmeter.properties file 1. backend_metrics_window_mode=fixed -> timed 2. increase window sizes to 100000
  • 15. Scenario structure 1. keep scripting style a. variable naming convention b. elements location c. elements naming convention 2. be careful while recording 3. keep scenario logical using Logic controllers 4. control load profile(% of actions execution and think times) 5. debug and validate 6. re-use elements if needed
  • 16. Elements naming 1. name all elements(pre/post processors) 2. do not parameterize name of sampler with ${} 3. replace parameterized value with static value in name 4. add method/details to recorded request url if they have similar naming 5. name requests for API testing like GET /v1/auth/login
  • 17. Elements scope Be sure element is located where you expect
  • 19. Static data Be default: 1. exclude “All suggested excludes” in Http test script recorder 2. remove all hardcoded static data from the scenario 3. enable retrieve all embedded resources and parallel downloads a. use cache manager if retrieving static data b. use 6 parallel downloads to c. disable when you understand possible affect
  • 20. 3-d party resources 1. remove from scenario 2. when 3-d party could be left a. not sure about their performance and it’s not async b. use sandboxes or contact service providers 3. mock them if 3d party response is required for the flow 3d party examples: Google analytics, Google AdSense, Paypal, UPS shipping, Browser internal tracking
  • 21. Using recorder 1. filtering a. better to leave extra then leave less b. ask devs/check api docs if not sure 2. requests grouping with transaction controllers 3. remove toggled redirect requests 4. always think if what you see is logical: request duplication, extra requests, etc 5. keep recording action as realistic as possible, pay attention to actions which triggers ajax requests
  • 22. Auto replace while recording a. auto replace variables while recording if User defined variables is in scope of recorder i. use with caution as more data could be replaced then you expect b. auto replace with http request defaults to change to blank
  • 23. Before scripting Before scripting: 1. analyze logs, analytics, APM statistics from prod 2. define load profile a. think times between actions b. requests, actions percent distribution c. scenario logic: loops, ifs, etc
  • 24. While scripting 1. keep scenario logic realistic with logic controllers a. use built-in jmeter components if possible b. avoid overcomplicating scenario c. avoid using custom JSR223 scripting when possible 2. add think time to the scenario: a. Timers in Flow control action between transaction controllers 3. control % of action execution a. Throughput controller b. Weighted switch controller c. ALWAYS validate percentage distribution when using throughput/weighted switch controllers on dummy samples d. Do not use multiple thread groups 4. cover client logic. Extra requests for logged in user, etc 5. use assertions only in key places to reduce overhead
  • 25. After scripting 1. validate your scenario 2. compare you test result profile with production profile, and adjust if needed
  • 26. Non-linear/Custom logic 1. If/While controller: a. use groovy functions for best performance b. do NOT use JS in any case c. do not forget about .toInteger() for numbers d. check positive and negative flow 2. Parallel controller a. new connection and internal thread is created in for each request 3. Weighted switch controller a. save values by switching focus to another field
  • 27. JSR223 Elements 1. Use groovy as a must! a. a lot of solutions on stackoverflow using beanshell beanshell is compatible with groovy b. avoid using JS in any case! 2. Use .setIgnore() for JSR223 sampler 3. Use log.info(“{}”,var), out.println to debug groovy scripts 4. Do not use ${} in groovy, use vars.get() 5. Do not use ${VAR}, ${__JmeterFunction()} as they will be cached 6. do not forget about .toInteger() in comparison 7. choose “cache compiled script if available” option
  • 28. Scenario parameterization 1. what if scenario is not parameterized a. will not work on different env b. data is hardcoded so hitting cache c. auth will expire after some time 2. types of parameterization a. static values parameterization- variables b. requests correlation- post processors c. user input parameterization- jmeter functions 3. prefer dynamic data over reading from csv files
  • 29. Variables 1. naming conventions a. a, var, ProductID, productid - bad b. PRODUCT_ID, productId - good 2. use User Defined Variables for variables creation a. use Jmeter properties in variable value b. variable could be created in Test Plan, but don’t do that 3. use jmeter properties to pass parameters from command line 4. CSV file to get data a. use csv only for static data like user credentials b. avoid using dynamic data which frequently changes, use post processors to get data from server responses c. use relative path using get base directory + separator groovy function d. use just file name if csv is located near jmx
  • 30. Post processors/extractors 1. Correlating transactions a. usually requests are dependent from each other, data sent by the client was previously received from server b. get data from responses using regex, jsonpath, css selector, boundary and xpath c. usually no need to parameterize 100% of parameters i. for example no need to parameterize amount of products on add to cart request 2. use multiple variables using regular expression groups from single extractor 3. use regex, jsonpath tester in view results tree to debug queries 4. set NOT_FOUND default value in extractors 5. do not place regex extractor on transaction controller level as it applies to multiple requests
  • 31. Jmeter functions ● install Jmeter custom plugins ● use function helper ● re-use jmeter function result as a variable ● if function is used in user defined variables it will be initialized only 1 time and then not changed when you call the variable
  • 32. Debugging 1. add 1 debug post-processor on test plan level a. avoid adding many debug samplers/post-processors 2. validate jmeter errors in jmeter.log 3. common issues with scope: wrong placement, not in element 4. if you put function call in user defined variables it will be initialized inly 1 time and then not changed when you call the variable 5. validate positive and negative cases for if controllers 6. use log.info(“{}”,var), out.println to debug groovy scripts 7. debug issues/validate logic with dummy sampler 8. common issues working with variables: a. misspelled ${} with $(), $[], {} without $, etc. b. misspelled variable name on create or use c. [ ] space before/after VARIABLE_NAME
  • 33. Re-using elements 1. module controllers. re-use ONLY really frequently used actions 2. do not move everything to module controllers thoughtlessly a. harder to navigate through scenario 3. if re-usable element is moved the link in module controller will be broken
  • 34. Non gui mode ● startup command and parameters ● generate html report ● write results to csv ● set jmeter properties to parameterize scenario ● write to log ● console status logger ● validate jmeter errors in jmeter.log ● run tests in non-gui mode ● parameterize non-gui run with jmeter properties
  • 35. Jmeter plugins ● plugins in plugin manager might be outdated ● webdriver support plugin was not supporting headless but github master had this changes ● check for bugs and read documentation(sometimes several times) ● weighted switch ● parallel controller
  • 37. Modify undo.history.size=0 in jmeter.properties
  • 39.
  • 40. Thank You Let’s keep in touch: linkedin.com/in/serputkoa/ Join our performance testing: - community: t.me/perforator_club - events: youtube.com/@serputko - trainings, outsourcing, consulting: perforator.me/