Check This
Test Automation
A Development Managers View
@stephenjanaway
HELLO!
@stephenjanaway
Head Of
Technology
VP
Engineering
Senior Quality
Gate
Manager
Tester Test Lead
Developer
(first job)
Quality Gate Manager Delivery Manager
?
Test Manager
Test Manager
Test Coach
?
Why Should I Be Talking To You?
DISCLAIMER
MY CONTEXT, MY PROBLEMS,
WHAT I’VE SEEN WORK
Test Automation At a Leading
Fashion E-commerce Company
@stephenjanawayLicensed under Creative Commons Attribution 2.5 Denmark. - Benjamin Suomela/norden.org
You aren’t there to make
the automated tests pass
@stephenjanaway
Photo: https://www.flickr.com/photos/cgrusden/
“Good testing
involves balancing
the need to mitigate
risk against the risk
of trying to gather too
much information”
Jerry Weinberg
@stephenjanaway
Some Terminology
@stephenjanaway
What Is Testing?
Trying the software
to see if it works...
@stephenjanaway
Testing
The process of evaluating a product
by learning about it
through exploration and experimentation
Source: http://www.satisfice.com/blog/archives/856
@stephenjanaway
Checking
The process of making evaluations
by applying algorithmic decision rules
to specific observations of a product
Source: http://www.satisfice.com/blog/archives/856
@stephenjanaway
Test Automation
Writing code to check, AND help testing
@stephenjanaway
Team
A group of awesome people who want to deliver value
Your job as a manager is to enable them to do that
@stephenjanaway
Now what?
Train
them
Find the
people
What Is
Automation
anyway?
Saving the
world
Start here
Build a great team Get it live
What should
you care
about?
Choose
a tool
Let’s Go On a Journey
Plan
your
project
End here
Why Do We Need Test Automation Anyway?
@stephenjanaway
Photo: https://www.flickr.com/photos/cgrusden/
“Done is better than
perfect because
something is better
than nothing”
Sheryl Sandberg

