Slide 1

Slide 1 text

Deliberate Testing in an Agile World Dan North @tastapod

Slide 2

Slide 2 text

Software delivery used to be linear

Slide 3

Slide 3 text

Agile brought people together

Slide 4

Slide 4 text

Agile brought people together

Slide 5

Slide 5 text

Programmers thought testing was cool!

Slide 6

Slide 6 text

Programmers thought TDD was cool!

Slide 7

Slide 7 text

Programmers thought TDD was testing!

Slide 8

Slide 8 text

Programmers wrote lots of tests! BDD SbE Unit tests Functional tests TDD ATDD Performance tests Load tests Soak tests Integration tests Smoke tests

Slide 9

Slide 9 text

BDD SbE Unit tests Functional tests TDD ATDD Performance tests Load tests Soak tests Integration tests Smoke tests Testers focused on the things programmers couldn’t automate

Slide 10

Slide 10 text

Testers focused on the things programmers couldn’t automate Exploratory testing TDD BDD SbE ATDD Functional tests Integration tests Unit tests Load tests Performance tests Usability testing Soak tests Smoke tests

Slide 11

Slide 11 text

Testing Corners, or YATQ Automated Manual Deterministic Stochastic TDD BDD SbE ATDD Functional tests Unit tests Load tests Smoke tests Performance tests Soak tests Exploratory testing Integration tests Usability testing

Slide 12

Slide 12 text

Automated Manual Deterministic Stochastic TDD BDD SbE ATDD Functional tests Unit tests Load tests Smoke tests Performance tests Soak tests Exploratory testing Integration tests Usability testing Testing Corners, or YATQ Wat? Wat?

Slide 13

Slide 13 text

Automated Manual Deterministic Stochastic TDD BDD SbE ATDD Functional tests Unit tests Load tests Smoke tests Performance tests Soak tests Integration tests Usability testing User journey testing A/B testing Fuzzing Property-based testing Data mother Resilience Documentation testing Exploratory testing Testing Corners, or YATQ Wat?

Slide 14

Slide 14 text

Risk Plane B A C F G D H E Im pact 80% ? Likelihood

Slide 15

Slide 15 text

Risk Plane B A C F D G H E Im pact 80% ? F D 80% ? 80% ? Likelihood

Slide 16

Slide 16 text

Risk Plane B A C F D G H E 80% ? Im pact Likelihood

Slide 17

Slide 17 text

Risk Planes B A C F D G H E Im pact Likelihood Context

Slide 18

Slide 18 text

Risk Planes B A C F D G H E Im pact Likelihood D Context Functional correctness

Slide 19

Slide 19 text

Risk Planes B A C F D G H E Im pact Likelihood Operational stability A Context

Slide 20

Slide 20 text

Risk Planes B A C F D G H E Im pact Likelihood Regulatory compliance C G Context

Slide 21

Slide 21 text

Risk Planes Im pact Likelihood Each context has its own risk profile Context

Slide 22

Slide 22 text

Risk Planes Im pact Likelihood Stakeholder Each stakeholder has their own risk appetite

Slide 23

Slide 23 text

Testing Corners revisited Automated Manual Deterministic Stochastic TDD BDD SbE ATDD Functional tests Unit tests Load tests Smoke tests Performance tests Soak tests Integration tests Usability testing User journey testing A/B testing Fuzzing Property-based testing Data mother Chaos Monkey Documentation testing Exploratory testing

Slide 24

Slide 24 text

Testing Corners revisited Automated Manual Deterministic Stochastic TDD BDD SbE ATDD Functional tests Unit tests Load tests Smoke tests Performance tests Soak tests Integration tests Usability testing User journey testing A/B testing Fuzzing Property-based testing Data mother Chaos Monkey Documentation testing Exploratory testing Compliance Failover Forensic Diagnostic Release Alerting Penetration SQL Injection DoS Accessibility Safety Fire drills XSS DNS

Slide 25

Slide 25 text

Deliberate testing in an agile world Identify all the stakeholders Understand their risk appetite Understand their constraints Study the application Understand its components and flows Explore each Risk Plane with its stakeholder Test according to the overall risk profile

Slide 26

Slide 26 text

…is nuanced and multi-dimensional Deliberate testing in an agile world

Slide 27

Slide 27 text

Fortunately, so are deliberate testers

Slide 28

Slide 28 text

Thanks for listening Dan North http:/ /dannorth.net @tastapod