SlideShare una empresa de Scribd logo
1 de 89
Descargar para leer sin conexión
Michael Mahlberg, 05.06.2012


                Exploratory Testing –
                The missing half of BDD?

Tuesday, June 5, 2012
Testing?



Tuesday, June 5, 2012
AGAIN?



Tuesday, June 5, 2012
It’s not about Rails




                                      http://www.flickr.com/photos/chris_gin/2490980153/

Tuesday, June 5, 2012
Several Stories
Tuesday, June 5, 2012
BDD           Specification       Design by
                         TDD    by Example        Contract

                                      Defensive
                                    Programming


                         Software-
                        Development
Tuesday, June 5, 2012
Exploratory
                          Testing




Tuesday, June 5, 2012
Tuesday, June 5, 2012
Tuesday, June 5, 2012
Tuesday, June 5, 2012
Tuesday, June 5, 2012
Paul Carvalho




                                    @can_test


Tuesday, June 5, 2012
Michael Bolton




                                    No, Not this one

Tuesday, June 5, 2012
Michael Bolton




                                     @michaelbolton


Tuesday, June 5, 2012
Markus Gärtner




                                   @mgaertne

Tuesday, June 5, 2012
Players in the Game

                    • James Bach
                    • Michael Bolten (not the singer)
                    • Cem Kaner
                    • Paul Carvalho

Tuesday, June 5, 2012
Ressources
                              Human                      Resource
                           Paul Carvalho           http://swtester.blogspot.de/


                           Michael Bolton       http://www.developsense.com/blog/


                             James Bach           http://www.satisfice.com/blog/


                        Elisabeth Hendrickson        http://testobsessed.com/


                          Markus Gärtner            http://www.shino.de/blog/




Tuesday, June 5, 2012
Ressources by James Bach
                                Topic                     Ressource
                        SBTM Session Based       http://satisfice.com/articles/sbtm.pdf
                         Test Management
                                                 http://people.eecs.ku.edu/~saiedian/
                         Exploratory Testing        Teaching/Fa07/814/Resources/
                                                        exploratory-testing.pdf

                        Hands-on Exploratory       http://www.satisfice.com/tools/
                                                           procedure.pdf
                              Testing
                        Rapid Software Testing     http://www.satisfice.com/rst.pdf




Tuesday, June 5, 2012
The basic misunderstanding



                    • <X> is necessary but not sufficient



Tuesday, June 5, 2012
An example from agile
                        software development




Tuesday, June 5, 2012
An example from agile
                        software development

           Working Software
                              over

                               Comprehensive Documentation




Tuesday, June 5, 2012
Derived Assumption:
       Working software is sufficient




Tuesday, June 5, 2012
Reality:
                        Working software is necessary,
                        but not sufficient!



Tuesday, June 5, 2012
Tuesday, June 5, 2012
Tuesday, June 5, 2012
Tuesday, June 5, 2012
So what’s the problem?


                ■ Software testing, the process of verifying that a
                  software program works as expected
                                       Source: http://en.wikipedia.org/wiki/Test




Tuesday, June 5, 2012
So what’s the problem?

                         ... but ...



Tuesday, June 5, 2012
So what’s the problem?

                ■ Test
                  [...]
                  Etymology
                  From Old French test (“an earthen vessel,
                  especially a pot in which metals were tried”)
                                       Source: http://en.wiktionary.org/wiki/test




Tuesday, June 5, 2012
What do test pilots do?




Tuesday, June 5, 2012
What do test pilots do?




Tuesday, June 5, 2012
What do test pilots do?




Tuesday, June 5, 2012
What do test pilots do?




Tuesday, June 5, 2012
What do test pilots do?




Tuesday, June 5, 2012
Pushing the envelope




Tuesday, June 5, 2012
Checking things




Tuesday, June 5, 2012
Scripted testing

                        With a script, you miss the
                        same things every time.
                                 Exploratory Testing @ QUEST 2008" Copyright © 2008 Cem Kaner




Tuesday, June 5, 2012
Defensive programming
                           - Check all input parameters
                        - Ascertain availability of resources
                                         etc.

         Defensive programming defends against the currently
                        impossible (c2 Wiki)




Tuesday, June 5, 2012
Design by Contract
                        Betrand Meyer
                        Since 1986
                        Programming language: Eiffel




Tuesday, June 5, 2012
Design by Contract
                        Betrand Meyer
                        Since 1986
                        Programming language: Eiffel


                                                       Preconditions
                                                       Postconditions
                                                       Invariants



Tuesday, June 5, 2012
TDD

                    • Unit Tests
                    • Black-Box Tests
                    • White-Box Tests
                    • RSpec etc.

Tuesday, June 5, 2012
BDD

                    • Acceptance Tests
                    • (Mostly) Black-Box Tests
                    • Based on Scenarios


Tuesday, June 5, 2012
ATDD

                    • Bigger gap between test creation and
                        execution
                    • Exclusively Black Box Testing


Tuesday, June 5, 2012
An adage from agile software
                               development




Tuesday, June 5, 2012
An adage from agile software
                               development


                          INVEST in stories and
                        come up with SMART tasks



Tuesday, June 5, 2012
INVEST
                        Independent
                        Negotiable
                        Valuable
                        Estimatable
                        Small
                        Testable


Tuesday, June 5, 2012
SMART
                        Specific
                        Mesuarable
                        Achievable
                        Realistic
                        Tangible



Tuesday, June 5, 2012
Independent
                                      Specific
                        Negotiable
                                      Mesuarable
                        Valuable
                                      Achievable
                        Estimatable
                                      Realistic
                        Small
                                      Tangible
                        Testable


Tuesday, June 5, 2012
Acceptance Criteria
                    • To accomodate pre-conditions
                        Acceptance Criteria can be expressed as
                    • Given [Precondition]
                        When [Actor and Action]
                        Then [Observable Result]
                    • Naresh Jain Slide 29
