Collaborative Exploratory and Unit testing -talk at Testival

21
Collaborative Exploratory and Unit Testing Maaret Pyhäjärvi Email: <[email protected]> | Twitter: maaretp Maaret Pyhäjärvi & Llewellyn Falco Nimeä | Attribution (Finland) http://creativecommons.org/licenses/by/1.0/ fi/ http://creativecommons.org/licenses/by/1.0/ fi/deed.en

Transcript of Collaborative Exploratory and Unit testing -talk at Testival

Page 1: Collaborative Exploratory and Unit testing -talk at Testival

Collaborative Exploratory and Unit Testing

Maaret PyhäjärviEmail: <[email protected]> | Twitter:

maaretpMaaret Pyhäjärvi & Llewellyn FalcoNimeä | Attribution (Finland)http://creativecommons.org/licenses/by/1.0/fi/http://creativecommons.org/licenses/by/1.0/fi/deed.en

Page 2: Collaborative Exploratory and Unit testing -talk at Testival

A Course Experience in a Mob

Page 3: Collaborative Exploratory and Unit testing -talk at Testival

How We Became How We Are

Page 4: Collaborative Exploratory and Unit testing -talk at Testival

Testing as Performance (Exploring) vs. Testing as Artifact Creation

Page 5: Collaborative Exploratory and Unit testing -talk at Testival

Certainty“I know what I

know”Exploit

Caution“I know what I don’t

know”Explore

Amnesia“I don’t know what I

know”Expose

Ignorance“I don’t know what I

don’t know”Experiment

Looking at World from Different Angles

Unit

Test

ing

Expl

orat

ory

Test

ing

Page 6: Collaborative Exploratory and Unit testing -talk at Testival

Testers don’t break your code, they

break your illusions about the code.

-- adapted from James Bach

Page 7: Collaborative Exploratory and Unit testing -talk at Testival

What Testing Gives UsUn

it Te

stin

g

Expl

orat

ory

Test

ing

SPECFEEDBACKREGRESSIONGRANULARITY

GUIDANCESERENDIPITY

MODELSUNDERSTANDINGTesting as

artifact creation

Testing as performan

ce

Page 8: Collaborative Exploratory and Unit testing -talk at Testival

A Few Ideas of Exploratory Testing

• It’s not just about GUI and finalized features– You can explore an API– You can adapt to known limitations

• It’s not just for functional– You should do exploratory performance testing

• It’s not without automation– Sometimes you need to do things humans can’t do!

– exploratory test automation• Repeating is seldom an issue

– Vary the data, the environment, the story around your testing – exploratory regression testing

Page 9: Collaborative Exploratory and Unit testing -talk at Testival

A Few Ideas of Unit Testing• There’s units of many sizes, really

– Gravitating towards behaviors as units• It works great for expressing and

recording intent– Spec, Feedback, Regression, Granularity!

• There’s more than xUnit – E.g. ApprovalTests for more powerful

asserts

Page 10: Collaborative Exploratory and Unit testing -talk at Testival

LEARNING TO COLLABORATE

Page 11: Collaborative Exploratory and Unit testing -talk at Testival

1st session on unit testing

* http://visible-quality.blogspot.fi/2015/01/a-learning-journey-with-unit-tests-just.html

Page 12: Collaborative Exploratory and Unit testing -talk at Testival

Strong Style Pairing“For an idea to go from your head to

the computer it must go though someone else’s hands”

*http://llewellynfalco.blogspot.fi/2014/06/llewellyns-strong-style-pairing.html

Page 13: Collaborative Exploratory and Unit testing -talk at Testival

Farming vs. Hunting

Page 14: Collaborative Exploratory and Unit testing -talk at Testival

“Look at me” Pairing

Page 15: Collaborative Exploratory and Unit testing -talk at Testival

Exploratory Testing

Page 16: Collaborative Exploratory and Unit testing -talk at Testival

Why do this?

“It’s about getting the best (not the most) out of everyone”

Page 17: Collaborative Exploratory and Unit testing -talk at Testival

Qua

lity

Page 18: Collaborative Exploratory and Unit testing -talk at Testival

Qua

lity

Page 19: Collaborative Exploratory and Unit testing -talk at Testival

Qua

lity

Some devs care about testingPairing & Mobbing

Remote desktop

More powerful unit tests

Some testers are great product owners

MindMaps are amazing

Skilled tester exist

Testers don’t report everything

Page 20: Collaborative Exploratory and Unit testing -talk at Testival

* http://visible-quality.blogspot.fi/2015/09/my-first-full-day-of-mob-programming.html

That would’ve been a

nasty one to find later

Page 21: Collaborative Exploratory and Unit testing -talk at Testival

Thank you.

@maaretp(please connect with me through Twitter or

LinkedIn)