SlideShare uma empresa Scribd logo
1 de 12
Acceptance Test Driven
Development (ATDD)
in practice
 Ketan Soni
BAs specify
requirements
Devs develop
functionality
QAs identify
test scenarios
BAs verifies
functionality
Business sign
off
Typical flow in industry
QAs -Testing +
automate scenarios
From “Functional Test” perspective what all problems /
concerns do you guys see in this flow?
From Devs perspective
• Late Feedback
• Functional test does not help
From QAs perspective
• Automation always lags
behind
• QA sign off without
automation
• Lesser time for exploratory
testing
From Team perspective
• Collaboration within Team (Dev/QA/BA)
How to overcome problems?
“Begin with the end in mind.” — Stephen R. Covey
One way that worked for us:
Acceptance Test Driven Development (ATDD) is a practice in which the whole
team collaboratively discusses acceptance criteria, with examples, and then
distills them into a set of concrete acceptance tests before development begins.
BA
Login functionality…
As a user
When I enter login credentials
Then I should get authenticated
Executable test scenarios in human
readable format…
Scenario 1 : Verify valid login credentials…
Given I am on login page
When I login as username “test” and password “testing”
Then I should get authenticated
Scenario 2 : Verify logout functionality…
Given I am a logged in user
When I click on “logout” link
Then I should be logged out
QA
BA
Dev
Application code to make the above statements pass…
//Create login page
// Implement the back-end for login functionality…
Scenario 1 : Verify login functionality…
Given I am on login page
When I login as username “test” and password “testing”
Then I should get authenticated…
Test Scenario …
Scenario 1 : Verify login functionality…
Given I am on login page
When I login as username “test” and password “testing”
Then I should get authenticated
1) Developers run this test scenario and expect it to fail
2) To make the above executable statements pass, developer write the
application and implement the login functionality…
3) Developers run the test scenario mentioned in step 1 and expect it to
pass…
QA
Scenario : Verify login and logout functionality…
Given I am on login page
When I login as username “test” and password “testing”
Then I should get authenticated
When I click on “logout” link
Then I should logout
+
Consolidation of test scenarios…
MANUAL TESTING
1
QAs + BAs write scenarios
1
Developers implement scenarios
1
QAs - Manual Testing
and consolidation of scenarios
Typical ATDD flow…
 Faster feedback cycle
 No Automation Backlog.
 QA’s get more time to do exploratory testing.
 Developers think from different angle while coding.
 Very less functional bugs
 No separate Test case repository
 Greater collaboration within Team
Benefits of ATDD…
Questions?

Mais conteúdo relacionado

Mais procurados

Test Automation Principles
Test Automation PrinciplesTest Automation Principles
Test Automation Principles
NetSuite
 
Testing Frameworks And Methodologies
Testing Frameworks And MethodologiesTesting Frameworks And Methodologies
Testing Frameworks And Methodologies
Steven Cahill
 

Mais procurados (20)

How to Add Test Automation to your Quality Assurance Toolbelt
How to Add Test Automation to your Quality Assurance ToolbeltHow to Add Test Automation to your Quality Assurance Toolbelt
How to Add Test Automation to your Quality Assurance Toolbelt
 
Enabling CD in Enterprises with Testing
Enabling CD in Enterprises with TestingEnabling CD in Enterprises with Testing
Enabling CD in Enterprises with Testing
 
Test automation - What? Why? How?
Test automation - What? Why? How?Test automation - What? Why? How?
Test automation - What? Why? How?
 
Test Automation Strategies for the Agile World
Test Automation Strategies for the Agile WorldTest Automation Strategies for the Agile World
Test Automation Strategies for the Agile World
 
Build the "right" regression suite using Behavior Driven Testing (BDT)
Build the "right" regression suite using Behavior Driven Testing (BDT)Build the "right" regression suite using Behavior Driven Testing (BDT)
Build the "right" regression suite using Behavior Driven Testing (BDT)
 
Test Automation Principles
Test Automation PrinciplesTest Automation Principles
Test Automation Principles
 
How to Deliver the Right Software (Specification by example)
How to Deliver the Right Software (Specification by example)How to Deliver the Right Software (Specification by example)
How to Deliver the Right Software (Specification by example)
 
Test pyramid
Test pyramidTest pyramid
Test pyramid
 
What is Agile Testing?
What is Agile Testing?What is Agile Testing?
What is Agile Testing?
 
Test Automation Pyramid
Test Automation PyramidTest Automation Pyramid
Test Automation Pyramid
 
Say NO To (More) Selenium Tests
Say NO To (More) Selenium TestsSay NO To (More) Selenium Tests
Say NO To (More) Selenium Tests
 
