SlideShare una empresa de Scribd logo
1 de 55
www.planittesting.com
BDDP
A Discussion on Behaviour Driven
Development for Performance
Joel Deutscher
Performance Practice Lead
jd@planittesting.com
© Planit Software Testing 1
www.planittesting.com © Planit Software Testing 2
Continuous Performance
Testing
www.planittesting.com © Planit Software Testing 3
Meaningful Continuous
Performance Testing
And can BDD get us there?
www.planittesting.com
My Background
© Planit Software Testing 4
www.planittesting.com © Planit Software Testing 5
It’s my opinion
Which is very likely to be incorrect
www.planittesting.com
Why can’t I have a big go button?
© Planit Software Testing 6
www.planittesting.com
There are lots of excuses!
© Planit Software Testing 7
www.planittesting.com
A typical release based process
© Planit Software Testing 8
www.planittesting.com © Planit Software Testing 9
So what could we do?
We need to start somewhere
www.planittesting.com
Automated Execution and Reporting
© Planit Software Testing 10
www.planittesting.com
We actually created a go button!
© Planit Software Testing 11
www.planittesting.com
Automated Reporting – SLA Based
© Planit Software Testing 12
www.planittesting.com
Automated Reporting - Baseline
© Planit Software Testing 13
www.planittesting.com
Automated Pass / Fail Notifications
© Planit Software Testing 14
www.planittesting.com
Test Preparation
© Planit Software Testing 15
www.planittesting.com © Planit Software Testing 16
How do we get to continuous
performance testing?
… and make it meaningful
www.planittesting.com
So what is left?
© Planit Software Testing 17
www.planittesting.com © Planit Software Testing 18
What are the cool kids doing?
www.planittesting.com
TDD
Did we build the system right?
BDD
Did we build the right system?
© Planit Software Testing 19
www.planittesting.com
“TDD took extra time upfront the resulting quality
was higher than teams that adopted a non-TDD
approach by an order of at least two times.”
Evaluating the Efficacy of Test-Driven Development: Industrial Case Studies
Thirumalesh Bhat and Nachiappan Nagappan
© Planit Software Testing 20
www.planittesting.com
Extra Time Upfront?
© Planit Software Testing 21
www.planittesting.com © Planit Software Testing 22
Why isn’t performance
considered earlier?
Requirements
www.planittesting.com
• Functional Requirements are usually terrible
• Non-Functional Requirements are worse!
• Garbage in, Garbage Out
© Planit Software Testing 23
Requirements
www.planittesting.com
• Requirements gathering is the hardest part of most
performance tests
• Manual and laborious process
• Why do we need to manually evaluate the risk if its
properly defined in requirements?
© Planit Software Testing 24
Why does it matter?
www.planittesting.com © Planit Software Testing 25
Why are they so bad?
www.planittesting.com
• Requirements are written by people with no idea of what they want
• Performance is not well understood and is either:
• Assumed or considered the "Of course" stuff
• Considered but not well defined “I want it to be fast”
• Considered but of no actual benefit “Must not be slower than the
existing platform”
• Considered but pointless “I want it as fast as the industry average”
• Not considered at all
© Planit Software Testing 26
Its Complicated
www.planittesting.com © Planit Software Testing 27
OK Google, What are some
good NFRs?
This should be good…
www.planittesting.com
“System Y shall process a minimum of 8 transactions per
“second”
and
“The system must handle 1,000 transactions per second”
© Planit Software Testing 28
This is what I found…
www.planittesting.com © Planit Software Testing 29
What's wrong with that?
Where do I begin.
www.planittesting.com
The system must handle 1,000 transactions per second
• What should the response times should there be when it hits
1,000 transactions per second
• What type of transactions?
• Is it OK if the CPU maxes out to 100% while this is happening?
• How long should it be able to handle 1,000 per second for?
• Where should this be measured?
• What is an acceptable error rate if any?
© Planit Software Testing 30
Its not serving its purpose
www.planittesting.com
“System Y shall process a minimum of 8 transactions per second”
and
“The system must handle 1,000 transactions per second”
© Planit Software Testing 31
Where did I find these examples?
“System Y shall process a minimum of 8 transactions per second”
and
“The system must handle 1,000 transactions per second”
www.planittesting.com © Planit Software Testing 32
How do you automate
performance testing without
good requirements?
www.planittesting.com
Either through Non-Functional Requirements or Server Logs we
tend to get the information like:
We want to run a test that has:
• 1000 logins per hour
• 800 Transaction History Views per Hour
• 300 Fund Transfers
• 50 BPay Transactions
• 5 Credit Card Applications
© Planit Software Testing 33
Volumetrics are not requirements
www.planittesting.com © Planit Software Testing 34
Oh, and everything should be
as fast as the current release
… which is?
www.planittesting.com © Planit Software Testing 35
Could clear requirements
defined early be the answer?
www.planittesting.com
The internet banking platform must:
• support 1000 valid user logins per hour
• with a 95 percentile response time of 1 second
• with a maximum response time of 3 seconds
• with response times measured at the web server
• with a maximum error rate of 1%
• with peak platform usage occurring on the system
• with system resource utilisation not breaching 60% on any
component
© Planit Software Testing 36
Login Page NFR
www.planittesting.com © Planit Software Testing 37
User Stories Can help
www.planittesting.com
As a <type of user>,
I want <some goal>
so that <some reason>
© Planit Software Testing 38
User Stories
www.planittesting.com
As an Account Holder,
I want to login to internet banking
So that I can do banking on the internet
© Planit Software Testing 39
User Stories
www.planittesting.com © Planit Software Testing 40
User Stories for NFRs
www.planittesting.com
As an Account Holder,
I want to login to internet banking within 3 seconds
So that I can transact on the internet
© Planit Software Testing 41
User Stories
www.planittesting.com
Title (one line describing the story)
Narrative:
As a [role]
I want [feature]
So that [benefit]
Acceptance Criteria: (presented as Scenarios)
Scenario 1: Title
Given [context]
And [some more context]...
When [event]
Then [outcome]
And [another outcome]...
© Planit Software Testing 42
User Stories and Acceptance Criteria
www.planittesting.com © Planit Software Testing 43
Its in the acceptance criteria?
But how detailed should we get for NFRs?
www.planittesting.com
Scenario: Submit the contact form with correct data (declarative)
Given I am on the company contact page
When I submit the form with correct data
Then I should see the correct message
© Planit Software Testing 44
A declarative (informative) example
www.planittesting.com
Scenario: Submit the contact form with correct data (imperative)
Given I am on the company contact page
When I set "What is your name?" to “Joel"
And I set “What is your query to?" to “I wish to discuss performance testing"
And I set "What is your email address to “jd@planittesting.com"
And I click "Submit"
Then I should see the message "Thanks! The Planit team will be in contact shortly."
© Planit Software Testing 45
An imperative (communicative) example
www.planittesting.com © Planit Software Testing 46
Imperative
www.planittesting.com
Scenario: Submit the contact form with correct data (imperative)
Given I am on the company contact page with 1000 concurrent users on the site
When I set "What is your name?" to “Joel"
And I set “What is your query to?" to “I wish to discuss performance testing"
And I set "What is your email address to “jd@planittesting.com"
And I click "Submit"
Then I should see the message "Thanks! The Planit team will be in contact shortly.“
And the response should be returned within 2 seconds 95 percent of the time
And the response should not take more than 5 seconds to return
And the error rate should be less than 1%
And the server utilisation should be less than 60% for all components
© Planit Software Testing 47
Scenario with Performance Requirements
www.planittesting.com © Planit Software Testing 48
Problem Solved?
Now we just need to automate it….
www.planittesting.com
PROS
• Performance Considered Early
• Developers can Design for
Performance
• Seems easier to specify
CONS
• Its not exactly elegant
• Potentially gets in the way of
delivering functionality
• Very easy to get wrong
© Planit Software Testing 49
Its not exactly simple
www.planittesting.com © Planit Software Testing 50
Moon Shot?
www.planittesting.com
Scenario: Weather Service
Given the webservice named Weather
When I call the method GetCurrentTemperature with a valid postcode 1000 times in an hour
Then I expect it to return an containing the current temperature
And the response should be returned within 2 seconds 95 percent of the time
And the response should not take more than 5 seconds to return
And the error rate should be less than 1%
And the server utilisation should be less than 60% for all components
© Planit Software Testing 51
Weather Micro Service
www.planittesting.com © Planit Software Testing 52
Meaningful Continuous
Performance Testing
Can BDD help get us there?
www.planittesting.com
• Repeatable Environment
• Managing Test Data
• SLA vs Baseline Comparison
• Trend Analysis
© Planit Software Testing 53
There are some other considerations
www.planittesting.com
• BDD for Performance is still a work in progress
• User Story / Acceptance Test Format is not ideal in every
situation
• Works well for simple web services, less so for socialised
performance tests
• System Resource Utilisation Metrics are important, though
shouldn’t be in every acceptance scenario
© Planit Software Testing 54
The Story has Just Begun
www.planittesting.com © Planit Software Testing 55
What has been your
experience?
Please come and speak to me throughout the day

