SlideShare ist ein Scribd-Unternehmen logo
1 von 76
Agile Testing
Agile Ottawa April 2015
What is Testing?
●Testing seeks to discover threats to the value of
software
●Questioning a product in order to evaluate it
o James Bach
●Testing is done to find information
o With that information critical project decisions
can be made
What is Agile Testing?
Agile testing applies the agile mindset
● It suggests attitudes and activities that help to
deliver valuable software
Applies to both
●Testing on an agile team
●Using agile testing on a traditional team
The Agile Testing Mindset
● The whole team is responsible for quality
o ‘QA will find it’ isn’t accepted
● Testing is not a phase, it’s an ongoing activity
The Agile Testing Mindset
● Short feedback loops
● Continuous improvement
● Collaboration
o How can I help?
Why Bother?
● To fix defects as close to when they were
introduced as possible
● To keep the project moving forward
o By continually providing test feedback as the
product is developed
The Whole Team Approach
Separate Teams
Cross Functional Team
Agile Testers
Agile Testers
Principles for agile testers
● Provide continuous feedback
● Focus on delivering value
● Prioritize high bandwidth communication
Agile Testers
Need to be critical thinkers
● Challenge assumptions
Need to be problem solvers
● Fix problems, not symptoms
Need to be good communicators
● They are required to give feedback
Agile Testers
Need to learn the business domain
● Take the customer’s point of view
Need to think differently
● Ask the what if questions
Agile Testers and Feedback
Give feedback
● With empathy for the customer
● With empathy for the developers
Giving Feedback
● Have a positive intent
o You are trying to help people
● Take responsibility for the feedback
o Provide and gather context
● You must be clear
o Otherwise your feedback is ineffective
Receiving Feedback
● Assume a positive intent
o People want to do their best work
● Give people the benefit of the doubt
o People have bad days
● Thank people for constructive feedback
o You want to improve to do your best work
Feedback Skills for Agile Testers
● Active listening
o Listen to learn
o Don’t jump to conclusions
Feedback Steps from Jurgen Appelo
● Provide context
● List observations
● Express emotions
● Sort by value
● Offer suggestions
Agile Testers
Trust is like money
● It can take years to earn it
and it only takes minutes
to lose it
Agile Testers and Programming
It is important to be technically aware
● Take a holistic view of your technical environment
Everyone cannot be good at everything
● A technical context enhances collaboration
Agile Testers and Programming
So does this mean testers need to program?
● Definitely maybe
Test automation enables agile testing
● Agile testing is not sustainable without automation
Instead of the individual look at the team
● The team needs to be able to program
T Shaped Testers
The T represents depth of knowledge and breadth of
knowledge
T
Depth
Breadth
T Shaped Testers
Depth is the tester’s specialized knowledge
● Integration testing
● Exploratory testing
● Etc
Depth
Breadth
T
T Shaped Testers
Breadth is the tester’s generalized knowledge
● Programming
● Configuration management
● Databases
● Etc
Depth
Breadth
T
Square Shaped Teams
Test Automation
Test Automation
You can apply agile skills to any test project
● But automation enables agile testing to succeed
Test Automation
Why?
● Manual testing takes a long time
● Manual testing is expensive
● You want to free your testers to do more valuable
work
Test Automation
More reasons
● It provides earlier feedback more often
● It is a form of documentation
● It enables Continuous Integration and Continuous
Delivery
Testing vs. Checking
Checking
● Things that machine could do
o Expected results are well defined
Testing
● Things that a human must do
o Observe
o Explore
o Infer
Testing vs. Checking
More
● Cost
● Time
● Fragile
More tests
Agile Test Quadrants
Exploratory Testing
Exploratory Testing
Exploratory testing
●Relies on a tester’s freedom
●Relies on a tester’s responsibility
What is it?
●Testing without expected results
Exploratory Testing
Exploratory testing is simultaneous
● Learning
● Test design
● And test execution
James Bach
Exploratory Testing
How do you do it if you don’t have an expected
result?
● Use test heuristics
● Use experience and domain knowledge
What is it not?
●Undisciplined
●Undocumented
Test heuristics?
● A ‘rule of thumb’ for testing software
o Using experience to find defects
Heuristics
Variable Analysis
● Identify anything whose value can change.
● Goldilocks
o Too Big, Too Small, Just Right
● Starvation
o CPU, Memory, Network, or Disk at maximum
capacity
Elisabeth Hendrickson - Test Heuristics Cheat Sheet
Heuristics Examples
I'm not schooled in the science of human factors,
but I suspect surprise is not an element of a robust
user interface
Chip Rosenthal
Exploratory Testing
Design
● Look for interesting test variations
Executing
● When you think of the test
Learning
● Discover behaviour, look for clues about defects
Steering
● Take those clues and exercise the code more
Exploratory Testing
Ideas
● Persona testing
● Test tours
Tools
● Notes
● Mind maps
● Atlassian Bonfire
● QTest eXplorer
SBE, and BDD
Shift Left in the SDLC
We want to test early and often
● How do we start to prevent defects even before
code is written?
Shift Left in the SDLC
Involve test throughout the Software Development
Lifecycle
Prevent defects
● By collaborating early and often
o Business, dev, and test
● By challenging requirements early
Build the Right Thing, Build it Right
Testers can help:
● Build the right thing
o That meets the customers needs
o Might not be what they asked for
● Build it right
o Well designed, coded, tested
A Build the Right Thing Pyramid
SBE and BDD
Specification by Example (SBE)
Behaviour Driven Development (BDD)
Both methods involve testers earlier in the SDLC
● To discover the right thing to build
Both methods use business language
● This allows Business, Dev, and Test to collaborate
SBE and BDD
Specification by Example (SBE) uses process
patterns to collaborate
●Defines scope from business goals
●Gathers key examples
●Refines examples
●Automates testing of the examples
SBE and BDD
Behaviour Driven Development (BDD)
● Defines tests first
● Captures examples of desired system behaviour
● Automates testing of those examples
SBE and BDD
People get distracted by automation tools
It isn’t about the tools
● It’s about the conversations
● It’s about gaining a shared understanding
Paraphrasing Liz Keogh
The Outside-In Approach
Friends build products
Enemies only build
documentation
Pragmatic Marketing
Stories and SBE, BDD
Stories are a lightweight method to frame desired
system behaviour
As a student
I want to register for a course
So that I can graduate
Who
What
Why
Stories
Note:
The story
● Can’t be coded yet
o It needs more detail
● It isn’t testable yet
Specification Workshops
You need to get the details, SBE and BDD suggest a
conversation
Discuss the story in a specification workshop to
● Understand how it should behave
● Discover enough detail to develop and verify
● Create shared understanding
o Business
o Dev
o Test
Who is in that workshop? Why?
Business
QADev
The solution we want
Examples
Refine the examples from the Specification
Workshop using the Given When Then format to
● Define a story’s scope
● Make the story testable
● Give you the story’s key details
Don’t create an example for everything
● You’ll get lost in the details
Example
GIVEN Java 101 has >= 1
places available
WHEN Sarah registers for Java
101
THEN Sarah is registered in
Java 101
Postcondition
Event
Precondition
Details documented
collaboratively
A Vacation Photo
Shared Understanding
The document is nothing,
but documenting is
everything
●Gerald Weinberg paraphrasing D. Eisenhower
Key Success Factors
●Use the whole team approach
●Adopt the agile testing mindset
●Automate regression tests
●Provide and get feedback
●Build the team’s core agile practices
●Collaborate with the business, and development
●Look at the big picture
The Outside-In Approach
Quality is about being
prepared for the usual so
you have time to tackle the
unusual.
● Adam Geras
Dag Rowe
● @dagrowe
● ca.linkedin.com/in/dagrowe
Thanks to Pythian for sponsoring the pizza, and
venue!
www.pythian.com
Sources
●Agile Testing: A Practical Guide for Testers and
Agile Teams
●More Agile Testing: Learning Journeys for the
Whole Team
●User Story Mapping: Discover the Whole Story,
Build the Right Product
●Specification by Example: How Successful Teams
Deliver the Right Software
●http://dannorth.net/introducing-bdd/
Sources
●http://watirmelon.com/tag/software-testing-
pyramid/
●http://www.duncannisbet.co.uk/test-automation-
basics-levels-pyramids-quadrants
●http://www.satisfice.com/blog/archives/category/te
sting-vs-checking
●https://mysoftwarequality.wordpress.com/tag/softw
are-quality/
●http://www.developsense.com/blog/2012/02/braidi
ng-the-stories/
Sources
●https://mysoftwarequality.wordpress.com/tag/softw
are-quality/
●http://www.skillsyouneed.com/ips/active-
listening.html
●http://lizkeogh.com/2011/09/22/conversational-
patterns-in-bdd/
●http://lisacrispin.com/downloads/AgileVancouverA
gileTestersDifferent.pdf
●http://www.slideshare.net/jurgenappelo/feedback-
wrap
Sources
●https://soundcloud.com/techwell/keep-agile-
testing-agile-an
●http://joecolantonio.com/testtalks/42-paul-gerrard-
shift-left-a-new-model-for-
testing/?utm_source=twitter&utm_medium=podcas
t&utm_campaign=shift_left_test_talks
●http://joecolantonio.com/testtalks/34-janet-gregory-
agile-testing/
●http://www.slideshare.net/ColomboCampsCommu
nity/what-is-an-agile-tester-henrik-kniberg