Compare squish tool vs telerik tool
Compare squish tool vs telerik toolCompare squish tool vs telerik tool
Compare squish tool vs telerik tool
 
Achieve Intelligent Test Execution: Strategies for Streamlining Regression Te...
Achieve Intelligent Test Execution: Strategies for Streamlining Regression Te...Achieve Intelligent Test Execution: Strategies for Streamlining Regression Te...
Achieve Intelligent Test Execution: Strategies for Streamlining Regression Te...
 
Testing Frameworks And Methodologies
Testing Frameworks And MethodologiesTesting Frameworks And Methodologies
Testing Frameworks And Methodologies
 
Automated UI Testing
Automated UI TestingAutomated UI Testing
Automated UI Testing
 
Large-Scale Agile Test Automation Strategies in Practice
Large-Scale Agile Test Automation Strategies in PracticeLarge-Scale Agile Test Automation Strategies in Practice
Large-Scale Agile Test Automation Strategies in Practice
 
Bdd and-testing
Bdd and-testingBdd and-testing
Bdd and-testing
 
Test pyramid agile pune conference
Test pyramid   agile pune conferenceTest pyramid   agile pune conference
Test pyramid agile pune conference
 
Writing test cases from user stories and acceptance criteria
Writing test cases from user stories and acceptance criteria Writing test cases from user stories and acceptance criteria
Writing test cases from user stories and acceptance criteria
 
B4 u solution_writing test cases from user stories and acceptance criteria
B4 u solution_writing test cases from user stories and acceptance criteriaB4 u solution_writing test cases from user stories and acceptance criteria
B4 u solution_writing test cases from user stories and acceptance criteria
 

Semelhante a TDD - Ketan Soni

Semelhante a TDD - Ketan Soni (20)

VodQA3_ATDD_KetanSoni
VodQA3_ATDD_KetanSoniVodQA3_ATDD_KetanSoni
VodQA3_ATDD_KetanSoni
 
VodQA3_ATDD_KetanSoni
VodQA3_ATDD_KetanSoniVodQA3_ATDD_KetanSoni
VodQA3_ATDD_KetanSoni
 
Testable requirements
Testable requirementsTestable requirements
Testable requirements
 
Testable Requirements
Testable Requirements Testable Requirements
Testable Requirements
 
Agile testing
Agile testingAgile testing
Agile testing
 
Bridging the communication Gap & Continuous Delivery
Bridging the communication Gap & Continuous DeliveryBridging the communication Gap & Continuous Delivery
Bridging the communication Gap & Continuous Delivery
 
Flexing your Agile Muscle - Agile Technical Concepts Explained
Flexing your Agile Muscle - Agile Technical Concepts ExplainedFlexing your Agile Muscle - Agile Technical Concepts Explained
Flexing your Agile Muscle - Agile Technical Concepts Explained
 
Automate test, tools, advantages, and disadvantages
Automate test, tools, advantages,  and disadvantagesAutomate test, tools, advantages,  and disadvantages
Automate test, tools, advantages, and disadvantages
 
Specification-by-Example: A Cucumber Implementation
Specification-by-Example: A Cucumber ImplementationSpecification-by-Example: A Cucumber Implementation
Specification-by-Example: A Cucumber Implementation
 
Build the Right Regression Suite with Behavior-Driven Testing
Build the Right Regression Suite with Behavior-Driven TestingBuild the Right Regression Suite with Behavior-Driven Testing
Build the Right Regression Suite with Behavior-Driven Testing
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Agile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveAgile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer Perspective
 
software_testing pdf.pdf
software_testing pdf.pdfsoftware_testing pdf.pdf
software_testing pdf.pdf
 
Testing Tutorial PDF
Testing Tutorial PDFTesting Tutorial PDF
Testing Tutorial PDF
 
software_testing pdf.pdf
software_testing pdf.pdfsoftware_testing pdf.pdf
software_testing pdf.pdf
 
software_testing pdf.pdf
software_testing pdf.pdfsoftware_testing pdf.pdf
software_testing pdf.pdf
 
software_testing pdf.pdf
software_testing pdf.pdfsoftware_testing pdf.pdf
software_testing pdf.pdf
 
software_testing pdf.pdf
software_testing pdf.pdfsoftware_testing pdf.pdf
software_testing pdf.pdf
 
Bdd with Cucumber and Mocha
Bdd with Cucumber and MochaBdd with Cucumber and Mocha
Bdd with Cucumber and Mocha
 
Software testing interview Q&A – Part 2
Software testing interview Q&A – Part 2Software testing interview Q&A – Part 2
Software testing interview Q&A – Part 2
 

