Slide 1

Slide 1 text

B E Y O N D B D D M A T T W Y N N E , C U K E U P ! N Y C 2 0 1 4

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

S TA G E 1 : B U R N E D T O A S T

Slide 4

Slide 4 text

S TA G E 1 : B U R N E D T O A S T 1. Programmers write bugs 2. Testers find bugs 3. Project managers prioritise bugs 4. Programmers fix bugs 5. GOTO 1

Slide 5

Slide 5 text

I ’ L L B U R N I T, Y O U S C R A P E I T ” “ L E T ’ S M A K E T O A S T T H E A M E R I C A N WAY: – D E M M I N G

Slide 6

Slide 6 text

S TA G E 2 : A U T O - B U R N E D T O A S T

Slide 7

Slide 7 text

S TA G E 2 : A U T O - B U R N E D T O A S T 1. Programmers write bugs 2. Testers write automated tests 3. Automated tests find bugs 4. Project managers prioritise bugs 5. Programmers fix bugs 6. GOTO 1

Slide 8

Slide 8 text

T H AT I S N O T B D D

Slide 9

Slide 9 text

E V E N I F Y O U ’ R E U S I N G C U C U M B E R

Slide 10

Slide 10 text

C O D E T E S T F I X B U I L D I N G S O F TWA RE B A C K WA RD S

Slide 11

Slide 11 text

B E H AV I O U R D R I V E N D E V E L O P M E N T

Slide 12

Slide 12 text

C O D E T E S T F I X

Slide 13

Slide 13 text

S TA G E 3 : T H R E E A M I G O S

Slide 14

Slide 14 text

S TA G E 3 : T H R E E A M I G O S 1. Programmers, Testers and BAs define behaviour together 2. Programmers write (less) bugs 3. Testers write (more) automated tests 4. Automated tests find bugs 5. Project managers prioritise bugs 6. Programmers fix bugs 7. GOTO 2

Slide 15

Slide 15 text

Story Rule Example Question Question Rule Example Rule Example

Slide 16

Slide 16 text

S TA G E 3 : T H R E E A M I G O S 1. Programmers, Testers and BAs define behaviour together 2. Programmers write (less) bugs 3. Testers write (more) automated tests 4. Automated tests find bugs 5. Project managers prioritise bugs 6. Programmers fix bugs 7. GOTO 2

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

D O T E S T E R S H AV E T O A U T O M AT E T H E T E S T S ?

Slide 19

Slide 19 text

S TA G E 4 : T E S T- F I R S T

Slide 20

Slide 20 text

S TA G E 4 : T E S T- F I R S T 1. Programmers, Testers and BAs define behaviour together 2. Team automate tests for that behaviour 3. Programmers make the tests pass 4. Testers find missing scenarios 5. GOTO 2

Slide 21

Slide 21 text

B D D

Slide 22

Slide 22 text

S TA G E 5 : D I S I L L U S I O N M E N T

Slide 23

Slide 23 text

S TA G E 5 : D I S I L L U S I O N M E N T • Lots of scenarios • Build takes ages • Build normally broken • Some scenarios flicker • Poor / mixed readability • I hate Cucumber

Slide 24

Slide 24 text

VA L U E O F A T E S T O V E R T I M E -25 0 25 50 75 100

Slide 25

Slide 25 text

W H E N ’ S T H E L A S T T I M E Y O U P U S H E D A T E S T D O W N ? (or just deleted it altogether)

Slide 26

Slide 26 text

Y O U S T I L L H AV E T O D O S O F T WA R E D E S I G N

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

UI Unit

Slide 31

Slide 31 text

UI Unit

Slide 32

Slide 32 text

A C C E P TA N C E T E S T S D O N ’ T H AV E T O B E F U L L - S TA C K T E S T S

Slide 33

Slide 33 text

S TA G E 6 : T R A N S C E N D E N C E

Slide 34

Slide 34 text

S TA G E 6 : T R A N S C E N D E N C E • Problem domain is well understood by the team • Solution models the problem well • Clear architectural boundaries • Fewer end-to-end tests • Scenarios are actually readable • More fun

Slide 35

Slide 35 text

– D AV I D W E S T, O B J E C T T H I N K I N G “Model the problem well enough, and the solution will take care of itself.”

Slide 36

Slide 36 text

T H E E N D