Weitere Àhnliche Inhalte

Was ist angesagt?

Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8
a34sharm
 
Agile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroidsAgile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroids
Vipul Gupta
 

Was ist angesagt? (20)

Agile Testing Days -Trends and future in testing 2017
Agile Testing Days -Trends and future in testing 2017Agile Testing Days -Trends and future in testing 2017
Agile Testing Days -Trends and future in testing 2017
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
 
Agile testing practice
Agile testing practiceAgile testing practice
Agile testing practice
 
Testing in Agile Development
Testing in Agile DevelopmentTesting in Agile Development
Testing in Agile Development
 
Introducing QA Into an Agile Environment
Introducing QA Into an Agile EnvironmentIntroducing QA Into an Agile Environment
Introducing QA Into an Agile Environment
 
QA in Agile
QA in AgileQA in Agile
QA in Agile
 
Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8Role Of Qa And Testing In Agile 1225221397167302 8
Role Of Qa And Testing In Agile 1225221397167302 8
 
ISTQB agile tester exam - Conclusions about Certification
ISTQB agile tester exam - Conclusions about CertificationISTQB agile tester exam - Conclusions about Certification
ISTQB agile tester exam - Conclusions about Certification
 
Testing in Agile Projects
Testing in Agile ProjectsTesting in Agile Projects
Testing in Agile Projects
 