Mais de Thoughtworks

Mais de Thoughtworks (20)

Design System as a Product
Design System as a ProductDesign System as a Product
Design System as a Product
 
Designers, Developers & Dogs
Designers, Developers & DogsDesigners, Developers & Dogs
Designers, Developers & Dogs
 
Cloud-first for fast innovation
Cloud-first for fast innovationCloud-first for fast innovation
Cloud-first for fast innovation
 
More impact with flexible teams
More impact with flexible teamsMore impact with flexible teams
More impact with flexible teams
 
Culture of Innovation
Culture of InnovationCulture of Innovation
Culture of Innovation
 
Dual-Track Agile
Dual-Track AgileDual-Track Agile
Dual-Track Agile
 
Developer Experience
Developer ExperienceDeveloper Experience
Developer Experience
 
When we design together
When we design togetherWhen we design together
When we design together
 
Hardware is hard(er)
Hardware is hard(er)Hardware is hard(er)
Hardware is hard(er)
 
Customer-centric innovation enabled by cloud
 Customer-centric innovation enabled by cloud Customer-centric innovation enabled by cloud
Customer-centric innovation enabled by cloud
 
Amazon's Culture of Innovation
Amazon's Culture of InnovationAmazon's Culture of Innovation
Amazon's Culture of Innovation
 
When in doubt, go live
When in doubt, go liveWhen in doubt, go live
When in doubt, go live
 
Don't cross the Rubicon
Don't cross the RubiconDon't cross the Rubicon
Don't cross the Rubicon
 
Error handling
Error handlingError handling
Error handling
 
Your test coverage is a lie!
Your test coverage is a lie!Your test coverage is a lie!
Your test coverage is a lie!
 
Docker container security
Docker container securityDocker container security
Docker container security
 
Redefining the unit
Redefining the unitRedefining the unit
Redefining the unit
 
Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22
 
A Tribute to Turing
A Tribute to TuringA Tribute to Turing
A Tribute to Turing
 
Rsa maths worked out
Rsa maths worked outRsa maths worked out
Rsa maths worked out
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
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
 
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
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
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
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech 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
 
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
 
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
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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
 

TDD - Ketan Soni

  • 1.
  • 2. Acceptance Test Driven Development (ATDD) in practice  Ketan Soni
  • 3. BAs specify requirements Devs develop functionality QAs identify test scenarios BAs verifies functionality Business sign off Typical flow in industry QAs -Testing + automate scenarios
  • 4. From “Functional Test” perspective what all problems / concerns do you guys see in this flow? From Devs perspective • Late Feedback • Functional test does not help From QAs perspective • Automation always lags behind • QA sign off without automation • Lesser time for exploratory testing From Team perspective • Collaboration within Team (Dev/QA/BA)
  • 5. How to overcome problems? “Begin with the end in mind.” — Stephen R. Covey One way that worked for us: Acceptance Test Driven Development (ATDD) is a practice in which the whole team collaboratively discusses acceptance criteria, with examples, and then distills them into a set of concrete acceptance tests before development begins.
  • 6. BA Login functionality… As a user When I enter login credentials Then I should get authenticated
  • 7. Executable test scenarios in human readable format… Scenario 1 : Verify valid login credentials… Given I am on login page When I login as username “test” and password “testing” Then I should get authenticated Scenario 2 : Verify logout functionality… Given I am a logged in user When I click on “logout” link Then I should be logged out QA BA
  • 8. Dev Application code to make the above statements pass… //Create login page // Implement the back-end for login functionality… Scenario 1 : Verify login functionality… Given I am on login page When I login as username “test” and password “testing” Then I should get authenticated… Test Scenario … Scenario 1 : Verify login functionality… Given I am on login page When I login as username “test” and password “testing” Then I should get authenticated 1) Developers run this test scenario and expect it to fail 2) To make the above executable statements pass, developer write the application and implement the login functionality… 3) Developers run the test scenario mentioned in step 1 and expect it to pass…
  • 9. QA Scenario : Verify login and logout functionality… Given I am on login page When I login as username “test” and password “testing” Then I should get authenticated When I click on “logout” link Then I should logout + Consolidation of test scenarios… MANUAL TESTING
  • 10. 1 QAs + BAs write scenarios 1 Developers implement scenarios 1 QAs - Manual Testing and consolidation of scenarios Typical ATDD flow…
  • 11.  Faster feedback cycle  No Automation Backlog.  QA’s get more time to do exploratory testing.  Developers think from different angle while coding.  Very less functional bugs  No separate Test case repository  Greater collaboration within Team Benefits of ATDD…