Tuesday, June 5, 2012
Specification by Example

                        ... It is the result of a research on
                        how teams all over the world specify,
                        develop, test and deliver the right
                        software, without defects, in very
                        short iterative delivery cycles. ...




Tuesday, June 5, 2012
What’s left for the
                           Testers?


Tuesday, June 5, 2012
DbC vs. TDD
         Design by Contract
         implies automated defensive
         programming
          pre- and postconditions and   Test Driven Design is
          invariants are checked at     mostly applied during design-
          runtime                       time.
          Expensive checks are          Tests are executed whenever
          inhibitive                    appropriate - but usually not
                                        in the production
                                        environment
                                        Expensive checks are
                                        possible but unwarranted


Tuesday, June 5, 2012
Checking vs. Testing
      Checking is something that
      we do with the motivation of
      confirming existing beliefs




                                       Testing is something that we
                                       do with the motivation of
                                       finding new information.

                                     http://www.developsense.com/blog/2009/08/testing-vs-checking/




Tuesday, June 5, 2012
Test Driven Development
                             is an oxymoron


                        Check Driven Development?




Tuesday, June 5, 2012
The Test-Cycles



Tuesday, June 5, 2012
Red-Green-Refactor
                               Failing
                                Test




           Simplify                      Coding
 Remove Redundancy


Tuesday, June 5, 2012
Exploratory Testing




                                                                              From: Paul Carvalho
                              http://swtester.blogspot.de/2012/05/what-is-exploratory-testing.html



Tuesday, June 5, 2012
So what is Exploratory Testing?

                          "Exploratory Testing is simultaneously
                        learning about the system while designing
                         and executing tests, using feedback from
                             the last test to inform the next."

                                              Elisabeth Hendrickson, @testobsessed
                                                           Quoted by Paul Carvalho




Tuesday, June 5, 2012
Cone of uncertainty




                            Agile and Iterative Development: A Manager's Guide, Craig Larman 2003



Tuesday, June 5, 2012
Cone of uncertainty




Tuesday, June 5, 2012
Cone of test-cases




                        http://swtester.blogspot.de/2012/05/what-is-exploratory-testing.html


Tuesday, June 5, 2012
Agile testing quadrants




                        http://lisacrispin.com/wordpress/2011/11/08/using-the-agile-testing-quadrants/



Tuesday, June 5, 2012
The Prime Directive
                Be Thoughtful and Methodical
                Throughout the test procedure, as you complete the tasks, you
                have lots of freedom about how you do the work. But you must
                work methodically, and follow the procedure. In the course of
                creating the result for each task, you’ll find that you have to
                make a lot of guesses, and some of them will be wrong. But you
                must think. If you find yourself making wild and uneducated
                guesses about how the product works, areas of instability, or
                anything else, stop and talk to the Test Manager.

                                            James Bach, 08/26/99, http://www.satisfice.com/tools/procedure.pdf




Tuesday, June 5, 2012
Scientific Method
                           Formulate a question
                               Hypothesis
                                Prediction
                                   Test
                                 Analysis



Tuesday, June 5, 2012
Scientific Method
                           Formulate a question
                               Hypothesis
                                Prediction
                                   Test
                                 Analysis



Tuesday, June 5, 2012
Exploratory Testing
                Complete these five tasks:
                ✓  Identify the purpose of the product.
                ✓  Identify functions.
                ✓  Identify areas of potential instability.
                ✓  Test each function and record problems.
                ✓  Design and record a consistency verification
                   test.
                                Source: http://www.satisfice.com/tools/procedure.pdf
                                                    pg. 11 to 22



Tuesday, June 5, 2012
Identify the purpose of the
                                  product

                    • With a tangible result (i.e. Document)
                     • Value for others - verifiable etc.
                     • Value for the tester - builds
                         understanding




Tuesday, June 5, 2012
Identify functions

                    • By actually using (skimming) the product
                    • Explorative (not based on documentation)
                    • Tangible output (Function outline)


Tuesday, June 5, 2012
From James Bach:




                                http://www.satisfice.com/tools/procedure.pdf




Tuesday, June 5, 2012
Identify areas of potential
                                 instability

                    • Results:
                     • Documented areas (before testing)
                     • Documented data for testing
                     • Documented Strategies

Tuesday, June 5, 2012
Test each function and record
                                  problems
                    • Actually this means: Try to do things the
                         development teams did not think of.

                    • Remember: A Problem is just the
                         difference between the expected behavior
                         and the observed behavior - whether it is
                         cause for action has to be decided by the
                         customer


Tuesday, June 5, 2012
Design and record a
                        consistency verification test

                    • Try to extrapolate if the Software would
                        run in (slightly) modified environments.

                        (The original 5 steps are from 1999 (gasp)
                        and relate to specific windows versions -
                        the basic requirements still hold through)



Tuesday, June 5, 2012
Tool Support
                          Area            Tool               URL
                                                             http://
                        Recording       spector        www.spectorsoft.com/

                                                              http://
                        Recording    BBTestAssistant   www.bbsoftware.co.uk/
                                                          products.aspx
                                                             http://
                        Recording        Wink          www.debugmode.com/
                                                              wink/

                                                        http://www.sirius-
                        All in One    TestExplorer           sqa.com/

                                           http://www.satisfice.com/blog/archives/77
Tuesday, June 5, 2012
Session Based Test Management
                    • Original description of ET : 1999
                    • Today : 2012
                    • SBTM: A way to organize exploratory
                        testing
                        • Working in 45 to 90 min Session based
                          on Charters
                        • See: http://satisfice.com/articles/sbtm.pdf
