41
Transformation, Testing and Automation @ p a u l _ g e r r a r d Paul Gerrard paul@gerrardconsultin g.com gerrardconsulting.com Intelligent Definition and Assurance Slide 1

Digital Transformation, Testing and Automation

Embed Size (px)

Citation preview

Page 1: Digital Transformation, Testing and Automation

Digital Transformation, Testing and Automation

@paul_gerrard

Paul [email protected]

om

gerrardconsulting.com Intelligent Definition and Assurance Slide 1

Page 2: Digital Transformation, Testing and Automation

Helping clients transform their testing through

INNOVATION, COACHING and LEADERSHIP

Our CLIENTS– Want to be agile rather than follow Agile

dogma– Have a pragmatic approach and are focused on

delivery– Want a solution that fits, not a badly fitting

suit.

Intelligent Definition and Assurance Slide 2

Page 3: Digital Transformation, Testing and Automation

"Automation is the future!"• Heard that before?• What exactly is possible and impossible with

automation, right here, right now?• Where are the Digital, DevOps and

Continuous Delivery crazes leading us?• Where do testers fit?• How do testers work in high-paced,

automation-dominated environments?• Let's look into the near future and discuss

how we survive or thrive.

Intelligent Definition and Assurance Slide 3

Page 4: Digital Transformation, Testing and Automation

Agenda• PAC Report on Digital Testing• What is Digital Anyway?• What Goes Wrong with Automation?• A Modelling Problem, not a Tools Problem• Models of Testing and Automation• Future Testing• The Tools Knowledge Base• Tomorrow's Challenges.

Intelligent Definition and Assurance Slide 4

Page 5: Digital Transformation, Testing and Automation

PAC Report:Digital Testing: Strategies, Challenges & Measuring Success

http://www.testplant.com/pac-reportSponsored by Accenture, HP, TestPlant, Applause and Worksoft

Intelligent Definition and Assurance Slide 5

Page 6: Digital Transformation, Testing and Automation

Digital is real, important, but only beginning

Intelligent Definition and Assurance Slide 6

Page 7: Digital Transformation, Testing and Automation

Testing is moving closer to the business

Intelligent Definition and Assurance Slide 7

Page 8: Digital Transformation, Testing and Automation

Automation levels are still too low

Intelligent Definition and Assurance Slide 8

Page 9: Digital Transformation, Testing and Automation

What is Digital anyway?• Digital is the buzz-phrase of the moment– Social, Mobile, Analytics, Cloud (SMAC)– Consumerization of IT– Buzzword bingo*

• Agile laggards (gov, large companies) playing catch-up?

• S/W development at the pace of marketing.

* https://zoomph.com/blog/top-20-digital-marketing-buzzwords/

Intelligent Definition and Assurance Slide 9

Page 10: Digital Transformation, Testing and Automation

Why is ‘IT moving closer to business’?• Marketers in charge?• Customer Engagement (CE) focus:– Real-Time benefits *during* CE– Social media is a tool, not a platform– CE simplicity is critical– Data used proactively to manage CE– Leverage and embrace customer feedback– Anticipate and act on customer needs

• Much more aggressive uses of IT• More 'business-focused' IT Product Owners.

Intelligent Definition and Assurance Slide 10

Page 11: Digital Transformation, Testing and Automation

Frequent/regular s/w delivery is critical• Mobile users expect apps to change almost

daily– New features, offers, opportunities all the time

• Users use the best apps to get what they want– Not necessarily the best supplier

• Businesses are in an APPS RACE• Speed of delivery is...– Partly about pro-action– Partly about survival.

Intelligent Definition and Assurance Slide 11

Page 12: Digital Transformation, Testing and Automation

Automation (not just test) is critical• Business wants IT responsiveness (true agility)– Not necessarily 100s of releases/day– Rapid, regular turnaround from ideas to software

delivery• With continuous integration/deployment,

DevOps, developers can now promise Continuous Delivery

• Testers need to provide Continuous Assurance• "Automation through the (shortened) lifecycle"

Intelligent Definition and Assurance Slide 12

• But effective test automation success is still hard to achieve.

