24
Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017

Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Characteristics of 'good' agile testing solutions

Daniel BurnsKarlsruhe Entwicklertag, May 2017

Page 2: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

1 Source: www.forbes.com

What If I Don't Get This Digital-Industrial

Thing Right?

Page 3: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Test Automation is hard

„Automated testing tools are expected to makethings faster and easier for IT companies.“

„The reality is that automated testing projects failand the business goes back to manual testing.“

„Testing is then outsourced to off shore locations.“

Page 4: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Some of the common reasons for failure…

„Unrealistic Expectations, now we’ve invested everything works straight away“

„One size fits all.“

„Not understanding the testing requirements.“

„Lack of management buy-in.“

„No budget and no ongoing maintenance... fire and forget“

Page 5: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Automated testing is a necessity not a luxury

ResourcesMaintenance

Bugs

New Features

new features = value added Time

Page 6: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Cost of Testing – Manual v Automated

Execution Setup

Maintenance

Manual Automated

Page 7: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Critical success factor is to minimise the ”Time to Effectiveness”

Time to Effectiveness

Page 8: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Let’s start with the basics then… the bottom line

Page 9: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Core ‘-ilities’ of any test automation tool

1. Maintainability 2. Reliability 4. Traceability3. Scalability

Page 10: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Agile Testing Pyramid – The basics

Page 11: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Top Down

”doing the right things”

Bottom Up

”are things being done right”

Agile Testing Pyramid – Two different world-views

Page 12: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Agile Testing Pyramid – Problems

FragileSlowIncomplete‘Record and replay’

No ’business meaning’Tightly coupled to code‘Definition of done’White Box

Page 13: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Agile Testing Pyramid – Win comes with at the API

ResilientFast to executeFunctionally completePredictable

’business meaning’Black box

Page 14: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Okay… you still need ’some’ GUI tests

5%

95 %

#1 Focus on the API (but you still need the GUI)

Page 15: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Tightly bound to C.I. Tools

#2 - Continuous Testing

Page 16: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Communication - From Verification to Feedback

#3 - Feedback

Page 17: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Zero Tolerance for failures

#4 - Quarantine

Page 18: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

If you go to the trouble of making a test, use it for more than one thing

#5 - Multi-Purpose

Page 19: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Access to the whole system

#6 - Full stack analysis

Page 20: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Development starts with the tests and it integrates the entire process

#7 - Push to the Left

Page 21: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

More than just a tool… its a fully integrated solution

#8 - Set, Implement, Enforce Processes

Processes

People

Tools

Page 22: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Focus on the APIContinuous TestingFeedbackQuarantineMulti PurposeFull Stack AnalysisPush to the leftSet, Implement, Enforce Processes

Core -ilities

Agile Test Characteristics

A Checklist…

Page 23: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Focus on the APIContinuous Testing

FEedbackQuaranTine

Multi Purpose

Full Stack Analysis

Push to the lEft

Set, Implement, Enforce Processes

MR(s) T

F.A.C.E.T.I.M.E.

A Better Checklist…MaintainabilityReliabilityScalabilityTraceability

Page 24: Characteristics of 'good' agile testing solutions · Characteristics of 'good' agile testing solutions Daniel Burns Karlsruhe Entwicklertag, May 2017. 1 Source: What If I Don't Get

Test everything, all the time!

[email protected]

WWW.TESTIFI.IO