Tuesday, June 5, 2012
What are Charters
             Counterpart to the use case / user story
             Some of the same attributes
             - Roles, activities, actors, systems
             Examples:
             - “Analyze <Product>’s View menu functionality and
             report on areas of potential risk.”



Tuesday, June 5, 2012
Hierarchy




Tuesday, June 5, 2012
Hierarchy




                        Ad-Hoc Testing


Tuesday, June 5, 2012
Hierarchy



                        Exploratory Testing

                          Ad-Hoc Testing


Tuesday, June 5, 2012
Hierarchy


                        Session Based Testing

                        Exploratory Testing

                          Ad-Hoc Testing


Tuesday, June 5, 2012
Hierarchy
                        Session Based Test Management

                            Session Based Testing

                             Exploratory Testing

                               Ad-Hoc Testing


Tuesday, June 5, 2012
ET-Spectrum




Tuesday, June 5, 2012
ET-Spectrum




                          Exploratory Testing according to:
                           http://www.satisfice.com/rst.pdf


Tuesday, June 5, 2012
Can we prove it?
                            Testing shows the presence,
                            not the absence of bugs
                                                         J.N. Buxton and B. Randell, eds, Software Engineering Techniques,
                                                         April 1970, p. 16. Report on a conference sponsored by the NATO
                                                         Science Committee, Rome, Italy, 27–31 October 1969.

                                                         via http://en.wikiquote.org/wiki/Edsger_W._Dijkstra



                            Program testing can be used to
                            show the presence of bugs, but
                            never to show their absence!
                             Source: Notes On Structured Programming, 1972, at the end of section 3, On The
    Edsger Wybe Dijkstra                                        Reliability of Mechanisms. EWD249 (1970).




Tuesday, June 5, 2012
TDD
                    • Technique to drive the design of your code

                                                   y, t!
                                                  r n
                                                sa cie
                                               s fi
                                             ce uf
                                           e s
                                         N ot
                                           t n
                                        Bu

Tuesday, June 5, 2012
BDD
                    • Technique to capture requirements and
                        drive desired functionality


                                                     y, t!
                                                    r n
                                                  sa cie
                                                 s fi
                                               ce uf
                                             e s
                                           N ot
                                             t n
                                          Bu

Tuesday, June 5, 2012
ET
                    • Technique to drive the discovery of
                        unwanted, unexpected and unpredicted
                        behaviour

                                                   y, t!
                                                  r n
                                                sa cie
                                               s fi
                                             ce uf
                                           e s
                                         N ot
                                           t n
                                        Bu

Tuesday, June 5, 2012
About me
                           “Consulting on software development
                        processes and software architecture since
                        the last millennium”
                                                     - @MMahlberg


                        Google me: “Michael Mahlberg”



Tuesday, June 5, 2012
Discussion?




Tuesday, June 5, 2012
Flight-Envelope
                                    Photo Credits
 http://en.wikipedia.org/wiki/File:PerformanceEnvelope.gif

 Testpilots:
 http://www.flickr.com/photos/x-ray_delta_one/4106250812/in/photostream/

 Spreading junction
 http://www.flickr.com/photos/elsie/4164899/in/photostream/

 Tokio Tower
 http://www.flickr.com/photos/wilhelmja/330965980/in/photostream/

 Eiffel Tower
 http://www.flickr.com/photos/gcattiaux/2565101112/in/photostream/

 Spectrum
 http://www.flickr.com/photos/eiriknewth/132859486/in/photostream/

 Armor
 http://www.flickr.com/photos/nicmcphee/1563082378/in/photostream/

 Aerobatics
 http://www.flickr.com/photos/ssandars/6827302/in/photostream/

 Airbus
 http://www.flickr.com/photos/mwanasimba/4097232435/

Tuesday, June 5, 2012

Más contenido relacionado

Destacado

Introduction of TestNG framework and its benefits over Junit framework
Introduction of TestNG framework and its benefits over Junit frameworkIntroduction of TestNG framework and its benefits over Junit framework
Introduction of TestNG framework and its benefits over Junit frameworkBugRaptors
 
TestNG vs JUnit: cease fire or the end of the war
TestNG vs JUnit: cease fire or the end of the warTestNG vs JUnit: cease fire or the end of the war
TestNG vs JUnit: cease fire or the end of the warOleksiy Rezchykov
 
Tips for Writing Better Charters for Exploratory Testing Sessions by Michael...
 Tips for Writing Better Charters for Exploratory Testing Sessions by Michael... Tips for Writing Better Charters for Exploratory Testing Sessions by Michael...
Tips for Writing Better Charters for Exploratory Testing Sessions by Michael...TEST Huddle
 
Exploratory Testing for Developers
Exploratory Testing for DevelopersExploratory Testing for Developers
Exploratory Testing for DevelopersJohan Hoberg
 
Mind maps tutorial Agile Testing Days
Mind maps tutorial Agile Testing DaysMind maps tutorial Agile Testing Days
Mind maps tutorial Agile Testing DaysHuib Schoots
 

Destacado (6)

Introduction of TestNG framework and its benefits over Junit framework
Introduction of TestNG framework and its benefits over Junit frameworkIntroduction of TestNG framework and its benefits over Junit framework
Introduction of TestNG framework and its benefits over Junit framework
 
A Taste of Exploratory Testing
A Taste of Exploratory TestingA Taste of Exploratory Testing
A Taste of Exploratory Testing
 
TestNG vs JUnit: cease fire or the end of the war
TestNG vs JUnit: cease fire or the end of the warTestNG vs JUnit: cease fire or the end of the war
TestNG vs JUnit: cease fire or the end of the war
 
Tips for Writing Better Charters for Exploratory Testing Sessions by Michael...
 Tips for Writing Better Charters for Exploratory Testing Sessions by Michael... Tips for Writing Better Charters for Exploratory Testing Sessions by Michael...