@stephenjanaway
“People who don’t really get testing tend to want
to turn it into a programming problem instead”
Jeff Nyman
@stephenjanaway
What Should a Manager
Care About?
" Predictable, efficient software
delivery
" A happy, motivated team
" Easy (as possible) hiring of new
people
" A team that cares about quality
@stephenjanaway
Your Test Automation
Won’t Save The World
" It’s tempting to eat the
“Selenium” donut
" But is it short term
pleasure?
" Automation is not rocket
science, but it’s not trivial
either
@stephenjanaway
Recognise That Test
Automation Doesn’t Just
Mean Writing Checking Code
" The ickle test helper
" Testing tools save time and
promote efficiency
" This is automation in testing
@stephenjanaway
“Automation is the judicious
application of technology
to help humans do their jobs”
Paul Grizzaffi
@pgrizzaffi
@stephenjanaway
Ringelmann Effect
@stephenjanaway
“The tendency for individual members of a group
to become increasingly less productive
as the size of their group increases”
You Don’t Need a
Test Automation Team
" Silo’s breed apathy
" Testers should be in teams
" Pairing with developers -
building a bridge
" Team’s own quality
" A separate test automation
team is a lonely place
@stephenjanaway
Team’s Own Automation
UI Tests
API Contract Tests
Unit Tests
Web & Mobile
Clients
Platform
{Team
@stephenjanaway
Automate (a lot)
of the things as a team
@stephenjanaway
@stephenjanaway
Orders of Ignorance
@stephenjanaway
3rd Order Ignorance:
Lack of Process
I don't know a suitably efficient
way to find out I don't know
that I don't know something
2nd Order Ignorance:
Lack of Awareness
I don't know that I don't know
something
1st Order Ignorance: Lack
of Knowledge
I don't know something
0th Order Ignorance: Lack
of Ignorance
I (probably) know something
Good Testing
@stephenjanaway
Automation Can Do a Lot But It Can’t Check...
Thought
patterns
User
reactions
Usability
Perceived
Performance
Claims
Unknown
behaviours
What If I…?
Look and feel
Accessibility
Compatibility
@stephenjanaway
Ambiguity
Business
understanding
Value
judgements
Do you need more
tests?
Automation Can't Check All Of This...
Thought
patterns
User
reactions
Usability
Perceived
Performance
Claims
Unknown
behaviours
What If I…?
Look and feel
Accessibility
Compatibility
@stephenjanaway
Ambiguity
Business
understanding
Value
judgements
Do you need more
You Can Only Automate
What You Know and Expect
2nd Order Ignorance:
Lack of Awareness
I don't know that I don't know
something
You Need
Exploratory Testers
" Tools cannot reason
" Tools will not look for ambiguity
" Tools do not understand your
business
" Tools will not make any value
judgments about tests
" Tools don’t know how to produce
further tests
@stephenjanaway
If You Must Hire Test Automators
Then Do So With Care
" When you hire developers then talk to
them about testing
" Watch out for the developer foot in
the door
" Think about remit
" Hire like you would hire a developer.
Be technical. Have technical tests
" Expect them to think like a developer
" Expect them to think like a tester
@stephenjanaway
If You Must, Train With Care
" Don’t get your existing test
automators to train your
exploratory testers
" Invest in your team and that
means paying for training
" If you are serious about test
automation then be serious about
the cost
" Wouldn’t it be better to train the
developers to be better testers?
@stephenjanaway
No one would ask a developer to teach
an employee to code from scratch
Why Is This Acceptable For Test
Automation?
@stephenjanaway
Care About Flow
" Predictable cycle times
" Does my automation help?
" When team’s own
automation then work flows
more smoothly
@stephenjanaway
@stephenjanaway
Design Develop Test Release
Months
Weeks Weeks Weeks
Don’t ever do this (again)
Present Bias
“The tendency to over-value immediate rewards
at the expense of our long-term intentions”
@stephenjanaway
Don’t Automate All The Things
Lots of automated tests is not
something to be proud of:
" Who debugs the tests?
" Who maintains the tests?
" Can you efficiently scale the team
to keep up?
" How quickly do the tests generate
results? Information? Value?
Exploit Present Bias with Tea
@stephenjanaway
Team Automation Establishes
Common Ground
" A shared language
" Easier pairing
" A bridge to build better
relationships
@stephenjanaway
Testing Tool Vendors Promise
You The Earth
Vendors and test centres make fancy
and outlandish claims.
" 100% test automation
" Replace all your manual testers
" 76% efficiency increase
Be wary
@stephenjanaway
Don’t Dictate That Every Team
Uses The Same Tools
Cost savings and overall efficiency
vs autonomy and buy-in
Your team know the best tools but
set some principles:
" Well supported
" Open source (with recent PRs)
" Uses existing team skill set
@stephenjanaway
Don’t Write From Scratch
" It’s expensive
" It wastes previous experience
" It locks knowledge in a few
people's heads
" Most production code isn’t
written this way
@stephenjanaway
Care about a test automation
project just like any other project
Test automation projects are so often
treated we less rigor and care
" Scope creep is bad
" It should deliver
" Don’t change language or
framework halfway through
" Think about requirements
" Same language, same repo, same
review processes, CI

@stephenjanaway
Automation Goes Stale
Even if you have a suitable number of
automated test cases:
" More features = more tests
" New test for every bug = more
tests
" More tests = bloated test suites
" Bloated test suites = less efficient
testing
You need a plan to manage growth
@stephenjanaway
Focus On The Outcome -
Failing and Passing Checks
" You need a process to
review results
" Triage
" Dashboards
" Stale tests
" Don’t forget why you are
testing in the first place
@stephenjanaway
Hint...
You aren’t there to make
the automated tests pass
@stephenjanaway
Photo: https://www.flickr.com/photos/cgrusden/
“Good testing
involves balancing
the need to mitigate
risk against the risk
of trying to gather too
much information”
Jerry Weinberg
@stephenjanaway
Train
them
Find the
people
What Is
Automation
anyway?
Start here
Build a great team Get it live
What should
you care
about?
Saving the
world
Choose
a tool
So We Went On a Journey
Plan
your
project
End here
Now what?
What Have I Learnt?
" You need the right amount of test automation
" Separate automation teams are a bad thing
" Small cross functional teams owning test automation are a good thing
" People will promise that test automation solves every problem you have.
It doesn’t
" Treat test automation just like production code
" Treat test automation projects just like production projects
" Hire with care
" Invest in training but don’t expect your people to do it (all)
" Don’t forget why you are testing in the first place
" You need exploratory testers too
@stephenjanaway
Everyone Is Responsible For Quality
@stephenjanaway
Stephen Janaway
@stephenjanaway stephenjanaway.co.uk testinginthepub.com

Check This - Test Automation, A Development Managers View

  • 1.
    Check This Test Automation ADevelopment Managers View @stephenjanaway
  • 2.
  • 3.
    Head Of Technology VP Engineering Senior Quality Gate Manager TesterTest Lead Developer (first job) Quality Gate Manager Delivery Manager ? Test Manager Test Manager Test Coach ? Why Should I Be Talking To You?
  • 4.
    DISCLAIMER MY CONTEXT, MYPROBLEMS, WHAT I’VE SEEN WORK
  • 5.
    Test Automation Ata Leading Fashion E-commerce Company @stephenjanawayLicensed under Creative Commons Attribution 2.5 Denmark. - Benjamin Suomela/norden.org
  • 6.
    You aren’t thereto make the automated tests pass @stephenjanaway
  • 7.
    Photo: https://www.flickr.com/photos/cgrusden/ “Good testing involvesbalancing the need to mitigate risk against the risk of trying to gather too much information” Jerry Weinberg @stephenjanaway
  • 8.
  • 9.
    What Is Testing? Tryingthe software to see if it works... @stephenjanaway
  • 11.
    Testing The process ofevaluating a product by learning about it through exploration and experimentation Source: http://www.satisfice.com/blog/archives/856 @stephenjanaway
  • 12.
    Checking The process ofmaking evaluations by applying algorithmic decision rules to specific observations of a product Source: http://www.satisfice.com/blog/archives/856 @stephenjanaway
  • 13.
    Test Automation Writing codeto check, AND help testing @stephenjanaway
  • 14.
    Team A group ofawesome people who want to deliver value Your job as a manager is to enable them to do that @stephenjanaway
  • 15.
    Now what? Train them Find the people WhatIs Automation anyway? Saving the world Start here Build a great team Get it live What should you care about? Choose a tool Let’s Go On a Journey Plan your project End here
  • 16.
    Why Do WeNeed Test Automation Anyway? @stephenjanaway
  • 17.
    Photo: https://www.flickr.com/photos/cgrusden/ “Done isbetter than perfect because something is better than nothing” Sheryl Sandberg
 @stephenjanaway
  • 18.
    “People who don’treally get testing tend to want to turn it into a programming problem instead” Jeff Nyman @stephenjanaway
  • 19.
    What Should aManager Care About? " Predictable, efficient software delivery " A happy, motivated team " Easy (as possible) hiring of new people " A team that cares about quality @stephenjanaway
  • 20.
    Your Test Automation Won’tSave The World " It’s tempting to eat the “Selenium” donut " But is it short term pleasure? " Automation is not rocket science, but it’s not trivial either @stephenjanaway
  • 21.
    Recognise That Test AutomationDoesn’t Just Mean Writing Checking Code " The ickle test helper " Testing tools save time and promote efficiency " This is automation in testing @stephenjanaway
  • 22.
    “Automation is thejudicious application of technology to help humans do their jobs” Paul Grizzaffi @pgrizzaffi @stephenjanaway
  • 23.
    Ringelmann Effect @stephenjanaway “The tendencyfor individual members of a group to become increasingly less productive as the size of their group increases”
  • 24.
    You Don’t Needa Test Automation Team " Silo’s breed apathy " Testers should be in teams " Pairing with developers - building a bridge " Team’s own quality " A separate test automation team is a lonely place @stephenjanaway
  • 25.
    Team’s Own Automation UITests API Contract Tests Unit Tests Web & Mobile Clients Platform {Team @stephenjanaway
  • 26.
    Automate (a lot) ofthe things as a team @stephenjanaway
  • 27.
  • 28.
  • 29.
    3rd Order Ignorance: Lackof Process I don't know a suitably efficient way to find out I don't know that I don't know something 2nd Order Ignorance: Lack of Awareness I don't know that I don't know something 1st Order Ignorance: Lack of Knowledge I don't know something 0th Order Ignorance: Lack of Ignorance I (probably) know something Good Testing @stephenjanaway
  • 30.
    Automation Can Doa Lot But It Can’t Check... Thought patterns User reactions Usability Perceived Performance Claims Unknown behaviours What If I…? Look and feel Accessibility Compatibility @stephenjanaway Ambiguity Business understanding Value judgements Do you need more tests?
  • 31.
    Automation Can't CheckAll Of This... Thought patterns User reactions Usability Perceived Performance Claims Unknown behaviours What If I…? Look and feel Accessibility Compatibility @stephenjanaway Ambiguity Business understanding Value judgements Do you need more You Can Only Automate What You Know and Expect 2nd Order Ignorance: Lack of Awareness I don't know that I don't know something
  • 32.
    You Need Exploratory Testers "Tools cannot reason " Tools will not look for ambiguity " Tools do not understand your business " Tools will not make any value judgments about tests " Tools don’t know how to produce further tests @stephenjanaway
  • 33.
    If You MustHire Test Automators Then Do So With Care " When you hire developers then talk to them about testing " Watch out for the developer foot in the door " Think about remit " Hire like you would hire a developer. Be technical. Have technical tests " Expect them to think like a developer " Expect them to think like a tester @stephenjanaway
  • 34.
    If You Must,Train With Care " Don’t get your existing test automators to train your exploratory testers " Invest in your team and that means paying for training " If you are serious about test automation then be serious about the cost " Wouldn’t it be better to train the developers to be better testers? @stephenjanaway
  • 35.
    No one wouldask a developer to teach an employee to code from scratch Why Is This Acceptable For Test Automation? @stephenjanaway
  • 36.
    Care About Flow "Predictable cycle times " Does my automation help? " When team’s own automation then work flows more smoothly @stephenjanaway
  • 37.
    @stephenjanaway Design Develop TestRelease Months Weeks Weeks Weeks Don’t ever do this (again)
  • 38.
    Present Bias “The tendencyto over-value immediate rewards at the expense of our long-term intentions” @stephenjanaway
  • 39.
    Don’t Automate AllThe Things Lots of automated tests is not something to be proud of: " Who debugs the tests? " Who maintains the tests? " Can you efficiently scale the team to keep up? " How quickly do the tests generate results? Information? Value? Exploit Present Bias with Tea @stephenjanaway
  • 40.
    Team Automation Establishes CommonGround " A shared language " Easier pairing " A bridge to build better relationships @stephenjanaway
  • 41.
    Testing Tool VendorsPromise You The Earth Vendors and test centres make fancy and outlandish claims. " 100% test automation " Replace all your manual testers " 76% efficiency increase Be wary @stephenjanaway
  • 42.
    Don’t Dictate ThatEvery Team Uses The Same Tools Cost savings and overall efficiency vs autonomy and buy-in Your team know the best tools but set some principles: " Well supported " Open source (with recent PRs) " Uses existing team skill set @stephenjanaway
  • 43.
    Don’t Write FromScratch " It’s expensive " It wastes previous experience " It locks knowledge in a few people's heads " Most production code isn’t written this way @stephenjanaway
  • 44.
    Care about atest automation project just like any other project Test automation projects are so often treated we less rigor and care " Scope creep is bad " It should deliver " Don’t change language or framework halfway through " Think about requirements " Same language, same repo, same review processes, CI
 @stephenjanaway
  • 45.
    Automation Goes Stale Evenif you have a suitable number of automated test cases: " More features = more tests " New test for every bug = more tests " More tests = bloated test suites " Bloated test suites = less efficient testing You need a plan to manage growth @stephenjanaway
  • 46.
    Focus On TheOutcome - Failing and Passing Checks " You need a process to review results " Triage " Dashboards " Stale tests " Don’t forget why you are testing in the first place @stephenjanaway
  • 47.
    Hint... You aren’t thereto make the automated tests pass @stephenjanaway
  • 48.
    Photo: https://www.flickr.com/photos/cgrusden/ “Good testing involvesbalancing the need to mitigate risk against the risk of trying to gather too much information” Jerry Weinberg @stephenjanaway
  • 49.
    Train them Find the people What Is Automation anyway? Starthere Build a great team Get it live What should you care about? Saving the world Choose a tool So We Went On a Journey Plan your project End here Now what?
  • 50.
    What Have ILearnt? " You need the right amount of test automation " Separate automation teams are a bad thing " Small cross functional teams owning test automation are a good thing " People will promise that test automation solves every problem you have. It doesn’t " Treat test automation just like production code " Treat test automation projects just like production projects " Hire with care " Invest in training but don’t expect your people to do it (all) " Don’t forget why you are testing in the first place " You need exploratory testers too @stephenjanaway
  • 51.
    Everyone Is ResponsibleFor Quality @stephenjanaway
  • 52.