do you even need to automate the gui?

26
Do You Even (Need) To Automate (The GUI)? Matt Heusser 2017 Edition

Upload: matt-heusser

Post on 21-Jan-2018

193 views

Category:

Software


0 download

TRANSCRIPT

Do You Even (Need) To Automate (The GUI)?

Matt Heusser 2017 Edition

The Great Lifting Irony

Setting Goals

VAPID goals:

Vague Amorphous Pie in the sky Irrelevant Delayed

Setting Goals

VAPID goals:

Vague Amorphous Pie in the sky Irrelevant Delayed

Sub-Optimization

Sub-Optimization II

Sub-Optimization III

de Automation Delay

What are estimates for?Five-Minute Provisioning

What about: * Continuous Integration yields builds * Create a test environment for a given build on-demand * Self-service * Within 5 minutes

What are estimates for?Unit Tests - Test Driven Development

• Measure Twice, Cut Once • Higher First-Time Quality • Less Regressions • Small, easy to separate components • … but we can’t • That is a design problem • TDD Enables good design

What are estimates for?Unit Tests - Test Driven Development

What are estimates for?Unit Tests - Test Driven Development

What are estimates for?Unit Tests - Test Driven Development

What are estimates for?Unit Tests - Test Driven Development

What are estimates for?Isolated Components and Service Contracts

What are estimates for?Deploy by Component

Why deploy the entire app when you can: - Deploy a single web service? - Deploy a single web page? - Deploy a single PHP file?

Continuous Monitoring

Right Project 90%Right StoryRight DesignRight CodeRight TestingRight Deploys

Improve First-Time Quality

Right Project 90%Right Requirements

90%

Right Design 90%Right Code 90%Right Testing 90%Right Deploys 90%

Improve First-Time Quality

Activity FTQ CumulativeRight Project 90% 90%Right Requirements

90% 81%

Right Design 90% 73%Right Code 90% 66%Right Testing 90% 59%Right Deploys 90% 53%

Improve First-Time Quality

Activity FTQ CumulativeRight Project 80% 80%Right Requirements

80% 64%

Right Design 80% 51%Right Code 80% 41%Right Testing 80% 33%Right Deploys 80% 26%

Improve First-Time Quality

Activity FTQ CumulativeRight Project 70% 70%Right Requirements

70% 49%

Right Design 70% 34%Right Code 70% 24%Right Testing 70% 17%Right Deploys 70% 12%

Improve First-Time Quality

Putting it all together

Deploys are local / micro Test environments are easy to create

Serious problems are rare Found quickly

local And easy to roll back

Putting it all together

What problems does mass-inspection GUI Automation solve?

Do we have them anymore? …

Do you even need to automate the GUI?

Deploys are local / microRegression-Testing can be triaged

Serious problems are rareFound quickly

localAnd easy to roll back

The Great Lifting Irony

Solution: Tool Assisted Testing

Combine human and machine for the best

attributes of each