testing the legacy: making existing applications testable without epic efforts

23
testing the Legacy aking existing applications testabl without epic efforts Alex Leonov [email protected] @alexanderleonov

Upload: alex-leonov

Post on 15-Apr-2017

1.058 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

testing theLegacy

making existing applications testablewithout epic efforts

Alex [email protected]

@alexanderleonov

Page 2: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

Why is it not done yet?• no people• no time• no money

Page 3: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts
Page 4: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

Why is it not done yet?• no people• no time• no money

doesn’t hurt enough

Page 5: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts
Page 6: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

How to eat an elephant?• piece• by• piece

Page 7: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

How to make it testable?• bug• by• bug

Page 8: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

if they say it’s Impossible

remember that it’simpossible for them

Page 9: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

you need to get

The Commitment

Page 10: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

Automated Tests

Old Application New Application

Page 11: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

Old Application

Old Code

Page 12: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

Automated Tests

Bubble WrapOld Application

Old CodeLogic

Page 13: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

Automated Tests

Bubble WrapOld Application

Old CodeProxy

New Application

Services

Page 14: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

Automated Tests

Old Application

Old Interfaces

New ApplicationInterfaces

Services

Page 15: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

Automated Tests

Old Application New Application

Page 16: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

Automated Tests

New Application

Page 17: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

The Easy Wayor

The Good Way

Page 18: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

The Easy Way• make code with bugfix testable• write down gherkins• hope someone updates them

Page 19: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts
Page 20: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

The Good Way• make bugfix testable• make “feature” testable• make executable gherkins• add this to the Definition of Done

Page 21: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

Things to Remember• view features as services• stateless is better than stateful• don’t test the whole all the time• don’t let it slip

Page 22: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

Recap• get commitment• don’t compromise on quality• automate everything you touch• bubble-wrap old stuff• start small and grow over time

Page 23: Testing The Legacy: Making Existing Applications Testable Without Epic Efforts

Alex [email protected]@alexanderleonov

testing theLegacy