Más contenido relacionado

Último

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 

Último (20)

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 

Destacado

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationErica Santiago
 

Destacado (20)

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 

BDDP: Behaviour Driven Development for Performance (NZ Tech Day - Presentation 1)

Notas del editor

  1. The reason we are here, getting towards continuous performance testing to increase quality TDD and BDD were both designed to increase quality by testing earlier
  2. I don’t think running some simple tests should be our desired end state
  3. 18 Years in Performance Testing Involved at all levels Small tests to setting up enterprise COEs Working towards continuous performance testing for a number of years In-between my day job Managing Non-Functional Testing in NSW, Australia for Planit
  4. We are all always learning, and everything is specific to your domain and what you are trying to achieve This is why consultants exist Consultants jokes aside… There might be more questions in here than answers. I think that’s ok?
  5. In the early days, we used to sit in dark offices at night running tests We moved to remote testing which was better (sitting in a dark hotel room or house) The current journey all began with a simple request
  6. Performance testing and automation are very different Performance scripts are very fragile What about what else is happening in the environment The database will need to be refreshed each time We want to restart the servers before each run You wont understand the results anyway I don’t know how
  7. Well, its not typical, its actually a pretty good one
  8. So once I calmed down, went outside sat down looked at some trees Cried a little I thought…. Heck yes…
  9. Well, some analysis anyway. Enough to know if it was worth analysing
  10. This is the part where people say WHAT? You automated the script development? Well, kind of… there are 2 ways Automate the recording Convert from Truclient which is actually awesome How do we get to continuous performance testing?
  11. It is achievable
  12. I mean the hard requirements / planning stuff
  13. It is achievable
  14. Test Driven Development (TDD) is the practice of writing a small automated Unit Test which initially fails, then writing the simplest and smallest amount of application code required to pass the test before refactoring and improving the quality of the code. Behaviour Driven Development (BDD) is based upon Test Driven Development, but where TDD focuses on the inner workings of the software and the accuracy of the code (Unit Tests), BDD focuses on the requirements and the business value of the software (Acceptance Tests).
  15. They certainly didn’t invite the performance testing team to this early engagement? What the?
  16. Testing was always compressed at the end of the development cycle We have moved “Actual” testing so early that its done before the system is even build. By actual testing, I don’t mean static analysis of requirements… because lets face it, that’s not testing, its well, reading
  17. Requirements are a big problem in performance testing Business Buy in is critical Main problem with failed performance tests Really difficult to get right
  18. Requirements are a big problem in performance testing Business Buy in is critical Main problem with failed performance tests Really difficult to get right
  19. Someone must be doing this well? This must be something that is supported by the latest tools that cost $$$$$$$$$$$$$ There must be a way out!
  20. The login has degraded by 10%.... Which we have no idea if that is acceptable or not. What if it is slower due to a change that has to happen?
  21. Now Test That!
  22. That’s a bit messy
  23. Declarative Style Very Specific Has amounts in there
  24. Declarative Style Very Specific Has amounts in there
  25. Declarative Style Very Specific Has amounts in there
  26. Wait a minute
  27. Declarative Style Very Specific Has amounts in there
  28. Probably. Should we try and simplify things? Micro services are designed to operate independently of any other system. They do one thing, and do one thing well
  29. Should we try and simplify things? Micro services are designed to operate independently of any other system. They do one thing, and do one thing well