Agile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroidsAgile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroids
 
Agile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User GroupAgile Testing - presentation for Agile User Group
Agile Testing - presentation for Agile User Group
 
Transitioning To Agile
Transitioning To Agile Transitioning To Agile
Transitioning To Agile
 
Agile QA presentation
Agile QA presentationAgile QA presentation
Agile QA presentation
 
Agile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil KaradeAgile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil Karade
 
A Concise QA Process
A Concise QA Process A Concise QA Process
A Concise QA Process
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle
 
What is Agile Testing? A MindMap
What is Agile Testing? A MindMapWhat is Agile Testing? A MindMap
What is Agile Testing? A MindMap
 
The 3 Pillars Approach to Agile Testing Strategy with Bob Galen & Mary Thorn
The 3 Pillars Approach to Agile Testing Strategy with Bob Galen & Mary ThornThe 3 Pillars Approach to Agile Testing Strategy with Bob Galen & Mary Thorn
The 3 Pillars Approach to Agile Testing Strategy with Bob Galen & Mary Thorn
 
Agile testing presentation
Agile testing presentationAgile testing presentation
Agile testing presentation
 
Presentation on Agile Testing
Presentation on Agile TestingPresentation on Agile Testing
Presentation on Agile Testing
 

Andere mochten auch

Agile Testing 1210187639850462 9
Agile Testing 1210187639850462 9Agile Testing 1210187639850462 9
Agile Testing 1210187639850462 9
kpworld
 

Andere mochten auch (20)

Test Automation - Principles and Practices
Test Automation - Principles and PracticesTest Automation - Principles and Practices
Test Automation - Principles and Practices
 
Agile Testing 1210187639850462 9
Agile Testing 1210187639850462 9Agile Testing 1210187639850462 9
Agile Testing 1210187639850462 9
 
Making the Transition to Agile: what we did, what worked, and what we learned
Making the Transition to Agile: what we did, what worked, and what we learnedMaking the Transition to Agile: what we did, what worked, and what we learned
Making the Transition to Agile: what we did, what worked, and what we learned
 