Page 13: Digital Transformation, Testing and Automation

A recent survey? - 1997

Intelligent Definition and Assurance Slide 13

Page 14: Digital Transformation, Testing and Automation

Test automation ambition

Intelligent Definition and Assurance Slide 14

We'll have to make a remarkable improvement to make this happen in one year

Page 15: Digital Transformation, Testing and Automation

What Goes Wrong with

Test Execution Automation?

Page 16: Digital Transformation, Testing and Automation

Tools are sensitive instruments

Intelligent Definition and Assurance

You don't need tools and tools won't help, if your software is unstable.

Slide 16

Page 17: Digital Transformation, Testing and Automation

The anti-regression goal• What are you trying to do with automation?• Anti-regression is the primary goal– Detect unwanted change– Insurance that developers can make changes

safely• How do you achieve this?– The automation model must align with the

developer model– You have to collaborate early to achieve

this.

Intelligent Definition and Assurance Slide 17

Page 18: Digital Transformation, Testing and Automation

Testing and automation – a

modelling problem not a tools problemNeed to shift testing thinking to the

left.We model to improve requirements,to eliminate mistakes in code and

automation.

Page 19: Digital Transformation, Testing and Automation

Brian Marick's Original Agile Testing Quadrant

Intelligent Definition and Assurance Slide 19

Page 20: Digital Transformation, Testing and Automation

Crispin & Gregory (Agile Testing version)

Intelligent Definition and Assurance Slide 20

Page 21: Digital Transformation, Testing and Automation

Intelligent Definition and Assurance Slide 21

Page 22: Digital Transformation, Testing and Automation

Intelligent Definition and Assurance Slide 22

Page 23: Digital Transformation, Testing and Automation

What does this tell you?

Page 24: Digital Transformation, Testing and Automation

Are these models useful and still

relevant?

Page 25: Digital Transformation, Testing and Automation
Page 26: Digital Transformation, Testing and Automation

Intelligent Definition and Assurance Slide 26

Page 27: Digital Transformation, Testing and Automation

Questions arising• Automation is a challenge• We haven't been able to implement tools

as effectively as we could in the past• What are the prospects of getting better

at test automation?• What are the alternatives?• Is there a cultural challenge too?• Will testing and testers be the barrier to

success in digital?Intelligent Definition and Assurance Slide 27

Page 28: Digital Transformation, Testing and Automation

Testers and DevOps

How do Testers fit into a DevOps regime?

Intelligent Definition and Assurance Slide 28

Page 29: Digital Transformation, Testing and Automation

Tests, Automation and Trust• Can we trust automation to do all our testing?• Consider four areas:

1. Checks that can be automated by developers2. Checks that can be automated (typically by

system testers) to exercise API-level, end-to-end3. Compatibility checks across browsers, operating

systems, platforms.4. Tests that can only be performed by a human

• Can you 'let go' of late, manual checking?• It requires proactive effort and trust?

Intelligent Definition and Assurance Slide 29

Page 30: Digital Transformation, Testing and Automation

Intelligent Definition and Assurance

How to carve up testing?(AKA Test Strategy)• Push testing to the developers• Minimal automated end-to-end/UI tests• Manual-only tests during development?• Story-boarding, BDD-style prototyping?• UI checks performed on mock-ups/wire-

frames?• Checks that run once, manually, and

never again?• Which to retain for regression/automation?

Slide 30

Page 31: Digital Transformation, Testing and Automation

Intelligent Definition and Assurance

Easier to Trust if you're a visionary• Is your concern that you can't trust the

developers?• Shifting test thinking to the left reduces doubt?• Testers as pathfinders: identify/assess risks,

formulate tests; ensure they are included in automation etc.

• You are not the gatekeeper of quality, the last defence, the only person who cares

• Think more like a visionary, risk-identifier, risk manager, pathfinder, a facilitator and a coach/mentor.

Slide 31

Page 32: Digital Transformation, Testing and Automation

Monitoring and Improvement• A key discipline of DevOps is a deeper level of

monitoring in production– Alerts on failure before users experience their impact– Ambitious, but this is the ultimate goal

