exploratory testing - cftlexploratory testing is not a talent, it’s a set of skills that can be...

51
Exploratory Testing Rediscover the art of exploratory testing Ingo Philipp

Upload: others

Post on 28-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Exploratory TestingRediscover the art of exploratory testing

Ingo Philipp

Page 2: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

www.tricentis.com

Page 3: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

E2E Test Automation Load Testing Test Management Process Automation

Page 4: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Just as glasses do not see, tools do not test.Glasses help us to see, tools help us to test

James Bach

‹› Glasses don't do the seeing, tools don't do the testing.@IngoPhilipp

Page 5: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Testing is no more about test casesthan astronomy is about telescopes

Ingo Philipp

‹› Testing is not test cases just as recipes is not cooking.

∷ Inspired by Edsger Wybe Dijkstra & Michael Bolton

@IngoPhilipp

Page 6: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

If we’re testing badly, then automation canhelp us to test badly at an accelerated rate

Michael Bolton

‹› Automation accelerates, intensifies, amplifies, often simplifies, and sometimes even enables testing.

@vertaontest ‹› If you automate chaos, all you get is faster chaos.

Page 7: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

∷ Inspired by Brendan Leonard

Testing? There's only automation!We automate everything

OK, there's testing, and testingis probably more than just automation.

We're just not convinced that we really need it

Oops

Damn!

‹› Confusing testing with automation is a dangerous thing.

Page 8: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Test Case

Page 9: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

PassingTest Case

Page 10: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

PassingTest Case

@iamdevloper

Page 11: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

© BBC

Page 12: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Testing is exactly likewashing a pig. Because

it’s messy. It has no rules. Noclear beginning, middle, or end.

It’s kind of a pain in the ass, and when you’re done you’re

not sure if the pig is really clean or even why you were washing

a pig in the first place.

∷ Inspired by Luke Sullivan © BBC

Page 13: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Testing is exactly likewashing a pig. Because

it’s messy. It has no rules. Noclear beginning, middle, or end.

It’s kind of a pain in the ass, and when you’re done you’re

not sure if the pig is really clean or even why you were washing

a pig in the first place.

∷ Inspired by Luke Sullivan

‹› We actually wash a performing pig.

Page 14: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Testing is exactly likewashing a pig. Because

it’s messy. It has no rules. Noclear beginning, middle, or end.

It’s kind of a pain in the ass, and when you’re done you’re

not sure if the pig is really clean or even why you were washing

a pig in the first place.

∷ Inspired by Luke Sullivan

That’s what we can know‹› We actually wash a performing pig.

Page 15: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Testing is exactly likewashing a pig. Because

it’s messy. It has no rules. Noclear beginning, middle, or end.

It’s kind of a pain in the ass, and when you’re done you’re

not sure if the pig is really clean or even why you were washing

a pig in the first place.

∷ Inspired by Luke Sullivan

That’s what we can know

That’s what we know

That’swhat wecheck

Problem

Knowledge Gap

© Richard Bradshaw

Page 16: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

∷ Cem Kaner

The purpose of testing is toclose the knowledge gap

The goal is information,not gratuitous automation

Testing is and always will bea search for information

That’s what we can know

That’s what we know

That’swhat wecheck

Problem

Knowledge Gap

© Richard Bradshaw

Page 17: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

© www.wikipedia.org – How to use toilet paper?

OverUnder

Confirmation« Demonstrate your depth of knowledge »

Exploration« Demonstrate your breadth of knowledge »

Page 18: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Mechanical TestingHere we process predesigned data in predefined steps

Monitor Known RisksHere we confirm what we already know

Low Information ValueHere we check what we have already learned

Change Detector

Confirmation« Demonstrate your depth of knowledge »

Exploration« Demonstrate your breadth of knowledge »

Creative TestingHere we create new test ideas

Analyze Potential RisksHere we focus on the things we don’t know

High Information ValueHere we learn something new about software

Problem Detector

∷ Bolton ‹› Kaner ‹› Bach

Page 19: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Checking« Requires Processing »