Google Analytics Vs.Omniture
Google Analytics Vs.OmnitureGoogle Analytics Vs.Omniture
Google Analytics Vs.Omniture
 
Revista Aka Arte om duplo sentido
Revista Aka Arte om duplo sentidoRevista Aka Arte om duplo sentido
Revista Aka Arte om duplo sentido
 
Does gender play a role in product management v3.7
Does gender play a role in product management v3.7Does gender play a role in product management v3.7
Does gender play a role in product management v3.7
 
Agile Testing: Strength Through Interdependence
Agile Testing: Strength Through InterdependenceAgile Testing: Strength Through Interdependence
Agile Testing: Strength Through Interdependence
 
Agile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterAgile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile Tester
 
Agile Testing by Example
Agile Testing by ExampleAgile Testing by Example
Agile Testing by Example
 
Los proyectos de aula en la educaciĂłn infantil
Los proyectos de aula en la educaciĂłn infantilLos proyectos de aula en la educaciĂłn infantil
Los proyectos de aula en la educaciĂłn infantil
 
Comandos insert into, update y delete sql server
Comandos insert into, update  y delete sql serverComandos insert into, update  y delete sql server
Comandos insert into, update y delete sql server
 
Abdominal compartment syndrome
Abdominal compartment syndromeAbdominal compartment syndrome
Abdominal compartment syndrome
 
Creating HTML Pages
Creating HTML PagesCreating HTML Pages
Creating HTML Pages
 
Top Insights from SaaStr by Leading Enterprise Software Experts
Top Insights from SaaStr by Leading Enterprise Software ExpertsTop Insights from SaaStr by Leading Enterprise Software Experts
Top Insights from SaaStr by Leading Enterprise Software Experts
 
CSS Grid Layout for Topconf, Linz
CSS Grid Layout for Topconf, LinzCSS Grid Layout for Topconf, Linz
CSS Grid Layout for Topconf, Linz
 
New Amazing Things about AngularJS 2.0
New Amazing Things about AngularJS 2.0New Amazing Things about AngularJS 2.0
New Amazing Things about AngularJS 2.0
 
Node.js and The Internet of Things
Node.js and The Internet of ThingsNode.js and The Internet of Things
Node.js and The Internet of Things
 
The Future of Real-Time in Spark
The Future of Real-Time in SparkThe Future of Real-Time in Spark
The Future of Real-Time in Spark
 
èȘçŸ„ç—‡ă«ă‚„ă•ă—ă„ăŸăĄă„ăă‚Š ïœžă‚»ă‚Żă‚żăƒŒă‚’è¶ŠăˆăŸă€ăȘăŒă‚Šïœž
èȘçŸ„ç—‡ă«ă‚„ă•ă—ă„ăŸăĄă„ăă‚Š ïœžă‚»ă‚Żă‚żăƒŒă‚’è¶ŠăˆăŸă€ăȘăŒă‚ŠïœžèȘçŸ„ç—‡ă«ă‚„ă•ă—ă„ăŸăĄă„ăă‚Š ïœžă‚»ă‚Żă‚żăƒŒă‚’è¶ŠăˆăŸă€ăȘăŒă‚Šïœž
èȘçŸ„ç—‡ă«ă‚„ă•ă—ă„ăŸăĄă„ăă‚Š ïœžă‚»ă‚Żă‚żăƒŒă‚’è¶ŠăˆăŸă€ăȘăŒă‚Šïœž
 
Introduction to Information Architecture
Introduction to Information ArchitectureIntroduction to Information Architecture
Introduction to Information Architecture
 

Ähnlich wie Agile Testing Agile Ottawa April 2015

Ähnlich wie Agile Testing Agile Ottawa April 2015 (20)

Software Testing Overview
Software Testing OverviewSoftware Testing Overview
Software Testing Overview
 
Product Agility: 3 fundamentals from the trenches
Product Agility: 3 fundamentals from the trenchesProduct Agility: 3 fundamentals from the trenches
Product Agility: 3 fundamentals from the trenches
 
Crafting Quality Software
Crafting Quality SoftwareCrafting Quality Software
Crafting Quality Software
 