• When problems are encountered, use the analytics– To trace the cause and resolve it– To refine the test process ("let's adapt so we don't let that

bug through again")• Automated tests in the process are 'monitoring' too• DevOps process monitors enlarge the scope of testing.

Intelligent Definition and Assurance Slide 32

Page 33: Digital Transformation, Testing and Automation

New Model Testing

Intelligent Definition and Assurance

The Left The Right

Slide 33

BTW, this is where the tools do some

checking

http://dev.sp.qa/download/newModel

Page 34: Digital Transformation, Testing and Automation

Left and Right

Automation won’t work if the thinking to the left is not in place

Thinking on the left contributes to the definition of features and how you test them

If you aren’t involved on the left, you aren’t in a good position to test (with or without tools)

Models on the left are the blueprints for the

tests & automation on the right

Your opportunity to flush out muddled, loose, incomplete, flaky requirements is on the left

Applying automation to muddled, loose, incomplete, flaky features is doomed before you start

Intelligent Definition and Assurance

The Left The Right

Slide 34

Page 35: Digital Transformation, Testing and Automation

Intelligent Definition and Assurance

Shift-Left (thinking, not people)1. If you are not contributing on the left, you are

doomed to be a victim of muddled, incomplete thinking

2. Challenge requirements thru example and improve them

3. Share your models!– Usage models: (test through the UI) must be

meaningful to users– Service models: (services/APIs) meaningful to

developers and align with business rules4. In case of test/automation ‘difficulty’ – go to 1.

Slide 35

Page 36: Digital Transformation, Testing and Automation

Your homework for today• Are tools just drones that can only

execute regression testing?• Could tools find functional bugs in

untested software?• If I can think of a test, can I automate

the application of it?• Think of tools as extensions

of your mind, not robots.

Intelligent Definition and Assurance Slide 36

This is where the tools play their part

Page 37: Digital Transformation, Testing and Automation

TheTools Knowledge

Basehttps://tkbase.com

Page 38: Digital Transformation, Testing and Automation

How many tools do you use?NewRelic - Application monitoring - gives us the eyes on our app and how it's being used / performingPaperTrail - Log file collector - brings in log files from various servers to one single place - great for systems running across multiple serversOpsView - Monitoring and alerting tool which we use to bring together monitoring from various systemsNagios - Used for monitoring and alertingPagerDuty - Used to alert (SMS and Email and Phone) when a service craps outElastic Search, Log Stash and Kibana - Data analysis and monitoring and trending - super powerful for analyzing what our product is actually doingChef - Auto build and deploy technology to allow us to rapidly build and destroy environments (with Chef Kitchen and Knife)Vagrant - Create Virtual EnvironmentsReal Time Board - Virtual Whiteboard - amazingly usefulPivotal Tracker - Agile tracking toolFiddler - Proxy web toolFirebug - Proxy web toolZed Attack Proxy - Security testing toolBurpsuite - Security Testing ToolHipChat - Real Time IM communication toolSlack - Real Time IM Communication toolJira and Confluence - bug tracking and wikiCloudFormations - Creates templates for Amazon instances

"No doubt we have some more hiding away but that's a pretty good list."

23tools

Intelligent Definition and Assurance Slide 38

Page 39: Digital Transformation, Testing and Automation

302 bloggers, 16,064 blogposts indexed and searchable (35-40 new posts daily)

2,336 tools, indexed and searchableWork in progress: tools tagged with

297 features

Page 40: Digital Transformation, Testing and Automation

Challenges for the next few years• We have plenty tools that can run

thousands and millions of tests; what we need now are tools that support modelling and test design

• How do we acquire a coherent, integrated tool-kit with 15-30 tools?

• How do we fit testing into DevOps/CD?• Testing role absorbed shift-left or –right?• Where does 'manual' testing fit now?

Intelligent Definition and Assurance Slide 40

Page 41: Digital Transformation, Testing and Automation

Thank-You!

@paul_gerrard

Paul Gerrardemail: [email protected]

Twitter: @paul_gerrardLinkedIn: http://linkedin.com/in/paulgerrard

tkbase.com | testopera.com

Intelligent Definition and Assurance Slide 41