Evaluate a product by applying algorithmicdecision rules to specific observations of a product

Change Detector

∷ Bolton ‹› Kaner ‹› Bach

Exploration« Demonstrate your breadth of knowledge »

Problem DetectorDoes this assertion pass or fail?

Creative TestingHere we create new test ideas

Analyze Potential RisksHere we focus on the things we don’t know

High Information ValueHere we learn something new about software

Page 20: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Checking« Requires Processing »

∷ Bolton ‹› Kaner ‹› Bach

Evaluate a product by applying algorithmicdecision rules to specific observations of a product

Change Detector

Exploring« Requires Thinking »

Problem Detector

Evaluate a product by learning about itthrough exploration and experimentation

Does this assertion pass or fail? Is there a problem here?

Page 21: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Checking« Requires Processing »

∷ Rich Rogers

Evaluate through

InstructionsPay attention to

Deviations

Create

Test CasesFollow

Procedure

Examine

RequirementsFactory

Process

Change Detectors ‹› Monitor Known Risks

Exploring« Requires Thinking »

Problem Detector

Evaluate a product by learning about itthrough exploration and experimentation

Is there a problem here?

Page 22: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Checking« Requires Processing »

∷ Rich Rogers

Evaluate through

InstructionsPay attention to

Deviations

Create

Test CasesFollow

Procedure

Examine

RequirementsFactory

Process

Change Detectors ‹› Monitor Known Risks

Investigate through

ExperimentsPay attention to

Oracles

Create

Test IdeasFollow

Clues

Examine

RisksAdaptive

Investigation

Problem Detectors ‹› Analyze Potential Risks

Exploring« Requires Thinking »

Page 23: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Checking« Requires Processing »

∷ Rich Rogers

Evaluate through

InstructionsPay attention to

Deviations

Create

Test CasesFollow

Procedure

Examine

RequirementsFactory

Process

Me

ch

an

ica

l P

roce

ssChange Detectors ‹› Monitor Known Risks

Investigate through

ExperimentsPay attention to

Oracles

Create

Test IdeasFollow

Clues

Examine

RisksAdaptive

Investigation

Problem Detectors ‹› Analyze Potential RisksC

rea

tive

Pro

cess

Exploring« Requires Thinking »

Robots Investigators

Page 24: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Behind a test case, there's a test. Behind a test, there's atest idea. Behind a test idea, there's a human tester

Ingo Philipp

‹› If your test case is good-for-nothing, you are probably good-for-nothing.

∷ Just as you don't blame gravity for falling flat on your face, you shouldn't blame your tools for your poor test cases.

Page 25: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Checking is a guest in the house of testing,exploration is a permanent resident

Michael Bolton

‹› Exploration isn’t something special in testing, it is central to testing, and so all true testing is exploratory.

Page 26: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

CheckedMachine & Human Checking

ExploredHuman Exploration

TestedThorough Testing

+

=

AgileTesting Equation

∷ Elisabeth Hendrickson

‹› The coin of testing has two sides.

Page 27: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

ExploratoryTesting

HumanChecking

MachineChecking

ManualTesting

CheckedMachine & Human Checking

ExploredHuman Exploration

TestedThorough Testing

+

=

Page 28: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

‹› Think of AI-assisted testing, not AI-based testing.

∷ Picture by Shelly Palmer

Page 29: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Exploratory testing is not a talent,it’s a set of skills that can be learnt

Ingo Philipp

‹› The beautiful thing about learning exploratory testing is that no one can take it away from you.

∷ Inspired by Edward de Bono

Page 30: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Technique

Provides Systematic Procedure

Approach

Provides Orientation

Page 31: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

1

2

3

4

5

Technique

Provides Systematic Procedure

Page 32: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

2

3

4

5

Technique

Provides Systematic Procedure

∷ Jonathan Bach

Page 33: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

2

3

4

5Straightjacketed Imagination

Page 34: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

2

3

4

5

Session

CharteredUninterrupted

Reviewable

∷ Jonathan Bach

Page 35: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