From Gatekeeper to Partner by Kelsey Shannahan
From Gatekeeper to Partner by Kelsey ShannahanFrom Gatekeeper to Partner by Kelsey Shannahan
From Gatekeeper to Partner by Kelsey Shannahan
 
Quality is a Mindset
Quality is a MindsetQuality is a Mindset
Quality is a Mindset
 
Activate Agile 2014 : roles, activities, behaviours in Agile Projects
Activate Agile 2014 : roles, activities, behaviours in Agile ProjectsActivate Agile 2014 : roles, activities, behaviours in Agile Projects
Activate Agile 2014 : roles, activities, behaviours in Agile Projects
 
How do we fix testing
How do we fix testingHow do we fix testing
How do we fix testing
 
РОМАН ЯКИМЧУК Â«ĐžĐżŃ‚ĐžĐŒŃ–Đ·Đ°Ń†Ń–Ń QA ĐżŃ€ĐŸŃ†Đ”ŃŃ–ĐČ» Kyiv QADay 2021
РОМАН ЯКИМЧУК Â«ĐžĐżŃ‚ĐžĐŒŃ–Đ·Đ°Ń†Ń–Ń QA ĐżŃ€ĐŸŃ†Đ”ŃŃ–ĐČ» Kyiv QADay 2021РОМАН ЯКИМЧУК Â«ĐžĐżŃ‚ĐžĐŒŃ–Đ·Đ°Ń†Ń–Ń QA ĐżŃ€ĐŸŃ†Đ”ŃŃ–ĐČ» Kyiv QADay 2021
РОМАН ЯКИМЧУК Â«ĐžĐżŃ‚ĐžĐŒŃ–Đ·Đ°Ń†Ń–Ń QA ĐżŃ€ĐŸŃ†Đ”ŃŃ–ĐČ» Kyiv QADay 2021
 
Test automation: do we still need test specialists?
Test automation: do we still need test specialists?Test automation: do we still need test specialists?
Test automation: do we still need test specialists?
 
Agile Testing
Agile TestingAgile Testing
Agile Testing
 
Invite the tester to the party
Invite the tester to the partyInvite the tester to the party
Invite the tester to the party
 
Discover What Your Users Really Think (and what they really do)
Discover What Your Users Really Think (and what they really do)Discover What Your Users Really Think (and what they really do)
Discover What Your Users Really Think (and what they really do)
 
Post agile confessions
Post agile confessionsPost agile confessions
Post agile confessions
 
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)
 
Effective Unit Testing
Effective Unit TestingEffective Unit Testing
Effective Unit Testing
 
Assessing youragility
Assessing youragilityAssessing youragility
Assessing youragility
 
No such thing called agile testing
No such thing called agile testingNo such thing called agile testing
No such thing called agile testing
 
Lessons Learned When Automating
Lessons Learned When AutomatingLessons Learned When Automating
Lessons Learned When Automating
 
Product Agility: 3 fundamentals from the trenches (Braga,PT)
Product Agility: 3 fundamentals from the trenches (Braga,PT)Product Agility: 3 fundamentals from the trenches (Braga,PT)
Product Agility: 3 fundamentals from the trenches (Braga,PT)
 
Usability testing - have fun and improve your work
Usability testing - have fun and improve your workUsability testing - have fun and improve your work
Usability testing - have fun and improve your work
 

KĂŒrzlich hochgeladen

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

KĂŒrzlich hochgeladen (20)

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
Vip Call Girls Noida âžĄïž Delhi âžĄïž 9999965857 No Advance 24HRS Live
Vip Call Girls Noida âžĄïž Delhi âžĄïž 9999965857 No Advance 24HRS LiveVip Call Girls Noida âžĄïž Delhi âžĄïž 9999965857 No Advance 24HRS Live
Vip Call Girls Noida âžĄïž Delhi âžĄïž 9999965857 No Advance 24HRS Live
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
call girls in Vaishali (Ghaziabad) 🔝 >àŒ’8448380779 🔝 genuine Escort Service đŸ”âœ”ïžâœ”ïž
call girls in Vaishali (Ghaziabad) 🔝 >àŒ’8448380779 🔝 genuine Escort Service đŸ”âœ”ïžâœ”ïžcall girls in Vaishali (Ghaziabad) 🔝 >àŒ’8448380779 🔝 genuine Escort Service đŸ”âœ”ïžâœ”ïž
call girls in Vaishali (Ghaziabad) 🔝 >àŒ’8448380779 🔝 genuine Escort Service đŸ”âœ”ïžâœ”ïž
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 

