eXtreme Readable Acceptance Testing

25

Transcript of eXtreme Readable Acceptance Testing

Page 1: eXtreme Readable Acceptance Testing
Page 2: eXtreme Readable Acceptance Testing
Page 3: eXtreme Readable Acceptance Testing
Page 4: eXtreme Readable Acceptance Testing

Extreme

Page 5: eXtreme Readable Acceptance Testing

Given

Page 6: eXtreme Readable Acceptance Testing

D

T

B

Developer

Tester

Business Analyst

Product OwnerP

DD

D T

B DD

D T

BD

DD

D T

BD

PT BD

Cross-functional-flat teams

Page 7: eXtreme Readable Acceptance Testing

Story driven iterations

Backlog Ready to Dev Ready to Test Ready to Close Release

Page 8: eXtreme Readable Acceptance Testing

Story driven iterations

Backlog Ready to Dev Ready to Test Ready to Close

BT

D

Release

ACs

3 Amigos

Page 9: eXtreme Readable Acceptance Testing

Story driven iterations

Backlog Ready to Dev Ready to Test Ready to Close Release

D

ATDD/TDD

ATs

Page 10: eXtreme Readable Acceptance Testing

Story driven iterations

Backlog Ready to Dev Ready to Test Ready to Close Release

T

ATs

ACs

vs

Page 11: eXtreme Readable Acceptance Testing

Story driven iterations

Backlog Ready to Dev Ready to Test Ready to Close Release

BT

D

Sign-off

ATs

ACs

+

Page 12: eXtreme Readable Acceptance Testing

● Define/prove system behaviour

● Sync and related to code

● Collaborative ownership

● Communication

Page 13: eXtreme Readable Acceptance Testing

When x000 features

Page 14: eXtreme Readable Acceptance Testing

And spec is not code

Page 15: eXtreme Readable Acceptance Testing

TXT

HTML

wiki

gherkin

code code

Specification Fixture System under test

Page 16: eXtreme Readable Acceptance Testing

Then

Page 17: eXtreme Readable Acceptance Testing
Page 18: eXtreme Readable Acceptance Testing
Page 19: eXtreme Readable Acceptance Testing

● Effort >> readable specification

● Hard to refactor

● Hard to maintain Legacy

Acceptance tests

Page 20: eXtreme Readable Acceptance Testing

TXT

HTML

wiki

gherkin

code code

Specification Specification + Fixture

System under test

Page 21: eXtreme Readable Acceptance Testing

YatSpecYet Another Test Specification Library

github.com/bodar/yatspec

Page 22: eXtreme Readable Acceptance Testing

Test file name

Test name

Test code

Page 24: eXtreme Readable Acceptance Testing

● spec AND code readability

● unit tests and production code

● easy to maintain

Page 25: eXtreme Readable Acceptance Testing

Q&A

Alex Fernandez

@_alexfdz

alexfdz

afernandeznogueria