2

3

4

5

Timebox

∷ Jonathan Bach

Page 36: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

2

3

4

5

Charter

∷ Jonathan Bach

Page 37: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

3

4

5

Scope

Page 38: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

3

4

5Verification

Does our software meet the specification?

ValidationDoes our software meets the user's needs?

ProductIdea

ActualProduct

ProductDescription

You

Page 39: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

BDD is the art of usingexamples in conversations

to illustrate behavior

Liz Keogh

‹› Use BDD to create a shared understanding.

Nobody (e.g. product owner)can make you (e.g. tester) think

& feel as deeply as they do about software. Be aware of this fact

to explore this gap.

∷ Inspired by Daniel Saint

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

3

4

5

Page 40: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

HavingConversations

is more important than

CapturingConversations

is more important than

AutomatingConversations

∷ Liz Keogh ‹› CAST 2018

‹› BDD is about understanding, not test case automation.

Nobody (e.g. product owner)can make you (e.g. tester) think

& feel as deeply as they do about software. Be aware of this fact

to explore this gap.

∷ Inspired by Daniel Saint

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

3

4

5

Page 41: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Nobody (e.g. product owner)can make you (e.g. tester) think

& feel as deeply as they do about software. Be aware of this fact

to explore this gap.

∷ Inspired by Daniel Saint

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

3

4

5

What theycan put into

words

What theysay to their

teams

Whatproductownersthink

What you usuallyunderstand

∷ arcfly.blogspot.com

‹› We don't just explore the unknown in our software.

Page 42: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

3

4

5

R » RecentWhat parts of the product changed recently?

C » CoreWhat critical parts of the product must continue to work?

R » RiskyWhat parts of the product are inherently risky?

C » ConfigurationWhat parts of the product depend on environment settings?

R » RepairedWhat parts of the product changed to address defects?

C » ChronicWhat parts of the product chronically break?

∷ Karen Johnson

Page 43: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

3

4

5

S » StructureTest what the product is made of.

F » FunctionTest what the product does.

D » DataTest what the product processes.

P » PlatformTest what the product depends upon.

O » OperationsTest how the product is used.

T » TimeTest how the product is affected by time.

∷ James Bach

Page 44: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

Tour-Based TestingSet concrete goals to provide a clear focus

5

4Goals

MuseumTour

SupermodelTour

FedExTour

SaboteurTour

Couch PotatoTour

MoneyTour

∷ James Whittaker

Page 45: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

Tour-Based TestingSet concrete goals to provide a clear focus

5

4@speed

QualityQuality is value to some person

∷ Jerry Weinberg

Page 46: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

Tour-Based TestingSet concrete goals to provide a clear focus

5

4

Quality is inherently subjective

Different stakeholderswill perceive the same product ashaving different levels of quality

We must look for differentthings for different stakeholders

We must diversify testing

∷ Jerry Weinberg

Page 47: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

Tour-Based TestingSet concrete goals to provide a clear focus

Polychrome TestingExplore the product from different viewpoints to diversify testing

5

Page 48: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Diversity

Emotional

Critical

Creative

Control

Positive Factual

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

Tour-Based TestingSet concrete goals to provide a clear focus

Polychrome TestingExplore the product from different viewpoints to diversify testing

5

© Edward De Bono

Page 49: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Ideas

Session-Based TestingStructure exploratory testing to allow large-scale implementations

Requirements-Based TestingLimit the scope to make it manageable

Tour-Based TestingSet concrete goals to provide a clear focus

Polychrome TestingExplore the product from different viewpoints to diversify testing

Scenario-Based TestingCapture each test idea to make it reviewable

Page 50: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

Testing is not so much a thing you do,it’s far more a way you think

Michael Bolton

‹› Testing is enactment of critical thinking about software to help people make better decisions.

Page 51: Exploratory Testing - CFTLExploratory testing is not a talent, it’s a set of skills that can be learnt Ingo Philipp ‹› The beautiful thing about learning exploratory testing

QuestionsThe show is over. It’s your turn.

?