Tips for Writing Better Charters for Exploratory Testing Sessions by Michael...
 
Exploratory Testing for Developers
Exploratory Testing for DevelopersExploratory Testing for Developers
Exploratory Testing for Developers
 
Mind maps tutorial Agile Testing Days
Mind maps tutorial Agile Testing DaysMind maps tutorial Agile Testing Days
Mind maps tutorial Agile Testing Days
 

Similar a Michael mahlberg exploratory-testing-the_missing_half_of_bdd

Games for the Masses - Wie DevOps die Entwicklung von Architektur verändert (...
Games for the Masses - Wie DevOps die Entwicklung von Architektur verändert (...Games for the Masses - Wie DevOps die Entwicklung von Architektur verändert (...
Games for the Masses - Wie DevOps die Entwicklung von Architektur verändert (...Wooga
 
Ruby CI with Jenkins
Ruby CI with JenkinsRuby CI with Jenkins
Ruby CI with Jenkinscowboyd
 
Help Me Design A Better Homepage
Help Me Design A Better HomepageHelp Me Design A Better Homepage
Help Me Design A Better Homepagejtcchan
 
Data Journalism 2: cleaning, combining, communicating
Data Journalism 2: cleaning, combining, communicatingData Journalism 2: cleaning, combining, communicating
Data Journalism 2: cleaning, combining, communicatingPaul Bradshaw
 
Strata New York 2012: Continuous Experimentation with Continuous Deployment
Strata New York 2012: Continuous Experimentation with Continuous DeploymentStrata New York 2012: Continuous Experimentation with Continuous Deployment
Strata New York 2012: Continuous Experimentation with Continuous DeploymentSteve Mardenfeld
 
Quinones jorge visualresume_august2012
Quinones jorge visualresume_august2012Quinones jorge visualresume_august2012
Quinones jorge visualresume_august2012Jorge Quinones
 
Which research when
Which research whenWhich research when
Which research whenLaura Klein
 
Capstone studios 3csofsocialmediaapril2012
Capstone studios 3csofsocialmediaapril2012Capstone studios 3csofsocialmediaapril2012
Capstone studios 3csofsocialmediaapril2012Jo-Anne Redwood
 
Capstone studios 3Cs of Social Mediaapril2012
Capstone studios 3Cs of Social Mediaapril2012Capstone studios 3Cs of Social Mediaapril2012
Capstone studios 3Cs of Social Mediaapril2012Jo-Anne Redwood
 
Declare independence from your it department sysadmin skills for symfony dev...
Declare independence from your it department  sysadmin skills for symfony dev...Declare independence from your it department  sysadmin skills for symfony dev...
Declare independence from your it department sysadmin skills for symfony dev...Pablo Godel
 
TwitterDots: Presentation at LinkedIn
TwitterDots: Presentation at LinkedInTwitterDots: Presentation at LinkedIn
TwitterDots: Presentation at LinkedInriverguardian
 
Multilingual solutions florian loretan
Multilingual solutions florian loretanMultilingual solutions florian loretan
Multilingual solutions florian loretandrupalconf
 
Validation Board Livestream
Validation Board LivestreamValidation Board Livestream
Validation Board LivestreamTrevor Owens
 

Similar a Michael mahlberg exploratory-testing-the_missing_half_of_bdd (20)

Games for the Masses - Wie DevOps die Entwicklung von Architektur verändert (...
Games for the Masses - Wie DevOps die Entwicklung von Architektur verändert (...Games for the Masses - Wie DevOps die Entwicklung von Architektur verändert (...
Games for the Masses - Wie DevOps die Entwicklung von Architektur verändert (...
 
Ruby CI with Jenkins
Ruby CI with JenkinsRuby CI with Jenkins
Ruby CI with Jenkins
 
Help Me Design A Better Homepage
Help Me Design A Better HomepageHelp Me Design A Better Homepage
Help Me Design A Better Homepage
 
Data Journalism 2: cleaning, combining, communicating
Data Journalism 2: cleaning, combining, communicatingData Journalism 2: cleaning, combining, communicating
Data Journalism 2: cleaning, combining, communicating
 
Math 4.1
Math 4.1Math 4.1
Math 4.1
 
Strata New York 2012: Continuous Experimentation with Continuous Deployment
Strata New York 2012: Continuous Experimentation with Continuous DeploymentStrata New York 2012: Continuous Experimentation with Continuous Deployment
Strata New York 2012: Continuous Experimentation with Continuous Deployment
 
Which research when
Which research whenWhich research when
Which research when
 
Let's test
Let's testLet's test
Let's test
 
Map Reduce v2 and YARN - CHUG - 20120604
Map Reduce v2 and YARN - CHUG - 20120604Map Reduce v2 and YARN - CHUG - 20120604
Map Reduce v2 and YARN - CHUG - 20120604
 
Quinones jorge visualresume_august2012
Quinones jorge visualresume_august2012Quinones jorge visualresume_august2012
Quinones jorge visualresume_august2012
 
Which research when
Which research whenWhich research when
Which research when
 
Capstone studios 3csofsocialmediaapril2012
Capstone studios 3csofsocialmediaapril2012Capstone studios 3csofsocialmediaapril2012
Capstone studios 3csofsocialmediaapril2012
 
Capstone studios 3Cs of Social Mediaapril2012
Capstone studios 3Cs of Social Mediaapril2012Capstone studios 3Cs of Social Mediaapril2012
Capstone studios 3Cs of Social Mediaapril2012
 
Declare independence from your it department sysadmin skills for symfony dev...
Declare independence from your it department  sysadmin skills for symfony dev...Declare independence from your it department  sysadmin skills for symfony dev...
Declare independence from your it department sysadmin skills for symfony dev...
 
Math 4.4
Math 4.4Math 4.4
Math 4.4
 
TwitterDots: Presentation at LinkedIn
TwitterDots: Presentation at LinkedInTwitterDots: Presentation at LinkedIn
TwitterDots: Presentation at LinkedIn
 
Math 4.7
Math 4.7Math 4.7
Math 4.7
 
Multilingual solutions florian loretan
Multilingual solutions florian loretanMultilingual solutions florian loretan
Multilingual solutions florian loretan
 
Math 4.6
Math 4.6Math 4.6
Math 4.6
 
Validation Board Livestream
Validation Board LivestreamValidation Board Livestream
Validation Board Livestream
 

Más de Michael Mahlberg

Heavyweight agile Processes? Let's make them leaner!
Heavyweight agile Processes? Let's make them leaner!Heavyweight agile Processes? Let's make them leaner!
Heavyweight agile Processes? Let's make them leaner!Michael Mahlberg
 
Skaliert Arbeiten statt zu skalieren - 2022.pdf
Skaliert Arbeiten statt zu skalieren - 2022.pdfSkaliert Arbeiten statt zu skalieren - 2022.pdf
Skaliert Arbeiten statt zu skalieren - 2022.pdfMichael Mahlberg
 
Agile Tuesday München: Was ist eigentlich aus Lean geworden?
Agile Tuesday München: Was ist eigentlich aus  Lean geworden?Agile Tuesday München: Was ist eigentlich aus  Lean geworden?
Agile Tuesday München: Was ist eigentlich aus Lean geworden?Michael Mahlberg
 
Process-Tinder – Wenn ich mich nur nach den schönen Bildern entscheide…
Process-Tinder – Wenn ich mich nur nach den schönen Bildern entscheide…Process-Tinder – Wenn ich mich nur nach den schönen Bildern entscheide…
Process-Tinder – Wenn ich mich nur nach den schönen Bildern entscheide…Michael Mahlberg
 
Was ist aus dem L-Wort (in Lean Kanban) geworden?
Was ist aus dem L-Wort (in Lean Kanban) geworden?Was ist aus dem L-Wort (in Lean Kanban) geworden?
Was ist aus dem L-Wort (in Lean Kanban) geworden?Michael Mahlberg
 
Immer Ärger mit Jira - LWIPCGN#118 (2021)
Immer Ärger mit Jira - LWIPCGN#118 (2021)Immer Ärger mit Jira - LWIPCGN#118 (2021)
Immer Ärger mit Jira - LWIPCGN#118 (2021)Michael Mahlberg
 
Continuous Integration - I Don't Think That Word Means What You Think It Means
Continuous Integration - I Don't Think That Word Means What You Think It MeansContinuous Integration - I Don't Think That Word Means What You Think It Means
Continuous Integration - I Don't Think That Word Means What You Think It MeansMichael Mahlberg
 
Flow – DAS Ziel von Kanban?
Flow – DAS Ziel von Kanban?Flow – DAS Ziel von Kanban?
Flow – DAS Ziel von Kanban?Michael Mahlberg
 
What's in a Story? Drei Ansätze, um mit Anforderungen gemeinsam erfolgreich z...
What's in a Story? Drei Ansätze, um mit Anforderungen gemeinsam erfolgreich z...What's in a Story? Drei Ansätze, um mit Anforderungen gemeinsam erfolgreich z...
What's in a Story? Drei Ansätze, um mit Anforderungen gemeinsam erfolgreich z...Michael Mahlberg
 
Lwipcgn#110 2020-die agilekeuleueberleben
Lwipcgn#110 2020-die agilekeuleueberlebenLwipcgn#110 2020-die agilekeuleueberleben
Lwipcgn#110 2020-die agilekeuleueberlebenMichael Mahlberg
 
The Trouble with Jira – TAG 2019
The Trouble with Jira – TAG 2019The Trouble with Jira – TAG 2019
The Trouble with Jira – TAG 2019Michael Mahlberg
 
Michael Mahlberg - Leichtgewichtige Kanban-Metriken auf der LKCE 2018
Michael Mahlberg - Leichtgewichtige Kanban-Metriken auf der LKCE 2018Michael Mahlberg - Leichtgewichtige Kanban-Metriken auf der LKCE 2018
Michael Mahlberg - Leichtgewichtige Kanban-Metriken auf der LKCE 2018Michael Mahlberg
 
Stances of Coaching - OOP2018
Stances of Coaching - OOP2018Stances of Coaching - OOP2018
Stances of Coaching - OOP2018Michael Mahlberg
 
The Product Owner's Survival Kit - ein Überblick [DE]
The Product Owner's Survival Kit - ein Überblick [DE]The Product Owner's Survival Kit - ein Überblick [DE]
The Product Owner's Survival Kit - ein Überblick [DE]Michael Mahlberg
 
What coaching stances can do for you in Kanban settings...
What coaching stances can do for you in Kanban settings... What coaching stances can do for you in Kanban settings...
What coaching stances can do for you in Kanban settings... Michael Mahlberg
 
A3 thinking - background, process and examples
A3 thinking - background, process and examplesA3 thinking - background, process and examples
A3 thinking - background, process and examplesMichael Mahlberg
 
Lws cologne leansoftwaredevelopment
Lws cologne leansoftwaredevelopmentLws cologne leansoftwaredevelopment
Lws cologne leansoftwaredevelopmentMichael Mahlberg
 
Ökonomie und Architektur als effektives Duo
Ökonomie und Architektur als effektives DuoÖkonomie und Architektur als effektives Duo
Ökonomie und Architektur als effektives DuoMichael Mahlberg
 

Más de Michael Mahlberg (20)

Heavyweight agile Processes? Let's make them leaner!
Heavyweight agile Processes? Let's make them leaner!Heavyweight agile Processes? Let's make them leaner!
Heavyweight agile Processes? Let's make them leaner!
 
Skaliert Arbeiten statt zu skalieren - 2022.pdf
Skaliert Arbeiten statt zu skalieren - 2022.pdfSkaliert Arbeiten statt zu skalieren - 2022.pdf
Skaliert Arbeiten statt zu skalieren - 2022.pdf
 
Agile Tuesday München: Was ist eigentlich aus Lean geworden?
Agile Tuesday München: Was ist eigentlich aus  Lean geworden?Agile Tuesday München: Was ist eigentlich aus  Lean geworden?
Agile Tuesday München: Was ist eigentlich aus Lean geworden?
 
Process-Tinder – Wenn ich mich nur nach den schönen Bildern entscheide…
Process-Tinder – Wenn ich mich nur nach den schönen Bildern entscheide…Process-Tinder – Wenn ich mich nur nach den schönen Bildern entscheide…
Process-Tinder – Wenn ich mich nur nach den schönen Bildern entscheide…
 
Was ist aus dem L-Wort (in Lean Kanban) geworden?
Was ist aus dem L-Wort (in Lean Kanban) geworden?Was ist aus dem L-Wort (in Lean Kanban) geworden?
Was ist aus dem L-Wort (in Lean Kanban) geworden?
 
Immer Ärger mit Jira - LWIPCGN#118 (2021)
Immer Ärger mit Jira - LWIPCGN#118 (2021)Immer Ärger mit Jira - LWIPCGN#118 (2021)
Immer Ärger mit Jira - LWIPCGN#118 (2021)
 
Continuous Integration - I Don't Think That Word Means What You Think It Means
Continuous Integration - I Don't Think That Word Means What You Think It MeansContinuous Integration - I Don't Think That Word Means What You Think It Means
Continuous Integration - I Don't Think That Word Means What You Think It Means
 
Flow – DAS Ziel von Kanban?
Flow – DAS Ziel von Kanban?Flow – DAS Ziel von Kanban?
Flow – DAS Ziel von Kanban?
 
What's in a Story? Drei Ansätze, um mit Anforderungen gemeinsam erfolgreich z...
What's in a Story? Drei Ansätze, um mit Anforderungen gemeinsam erfolgreich z...What's in a Story? Drei Ansätze, um mit Anforderungen gemeinsam erfolgreich z...
What's in a Story? Drei Ansätze, um mit Anforderungen gemeinsam erfolgreich z...
 
Lwipcgn#110 2020-die agilekeuleueberleben
Lwipcgn#110 2020-die agilekeuleueberlebenLwipcgn#110 2020-die agilekeuleueberleben
Lwipcgn#110 2020-die agilekeuleueberleben
 
The Trouble with Jira – TAG 2019
The Trouble with Jira – TAG 2019The Trouble with Jira – TAG 2019
The Trouble with Jira – TAG 2019
 
Michael Mahlberg - Leichtgewichtige Kanban-Metriken auf der LKCE 2018
Michael Mahlberg - Leichtgewichtige Kanban-Metriken auf der LKCE 2018Michael Mahlberg - Leichtgewichtige Kanban-Metriken auf der LKCE 2018
Michael Mahlberg - Leichtgewichtige Kanban-Metriken auf der LKCE 2018
 
Stances of Coaching - OOP2018
Stances of Coaching - OOP2018Stances of Coaching - OOP2018
Stances of Coaching - OOP2018
 
From ceremonies to events
From ceremonies to eventsFrom ceremonies to events
From ceremonies to events
 
The Product Owner's Survival Kit - ein Überblick [DE]
The Product Owner's Survival Kit - ein Überblick [DE]The Product Owner's Survival Kit - ein Überblick [DE]
The Product Owner's Survival Kit - ein Überblick [DE]
 
What coaching stances can do for you in Kanban settings...
What coaching stances can do for you in Kanban settings... What coaching stances can do for you in Kanban settings...
What coaching stances can do for you in Kanban settings...
 
A3 thinking - background, process and examples
A3 thinking - background, process and examplesA3 thinking - background, process and examples
A3 thinking - background, process and examples
 
Lws cologne leansoftwaredevelopment
Lws cologne leansoftwaredevelopmentLws cologne leansoftwaredevelopment
Lws cologne leansoftwaredevelopment
 
Team models-t4 at2015
Team models-t4 at2015Team models-t4 at2015
Team models-t4 at2015
 
Ökonomie und Architektur als effektives Duo
Ökonomie und Architektur als effektives DuoÖkonomie und Architektur als effektives Duo
Ökonomie und Architektur als effektives Duo
 

Último

Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
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
 
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
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
[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.pdfhans926745
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
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
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 

Último (20)

Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
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
 
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
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
[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
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
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
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 

Michael mahlberg exploratory-testing-the_missing_half_of_bdd

  • 1. Michael Mahlberg, 05.06.2012 Exploratory Testing – The missing half of BDD? Tuesday, June 5, 2012
  • 4. It’s not about Rails http://www.flickr.com/photos/chris_gin/2490980153/ Tuesday, June 5, 2012
  • 6. BDD Specification Design by TDD by Example Contract Defensive Programming Software- Development Tuesday, June 5, 2012
  • 7. Exploratory Testing Tuesday, June 5, 2012
  • 12. Paul Carvalho @can_test Tuesday, June 5, 2012
  • 13. Michael Bolton No, Not this one Tuesday, June 5, 2012
  • 14. Michael Bolton @michaelbolton Tuesday, June 5, 2012
  • 15. Markus Gärtner @mgaertne Tuesday, June 5, 2012
  • 16. Players in the Game • James Bach • Michael Bolten (not the singer) • Cem Kaner • Paul Carvalho Tuesday, June 5, 2012
  • 17. Ressources Human Resource Paul Carvalho http://swtester.blogspot.de/ Michael Bolton http://www.developsense.com/blog/ James Bach http://www.satisfice.com/blog/ Elisabeth Hendrickson http://testobsessed.com/ Markus Gärtner http://www.shino.de/blog/ Tuesday, June 5, 2012
  • 18. Ressources by James Bach Topic Ressource SBTM Session Based http://satisfice.com/articles/sbtm.pdf Test Management http://people.eecs.ku.edu/~saiedian/ Exploratory Testing Teaching/Fa07/814/Resources/ exploratory-testing.pdf Hands-on Exploratory http://www.satisfice.com/tools/ procedure.pdf Testing Rapid Software Testing http://www.satisfice.com/rst.pdf Tuesday, June 5, 2012
  • 19. The basic misunderstanding • <X> is necessary but not sufficient Tuesday, June 5, 2012
  • 20. An example from agile software development Tuesday, June 5, 2012
  • 21. An example from agile software development Working Software over Comprehensive Documentation Tuesday, June 5, 2012
  • 22. Derived Assumption: Working software is sufficient Tuesday, June 5, 2012
  • 23. Reality: Working software is necessary, but not sufficient! Tuesday, June 5, 2012
  • 27. So what’s the problem? ■ Software testing, the process of verifying that a software program works as expected Source: http://en.wikipedia.org/wiki/Test Tuesday, June 5, 2012
  • 28. So what’s the problem? ... but ... Tuesday, June 5, 2012
  • 29. So what’s the problem? ■ Test [...] Etymology From Old French test (“an earthen vessel, especially a pot in which metals were tried”) Source: http://en.wiktionary.org/wiki/test Tuesday, June 5, 2012
  • 30. What do test pilots do? Tuesday, June 5, 2012
  • 31. What do test pilots do? Tuesday, June 5, 2012
  • 32. What do test pilots do? Tuesday, June 5, 2012
  • 33. What do test pilots do? Tuesday, June 5, 2012
  • 34. What do test pilots do? Tuesday, June 5, 2012
  • 37. Scripted testing With a script, you miss the same things every time. Exploratory Testing @ QUEST 2008" Copyright © 2008 Cem Kaner Tuesday, June 5, 2012
  • 38. Defensive programming - Check all input parameters - Ascertain availability of resources etc. Defensive programming defends against the currently impossible (c2 Wiki) Tuesday, June 5, 2012
  • 39. Design by Contract Betrand Meyer Since 1986 Programming language: Eiffel Tuesday, June 5, 2012
  • 40. Design by Contract Betrand Meyer Since 1986 Programming language: Eiffel Preconditions Postconditions Invariants Tuesday, June 5, 2012
  • 41. TDD • Unit Tests • Black-Box Tests • White-Box Tests • RSpec etc. Tuesday, June 5, 2012
  • 42. BDD • Acceptance Tests • (Mostly) Black-Box Tests • Based on Scenarios Tuesday, June 5, 2012
  • 43. ATDD • Bigger gap between test creation and execution • Exclusively Black Box Testing Tuesday, June 5, 2012
  • 44. An adage from agile software development Tuesday, June 5, 2012
  • 45. An adage from agile software development INVEST in stories and come up with SMART tasks Tuesday, June 5, 2012
  • 46. INVEST Independent Negotiable Valuable Estimatable Small Testable Tuesday, June 5, 2012
  • 47. SMART Specific Mesuarable Achievable Realistic Tangible Tuesday, June 5, 2012
  • 48. Independent Specific Negotiable Mesuarable Valuable Achievable Estimatable Realistic Small Tangible Testable Tuesday, June 5, 2012
  • 49. Acceptance Criteria • To accomodate pre-conditions Acceptance Criteria can be expressed as • Given [Precondition] When [Actor and Action] Then [Observable Result] • Naresh Jain Slide 29 Tuesday, June 5, 2012
  • 50. Specification by Example ... It is the result of a research on how teams all over the world specify, develop, test and deliver the right software, without defects, in very short iterative delivery cycles. ... Tuesday, June 5, 2012
  • 51. What’s left for the Testers? Tuesday, June 5, 2012
  • 52. DbC vs. TDD Design by Contract implies automated defensive programming pre- and postconditions and Test Driven Design is invariants are checked at mostly applied during design- runtime time. Expensive checks are Tests are executed whenever inhibitive appropriate - but usually not in the production environment Expensive checks are possible but unwarranted Tuesday, June 5, 2012
  • 53. Checking vs. Testing Checking is something that we do with the motivation of confirming existing beliefs Testing is something that we do with the motivation of finding new information. http://www.developsense.com/blog/2009/08/testing-vs-checking/ Tuesday, June 5, 2012
  • 54. Test Driven Development is an oxymoron Check Driven Development? Tuesday, June 5, 2012
  • 56. Red-Green-Refactor Failing Test Simplify Coding Remove Redundancy Tuesday, June 5, 2012
  • 57. Exploratory Testing From: Paul Carvalho http://swtester.blogspot.de/2012/05/what-is-exploratory-testing.html Tuesday, June 5, 2012
  • 58. So what is Exploratory Testing? "Exploratory Testing is simultaneously learning about the system while designing and executing tests, using feedback from the last test to inform the next." Elisabeth Hendrickson, @testobsessed Quoted by Paul Carvalho Tuesday, June 5, 2012
  • 59. Cone of uncertainty Agile and Iterative Development: A Manager's Guide, Craig Larman 2003 Tuesday, June 5, 2012
  • 61. Cone of test-cases http://swtester.blogspot.de/2012/05/what-is-exploratory-testing.html Tuesday, June 5, 2012
  • 62. Agile testing quadrants http://lisacrispin.com/wordpress/2011/11/08/using-the-agile-testing-quadrants/ Tuesday, June 5, 2012
  • 63. The Prime Directive Be Thoughtful and Methodical Throughout the test procedure, as you complete the tasks, you have lots of freedom about how you do the work. But you must work methodically, and follow the procedure. In the course of creating the result for each task, you’ll find that you have to make a lot of guesses, and some of them will be wrong. But you must think. If you find yourself making wild and uneducated guesses about how the product works, areas of instability, or anything else, stop and talk to the Test Manager. James Bach, 08/26/99, http://www.satisfice.com/tools/procedure.pdf Tuesday, June 5, 2012
  • 64. Scientific Method Formulate a question Hypothesis Prediction Test Analysis Tuesday, June 5, 2012
  • 65. Scientific Method Formulate a question Hypothesis Prediction Test Analysis Tuesday, June 5, 2012
  • 66. Exploratory Testing Complete these five tasks: ✓ Identify the purpose of the product. ✓ Identify functions. ✓ Identify areas of potential instability. ✓ Test each function and record problems. ✓ Design and record a consistency verification test. Source: http://www.satisfice.com/tools/procedure.pdf pg. 11 to 22 Tuesday, June 5, 2012
  • 67. Identify the purpose of the product • With a tangible result (i.e. Document) • Value for others - verifiable etc. • Value for the tester - builds understanding Tuesday, June 5, 2012
  • 68. Identify functions • By actually using (skimming) the product • Explorative (not based on documentation) • Tangible output (Function outline) Tuesday, June 5, 2012
  • 69. From James Bach: http://www.satisfice.com/tools/procedure.pdf Tuesday, June 5, 2012
  • 70. Identify areas of potential instability • Results: • Documented areas (before testing) • Documented data for testing • Documented Strategies Tuesday, June 5, 2012
  • 71. Test each function and record problems • Actually this means: Try to do things the development teams did not think of. • Remember: A Problem is just the difference between the expected behavior and the observed behavior - whether it is cause for action has to be decided by the customer Tuesday, June 5, 2012
  • 72. Design and record a consistency verification test • Try to extrapolate if the Software would run in (slightly) modified environments. (The original 5 steps are from 1999 (gasp) and relate to specific windows versions - the basic requirements still hold through) Tuesday, June 5, 2012
  • 73. Tool Support Area Tool URL http:// Recording spector www.spectorsoft.com/ http:// Recording BBTestAssistant www.bbsoftware.co.uk/ products.aspx http:// Recording Wink www.debugmode.com/ wink/ http://www.sirius- All in One TestExplorer sqa.com/ http://www.satisfice.com/blog/archives/77 Tuesday, June 5, 2012
  • 74. Session Based Test Management • Original description of ET : 1999 • Today : 2012 • SBTM: A way to organize exploratory testing • Working in 45 to 90 min Session based on Charters • See: http://satisfice.com/articles/sbtm.pdf Tuesday, June 5, 2012
  • 75. What are Charters Counterpart to the use case / user story Some of the same attributes - Roles, activities, actors, systems Examples: - “Analyze <Product>’s View menu functionality and report on areas of potential risk.” Tuesday, June 5, 2012
  • 77. Hierarchy Ad-Hoc Testing Tuesday, June 5, 2012
  • 78. Hierarchy Exploratory Testing Ad-Hoc Testing Tuesday, June 5, 2012
  • 79. Hierarchy Session Based Testing Exploratory Testing Ad-Hoc Testing Tuesday, June 5, 2012
  • 80. Hierarchy Session Based Test Management Session Based Testing Exploratory Testing Ad-Hoc Testing Tuesday, June 5, 2012
  • 82. ET-Spectrum Exploratory Testing according to: http://www.satisfice.com/rst.pdf Tuesday, June 5, 2012
  • 83. Can we prove it? Testing shows the presence, not the absence of bugs J.N. Buxton and B. Randell, eds, Software Engineering Techniques, April 1970, p. 16. Report on a conference sponsored by the NATO Science Committee, Rome, Italy, 27–31 October 1969. via http://en.wikiquote.org/wiki/Edsger_W._Dijkstra Program testing can be used to show the presence of bugs, but never to show their absence! Source: Notes On Structured Programming, 1972, at the end of section 3, On The Edsger Wybe Dijkstra Reliability of Mechanisms. EWD249 (1970). Tuesday, June 5, 2012
  • 84. TDD • Technique to drive the design of your code y, t! r n sa cie s fi ce uf e s N ot t n Bu Tuesday, June 5, 2012
  • 85. BDD • Technique to capture requirements and drive desired functionality y, t! r n sa cie s fi ce uf e s N ot t n Bu Tuesday, June 5, 2012
  • 86. ET • Technique to drive the discovery of unwanted, unexpected and unpredicted behaviour y, t! r n sa cie s fi ce uf e s N ot t n Bu Tuesday, June 5, 2012
  • 87. About me “Consulting on software development processes and software architecture since the last millennium” - @MMahlberg Google me: “Michael Mahlberg” Tuesday, June 5, 2012
  • 89. Flight-Envelope Photo Credits http://en.wikipedia.org/wiki/File:PerformanceEnvelope.gif Testpilots: http://www.flickr.com/photos/x-ray_delta_one/4106250812/in/photostream/ Spreading junction http://www.flickr.com/photos/elsie/4164899/in/photostream/ Tokio Tower http://www.flickr.com/photos/wilhelmja/330965980/in/photostream/ Eiffel Tower http://www.flickr.com/photos/gcattiaux/2565101112/in/photostream/ Spectrum http://www.flickr.com/photos/eiriknewth/132859486/in/photostream/ Armor http://www.flickr.com/photos/nicmcphee/1563082378/in/photostream/ Aerobatics http://www.flickr.com/photos/ssandars/6827302/in/photostream/ Airbus http://www.flickr.com/photos/mwanasimba/4097232435/ Tuesday, June 5, 2012