Agile Testing Agile Ottawa April 2015

Hinweis der Redaktion

  1. Software Value is contextual, it varies by project, organization and team business value of the software is most important thing So we test Why because Tested code is better code better code is more reliable more reliable code makes customers happier happier customers make sure the team still gets paid Can I ship it? When will we be done? What risks do we see?
  2. Based on the basics of testing, it applies the mindset Of course this is simple to say but hard to do
  3. You can’t test quality in, you have to build it in - throwing code over the wall doesn’t work Dev, test, product management, ops, and support all test in different ways We test assumptions as well This does not mean people are interchangable Continuous testing ensures continuous progress
  4. Per build, per story, per iteration, per release Learning skills agile practices what to do better next time Instead of the test function acting as gate keepers or the quality police - we ask how can we help? Focus on delivering value to the customer - if they aren’t using it it isn’t valuable
  5. Challenge requirements to get to the true needs
  6. Before a separate test phase If it is a regression, with automated testing - weekly, daily, hourly, per commit If it is complex - found by testers inside the sprint it the code is being built Not a month later when devs have switched tasks and will have to spelunk the code to figure out what they were doing To generate a safety net that enable developers to change the code with confidence To create real business impacts
  7. Not this Things don’t work as well if everyone has separate priorities Handoffs are in place team to team which leads to ...
  8. Everyone tests - not just people with test or quality in their title Functional lines should blur Developers are ‘Test Infected’ All roles actively collaborate The whole team is responsible for delivering a product with quality built in
  9. As with many things agile - it is about the philosophy and mindset Applied in the context of your projects There are no magic bullets Except at the Texas School Book Depository
  10. Feedback The fundamental job of a tester is to provide valuable information Value Results oriented, customer focused Comm F2F, Skype, Phone, IM Don’t be document driven Keep a customer focus - how can I help? all users of the feedback Dev Proj. mgmt Ops Support Documentation etc
  11. Use a investigative journalist metaphor Report observations, and their impact Add context Examine multiple points of view
  12. Learn intent of features Learn who uses the features Need to know the organizations priorities Devs are awesome at building things, they need focus - test gets to take the holistic view and provide valuable contrast in their thinking Systems Thinking De Bono’s Six Thinking Hats Beginner’s Mind
  13. Customer Has real needs, make their life better Dev Coding isn’t easy With empathy for the project We have timelines and costs to maintain
  14. Remember they are invested in their work as well Provide and gather context Why is this important? What are your assumptions? What are the other persons assumptions?
  15. Best Work They care about that Some people are not effective communicators Benefit of the Doubt If the feedback is starting to cause conflict Are they ill? Overtired?
  16. Questioning what problem is being solved? how will I know it works? who uses this? what’s the worst thing that could happen? Reflection So that means? Clarification What do you mean by .. Summarisation To rephrase .. I understood .. Feedback wrap Why am I focussing so much on feedback? because
  17. You need to maintain a good relationship even if your particular objective gets blocked You need to work with these people tomorrow as well
  18. What does good design look like? Are there code maintainability challenges? Database design and DB query skills Business analysis skills The skills required will depend on your context You can they talk about data persistence and disaster recovery scenarios You can talk about the DB triggers that create behaviour in the system You can understand the challenges of cache invalidation There is value in being able to read code, and SQL, to find the intent of a developer’s change
  19. The time required to run manual tests will only increase as more are written This has produced a great deal of debate on the interwebs Ultimately I think more knowledge is a good thing For a tester it allows you to find new classes of risk to your product
  20. Also called Generalizing Specialists So lets look at building a team with cross functional skills
  21. UX testing Test feedback Test data management Test design Etc
  22. System architecture Technical writing BDD Story mapping Impact mapping Etc
  23. So you want a team who can can code with quality, can test effectively, and can automate tests Think of it as a matrix of competencies So some testers can program and some devs can test - the important thing is that the team has the skills to deliver
  24. Here we move on to test automation
  25. To deal with change effectively you need a test automation plan Note, you can start without automation, but you should plan your strategy for building it out It is expensive, but should have ROI
  26. You still need manual testers, because you really want to free them from regression testing to be more valuable to your team
  27. We’re talking about automation but you’ll still need manual testers To illustrate I’ll add the concept of testing vs. checking Sapient testing
  28. We should look at what can be automated - James Bach and Michael Bolton propose Testing vs Checking as a useful model You still need manual testers to actually test, vs performing checks that can be automated Sapient testing
  29. Another way of looking at it - automation can tackle the repetitive know knows I know when I log in with a valid password I should get to the index page For the rest of it humans are required In dev, test, and the rest of the project The example James and Michael use You don’t call compiling a program ‘automated programming’ programming is something humans do Similarly, they call what computers can do ‘automated checking’ Testing is something humans do
  30. Back to automation - while I can’t cover specifics here I can present a model As you go up the pyramid, tests are more expensive Time to run More maintenance You want a larger amount of tests at the lower levels - but it is important to test many different ways Having a broader approach is often more effective than focusing on one method as thoroughly as possible
  31. Contrast this to a common anti pattern The SW test ice cream cone Here we optimize for manual testing
  32. Here is the now classic agile testing quadrants These show options inside a quadrant You will need to tailor testing to your team and product However, I will point out that it is useful to touch a system multiple ways vs putting all your concentration on 1 or 2 types of testing you can then catch multiple classes of bugs the 80/20 rule applies
  33. This is Gojko Adzic’s take on the testing quadrants. I like this one as it takes into account the concept of Checking and Testing.
  34. Similarly to automation I can’t go into depth here You need both It complements automated testing to find different classes of bugs
  35. That is Ad hoc testing - ‘let’s give it a go’
  36. You can use your past experience E.G. this is on google slides I still expect it to do similar things to power point Next is a heuristic you know intuitively
  37. Tired Ted, Impatient Ian .. Landmark tour Look at Session Based Test Management from James Bach Not a product recommendation
  38. Borrowing a phrase from Paul Gerrard It may not be called testing Get testers involved earlier in the software development process What if we had a conversation before things were even coded?
  39. F16 fighting falcon story from SBE mach 3 why
  40. Gojko Adzic’s software quality model We can test and gather or give feedback at all these levels - either manually or via automation Looking at the pyramid we immediately realize that as a software delivery team we can only assure the 3 bottom levels of the pyramid and to assure our product is Useful and Successful we need feedback from the final customer
  41. How do we shift left?
  42. Defines scope from business goals Are we done yet? Gathers key examples What does this feature look like? Refines examples Concrete examples of system behaviour Automates testing of the examples Leading to ‘Living Documentation’
  43. like Test Driven Development (TDD) Captures examples of desired system behaviour via conversations Automates testing of those examples Uses a Given, When, Then format As they both involve executable specifications, these two practices are very complementary
  44. It isn’t about the tools It’s about the conversations To explore examples and behaviour To gain a shared understanding Focus on delivering value instead of documents or automation
  45. The Goal is To Effectively Implement features,
  46. Stories are required for the workshop basis of the discussion Defines the intent of the feature the workshop elaborates the story
  47. You find the examples discussed in the workshop - examples of concrete behaviour
  48. On to the examples This Defines a story’s scope Makes it testable Give you the key details Business logic Boundary conditions Important - Don’t create an example for everything You’ll get lost in the details E.G. Great idea to kill Amazon - increase sales by offering free book shipping book plus washing machine? - no book to Papua New Guinea? - no Book to US - yes Book to Canada - yes Here we have specific testable behaviour
  49. Doesn’t this look a lot like a test? If you have a set of these examples it defines the feature Most importantly Biz, Dev, Test had a conversation - they have a shared understanding of the feature and its goals
  50. A shared understanding saves a lot of documentation - lets take a vacation photo as an example A photo You may say ‘That’s cute’ I remember a river behind the house in Nova Scotia where I had dinner with family friends Our host runs a Christmas tree farm, my daughter found the water and we had to play at the bank for at least a half hour You wouldn’t know that because you were not there Similarly in a workshop you will have picked up all sorts of details that are not documented - but you will understand the feature And testers will know from the beginning, instead of during the transition from dev to test
  51. The conversation is the most important thing. By collaborating instead of handing off documents - AKA shelfware - we have increased contextual knowledge to deliver the right thing
  52. - Requirements are not frozen - change is accepted - Priorities change - This is usual - Try to make change as efficient as possible