SlideShare a Scribd company logo
1 of 57
Download to read offline
7 DEADLY SINS
    OF
    AUTOMATED
    TESTING
    Dr Adrian Smith
    September 2012
                            Engineering Innovation.
Thursday, 20 September 12
Adrian Smith
     • Background in Engineering
     • Software development using Agile and Lean
                                        Diverse Ex
                                        Diverse Ex
     • Technical and Organisational Coach
                                              Aerospace Engineering
     • Founded a startup product development and
                                              Commercial and military engineering
                                              Aerospace Engineering
                                              analysis and manufacturing experienc
       consulting business   Diverse Experienc
                                              Commercial and military engineering
                                              programs including A380 and F35.
                                              analysis and manufacturing experienc
                                              programs including A380 and F35.
                                             Agile Software Developm
                              Aerospace Engineering
                                             Software development, architecture a
                                             Agile Software Developm
                              Commercial and military engineering design,
                                               management for engineering CAE, au
                                               Software development, architecture a
                              analysis and manufacturing experience on major
                                               scientific and digital media.
                              programs including A380 and F35. engineering CAE, au
                                               management for
                                               scientific and digital media.
                                         Systems Integration
Thursday, 20 September 12
                              Agile Software Development
                                         Integration of logistics, financial, engi
Geeks hate repetition




Thursday, 20 September 12
Airbus A380 Wing




Thursday, 20 September 12
Thursday, 20 September 12
Envy
                            Flawed comparison
                             of manual testing
                              and automation




Thursday, 20 September 12
How management
                                 see testing




Thursday, 20 September 12
How management
 would like to see testing
Thursday, 20 September 12
Manual vs Automation
        • A flawed comparison
              • Assumes that automation can replace manual
                testing effort
              • Automation generally doesn’t find new defects


        • Testing is not merely a sequence of
          repeatable actions
        • Testing requires thought and learning


Thursday, 20 September 12
Ideal automation targets
        • Regression testing - assessing current state
        • Automation of test support activities
              • Data generation or sub-setting
              • Load generation
              • Non-functional testing

        • Deterministic problems
        • Big data problems


Thursday, 20 September 12
Common symptoms
        • Relying on automation as the basis
          for all testing activities
        • All tests are built by developers
        • Absence of code reviews
        • Absence of exploratory testing
        • Absence of user testing



Thursday, 20 September 12
Suggested approach
        • Avoid comparison between manual and
          automated testing - both are needed
        • Distinguish between the automation and the
          process that is being automated
        • Use automation to provide a baseline
        • Use automation in conjunction with manual
          techniques



Thursday, 20 September 12
GLUTTONY




                            Over indulging on commercial test tools
Thursday, 20 September 12
Promise of automation
                                 • Software vendors
                                   have sold automation
                                   as the capture-replay
                                   of manual testing
                                   processes




    • Miracle tools that solve
      all testing problems

Thursday, 20 September 12
License barrier
        • Commercial licenses restrict usage
        • Not everyone can run the tests
        • Typically, organisations create special
          groups or privileged individuals




Thursday, 20 September 12
Incompatible technology
        • Underlying technology of commercial tools is
          often not compatible with the development
          toolchain
              • Special file formats or databases
              • Lack of version control for tests
              • Tests cannot be versioned within the software
              • Continuous integration problems
              • Can’t be adapted or extended by the developers



Thursday, 20 September 12
Justifying the expense
        • Financial commitments
          distort judgement
        • Difficult to make objective
          decisions
        • Tendency to use the tool
          for every testing problem
        • People define their role by
          the tools they use


Thursday, 20 September 12
Common symptoms
        • A commercial tools form the basis
          of a testing strategy
        • Only certain teams or individuals can
          access a tool or run tests
        • Developers have not be consulted in the
          selection of a testing tools
        • “We always use <insert tool-name> for testing!”



Thursday, 20 September 12
Suggested approach
        • Use Open Source software tools where ever
          possible
        • Use tools that can easily be supported by the
          development team and play nicely with existing
          development tool chain


        • Ensure any commercial tools can be executed
          in a command-line mode


Thursday, 20 September 12
Lust
                            User interface forms the basis for all testing




Thursday, 20 September 12
Testing through the GUI
        • Non-technical testers often approach testing
          through the user interface
        • Ignores the underlying system and application
          architecture
        • Resulting tests are slow and brittle
        • Difficult to setup test context - resulting in
          sequence dependent scripts



Thursday, 20 September 12
Investment profile

                              Manual
                            Exploratory

                                      Interface




                                                                            Confidence



                                                                                        Speed / Feedback
   Collaboratively
     built around
  system behaviour                Acceptance

      Exercises
   components and                  Integration
      systems

                             Unit/Component

                                                  Investment / Importance
                       Developer built
                      optimised for fast
                          feedback


Thursday, 20 September 12
Architecture
      • Understanding
        application and
        system architecture
        improves test design
      • Creates opportunities
        to verify functionality
        at the right level




Thursday, 20 September 12
Test design
                            Test Intent
                      (Clearly identifies what the       Test Data
                         test is trying to verify)




                             Test
                        Implementation                System Under
                     (Implementation of the test           Test
                    including usage of test data)




Thursday, 20 September 12
F.I.R.S.T. class tests

                        F       Fast

                            I   Independent

                        R       Reliable

                        S       Small

                        T       Transparent


Thursday, 20 September 12
Common symptoms
        • Testers cannot draw the
          application or system architecture
        • Large proportion of tests are
          being run through the user interface
        • Testers have limited technical skills
        • No collaboration with developers
        • Intent of tests is unclear


Thursday, 20 September 12
Suggested approach
        • Limit the investment in automated tests that are
          executed through the user interface
        • Collaborate with developers
        • Focus investment in automation at lowest
          possible level with clear test intent
        • Ensure automation give fast feedback




Thursday, 20 September 12
Pride
                              Too proud to
                            collaborate when
                             creating tests




Thursday, 20 September 12
Poor collaboration
        • Organisations often create
          specialisations of roles
          and skills
        • Layers of management and
          control then develop
        • Collaboration becomes difficult
        • Poor collaboration = poor tests



Thursday, 20 September 12
Automating too much
        • Delegating test automation to a special group
          inhibits collaboration
        • Poor collaboration can results in duplicate test
          cases / coverage
        • Duplication wastes effort and creates
          maintenance issues
        • Setting performance goals based around test-
          cases automated leads to problems


Thursday, 20 September 12
No definition of quality
        • Automated testing effort should match the
          desired system quality
        • Risk that too-much, too-little or not the right
          things will be tested
        • Defining quality creates a shared
          understanding and can only be achieved
          through collaboration




Thursday, 20 September 12
Good collaboration
    • Cross-functional
                                                                    Acceptance
      teams built                                                     Criteria

      better software                            Analyst

    • Collaboration          Specification and
      improves                 Elaboration
                                                   Collaboration   Tester
      definition and
      verification                              Developer
                                                                     Automation




Thursday, 20 September 12
Specification by Example
    • Recognises the value of
      collaboration in testing
    • More general than
      ATDD and/or BDD
    • Based around building a
      suite of Living Documentation
      that can be executed




Thursday, 20 September 12
Common symptoms
        • Automated tests are being built
          in isolation from team
        • Intent of tests is unclear
          or not matched to quality
        • Poor automation design (abstraction,
          encapsulation, ...)
        • Maintainability or compatibility issues



Thursday, 20 September 12
Suggested approach
        • Collaborate to create good tests and avoid
          duplication
        • Limit the investment in UI based automated
          tests
        • Collaborate with developers to ensure good
          technical practices (encapsulation, abstraction,
          reuse, ... )
        • Test code = Production code


Thursday, 20 September 12
SLOTH
    Too lazy to properly
    maintain automated tests




                               Engineering Innovation.

Thursday, 20 September 12
Automated Test Failures
         • Many potential causes of failure
         • Unless maintained - value is slowly eroded

                              System        Reference
                            Interface            Data
                             Change          Changes


                                                        Time
             New                          OS
           Feature                      Patch



Thursday, 20 September 12
Importance of maintenance

                     Manual test execution                 Value of
                                                         Unmaintained
                     Maintained automation              Automated Test
                                                            Suite
                     Unmaintained automation
    Cost / Effort




                                                         Potential
                                                    Value of Maintained
                                                      Automated Test
                                                           Suite




                                             Time
Thursday, 20 September 12
Continuous integration




Thursday, 20 September 12
Common symptoms
        • Test suite has not been recently
          run - state is unknown
        • Continuous Integration history
          shows consistent failures following
          development changes / release
        • Test suite requires manual intervention
        • Duplication within automation code
        • Small changes triggers a cascade of failures

Thursday, 20 September 12
Suggested Approach
        • Ensure automated tests are executed
          using a Continuous Integration
          environment
        • Ensure test are always running - even if
          system in not being actively developed
        • Make test results visible - create
          transparency of system health
        • Ensure collaboration between developers
          and testers
Thursday, 20 September 12
Rage
                            Frustration with slow, brittle
                            or unreliable automated tests

Thursday, 20 September 12
Slow automation
        • Large datasets
        • Unnecessary integrations
        • Inadequate hardware/environments
        • Too many tests
        • Reliance on GUI based tests
        • Manual intervention
        • ... many others

Thursday, 20 September 12
Fast Feedback




Thursday, 20 September 12
Brittle Tests
                               • Contain time-bound data
                               • Have external dependencies
                               • Rely on UI layout/style
                               • Rely on sequence of
                                 execution
                               • Based on production data or
                                 environments


Thursday, 20 September 12
Frustration




Thursday, 20 September 12
Unreliable Tests
                                 • False positives
                                 • Wastes time investigating
                                 • Failures start being ignored
                                 • Creates uncertainty of
                                   system health
                                 • Workarounds and alternate
                                   tests are created


Thursday, 20 September 12
Suggested approach
        • Treat automated tests with the same
          importance as production code
        • Review, refactor, improve ...
        • Apply a “Stop the line” approach to test failure
        • Eliminate (quarantine) unreliable tests
        • Ensure collaboration with developers
        • Up-skill / pair testers

Thursday, 20 September 12
Avarice                Trying to cut
                            costs through
     (Greed)                automation




Thursday, 20 September 12
Lure of cheap testing
                              • Testing tool vendors
                                often try to calculate
                                ROI based on saving
                                labour




       • Analysis is unreliable and under values the
         importance of testing


Thursday, 20 September 12
Automation is not cheap
        • Adopting test automation tools and techniques
          requires significant investment
        • Investment in new ways of working
        • Investment in skills
        • Investment in collaboration
        • Ongoing investment in maintenance



Thursday, 20 September 12
Common symptoms
        • Investment in commercial tools
          using a business-case based on
          reducing headcount
        • Using a predicted ROI as a way of
          reducing budget for Testing
        • Consolidating automated testing
          within a special group




Thursday, 20 September 12
Suggested approach
        • Ensure the reasons for automation are
          clear and are NOT based purely on saving
          money/headcount
        • Ensure business case for automation
          includes costs for ongoing maintenance




Thursday, 20 September 12
7 Deadly Sins
     Envy                   Flawed comparison of manual testing and automation

     Gluttony Over indulging on commercial test tools

     Lust                   User interface forms the basis for all testing

     Pride                  Too proud to collaborate when creating tests

     Sloth                  Too lazy to maintain automated tests

     Rage                   Frustration with slow, brittle or unreliable tests

     Greed                  Trying to cut costs through automation

Thursday, 20 September 12
Why automate testing ?




Thursday, 20 September 12
How geeks really work




Thursday, 20 September 12
Thank you
    Dr Adrian Smith
    September 2012
                            Engineering Innovation.
Thursday, 20 September 12

More Related Content

What's hot

Agile QA and Testing process
Agile QA and Testing processAgile QA and Testing process
Agile QA and Testing processGloria Stoilova
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation TestingArchana Krushnan
 
Introduction to Test Automation
Introduction to Test AutomationIntroduction to Test Automation
Introduction to Test AutomationPekka Klärck
 
Test Automation: A Roadmap For Sucesss
Test Automation: A Roadmap For SucesssTest Automation: A Roadmap For Sucesss
Test Automation: A Roadmap For SucesssDavid O'Dowd
 
Introduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsIntroduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsKMS Technology
 
Katalon studio vs selenium comparision
Katalon studio vs selenium comparisionKatalon studio vs selenium comparision
Katalon studio vs selenium comparisionPrabhusundar6
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual Testingdidev
 
Agile test-management-test-rail-lastest
Agile test-management-test-rail-lastestAgile test-management-test-rail-lastest
Agile test-management-test-rail-lastestOnur Baskirt
 
End-to-End Test Automation for Both Horizontal and Vertical Scale
End-to-End Test Automation for Both Horizontal and Vertical ScaleEnd-to-End Test Automation for Both Horizontal and Vertical Scale
End-to-End Test Automation for Both Horizontal and Vertical ScaleErdem YILDIRIM
 
6 Ways to Measure the ROI of Automated Testing
6 Ways to Measure the ROI of Automated Testing6 Ways to Measure the ROI of Automated Testing
6 Ways to Measure the ROI of Automated TestingSmartBear
 
Scrum gathering Paris 2013 - test automation strategy for Scrum Projects
Scrum gathering Paris 2013 -  test automation strategy for Scrum ProjectsScrum gathering Paris 2013 -  test automation strategy for Scrum Projects
Scrum gathering Paris 2013 - test automation strategy for Scrum ProjectsEliane Collins
 
Automation testing introduction for FujiNet
Automation testing introduction for FujiNetAutomation testing introduction for FujiNet
Automation testing introduction for FujiNetHai Tran Son
 

What's hot (20)

Agile QA and Testing process
Agile QA and Testing processAgile QA and Testing process
Agile QA and Testing process
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
 
Introduction to Test Automation
Introduction to Test AutomationIntroduction to Test Automation
Introduction to Test Automation
 
Test Automation: A Roadmap For Sucesss
Test Automation: A Roadmap For SucesssTest Automation: A Roadmap For Sucesss
Test Automation: A Roadmap For Sucesss
 
Introduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsIntroduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and Tools
 
Katalon studio vs selenium comparision
Katalon studio vs selenium comparisionKatalon studio vs selenium comparision
Katalon studio vs selenium comparision
 
Automation testing
Automation testingAutomation testing
Automation testing
 
Automated Testing vs Manual Testing
Automated Testing vs Manual TestingAutomated Testing vs Manual Testing
Automated Testing vs Manual Testing
 
Agile test-management-test-rail-lastest
Agile test-management-test-rail-lastestAgile test-management-test-rail-lastest
Agile test-management-test-rail-lastest
 
QA Best Practices in Agile World_new
QA Best Practices in Agile World_newQA Best Practices in Agile World_new
QA Best Practices in Agile World_new
 
End-to-End Test Automation for Both Horizontal and Vertical Scale
End-to-End Test Automation for Both Horizontal and Vertical ScaleEnd-to-End Test Automation for Both Horizontal and Vertical Scale
End-to-End Test Automation for Both Horizontal and Vertical Scale
 
Introduction to Agile Testing
Introduction to Agile TestingIntroduction to Agile Testing
Introduction to Agile Testing
 
Test Automation in Agile
Test Automation in AgileTest Automation in Agile
Test Automation in Agile
 
6 Ways to Measure the ROI of Automated Testing
6 Ways to Measure the ROI of Automated Testing6 Ways to Measure the ROI of Automated Testing
6 Ways to Measure the ROI of Automated Testing
 
Test automation process
Test automation processTest automation process
Test automation process
 
Scrum gathering Paris 2013 - test automation strategy for Scrum Projects
Scrum gathering Paris 2013 -  test automation strategy for Scrum ProjectsScrum gathering Paris 2013 -  test automation strategy for Scrum Projects
Scrum gathering Paris 2013 - test automation strategy for Scrum Projects
 
Introduction to Software Test Automation
Introduction to Software Test AutomationIntroduction to Software Test Automation
Introduction to Software Test Automation
 
Automation testing introduction for FujiNet
Automation testing introduction for FujiNetAutomation testing introduction for FujiNet
Automation testing introduction for FujiNet
 
Cucumber ppt
Cucumber pptCucumber ppt
Cucumber ppt
 
Automation testing
Automation testingAutomation testing
Automation testing
 

Viewers also liked

O impacto das novas tecnologias na educação superior: um novo modelo de ensin...
O impacto das novas tecnologias na educação superior: um novo modelo de ensin...O impacto das novas tecnologias na educação superior: um novo modelo de ensin...
O impacto das novas tecnologias na educação superior: um novo modelo de ensin...Desafios da Educação
 
Agile Introduction
Agile IntroductionAgile Introduction
Agile IntroductionAdrian Smith
 
Telecom italia oss transformation roadmap marco daccò venice 2010
Telecom italia  oss transformation roadmap   marco daccò venice 2010Telecom italia  oss transformation roadmap   marco daccò venice 2010
Telecom italia oss transformation roadmap marco daccò venice 2010Marco Daccò
 
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"Daniel Bryant
 
7 deadly sins
7 deadly sins7 deadly sins
7 deadly sinsHope1224
 
How agile coaches help us win the agile coach role @ Spotify
How agile coaches help us win   the agile coach role @ SpotifyHow agile coaches help us win   the agile coach role @ Spotify
How agile coaches help us win the agile coach role @ SpotifyBrendan Marsh
 
5 Games for Effective Agile Coaching
5 Games for Effective Agile Coaching5 Games for Effective Agile Coaching
5 Games for Effective Agile CoachingJovan Vidić
 
Agile and Lean Games
Agile and Lean GamesAgile and Lean Games
Agile and Lean GamesAdrian Smith
 
How To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs Webinar
How To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs WebinarHow To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs Webinar
How To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs WebinarSauce Labs
 
Agile Coaching Workshop
Agile Coaching WorkshopAgile Coaching Workshop
Agile Coaching WorkshopCraig Smith
 
Business Driven Architecture for Strategic Transformation
Business Driven Architecture for Strategic TransformationBusiness Driven Architecture for Strategic Transformation
Business Driven Architecture for Strategic TransformationDavid Baker
 
Agile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroidsAgile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroidsVipul Gupta
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategytharindakasun
 

Viewers also liked (14)

O impacto das novas tecnologias na educação superior: um novo modelo de ensin...
O impacto das novas tecnologias na educação superior: um novo modelo de ensin...O impacto das novas tecnologias na educação superior: um novo modelo de ensin...
O impacto das novas tecnologias na educação superior: um novo modelo de ensin...
 
MANET
MANETMANET
MANET
 
Agile Introduction
Agile IntroductionAgile Introduction
Agile Introduction
 
Telecom italia oss transformation roadmap marco daccò venice 2010
Telecom italia  oss transformation roadmap   marco daccò venice 2010Telecom italia  oss transformation roadmap   marco daccò venice 2010
Telecom italia oss transformation roadmap marco daccò venice 2010
 
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"
 
7 deadly sins
7 deadly sins7 deadly sins
7 deadly sins
 
How agile coaches help us win the agile coach role @ Spotify
How agile coaches help us win   the agile coach role @ SpotifyHow agile coaches help us win   the agile coach role @ Spotify
How agile coaches help us win the agile coach role @ Spotify
 
5 Games for Effective Agile Coaching
5 Games for Effective Agile Coaching5 Games for Effective Agile Coaching
5 Games for Effective Agile Coaching
 
Agile and Lean Games
Agile and Lean GamesAgile and Lean Games
Agile and Lean Games
 
How To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs Webinar
How To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs WebinarHow To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs Webinar
How To Grade Your Selenium Tests by Dave Haeffner - Sauce Labs Webinar
 
Agile Coaching Workshop
Agile Coaching WorkshopAgile Coaching Workshop
Agile Coaching Workshop
 
Business Driven Architecture for Strategic Transformation
Business Driven Architecture for Strategic TransformationBusiness Driven Architecture for Strategic Transformation
Business Driven Architecture for Strategic Transformation
 
Agile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroidsAgile tour ncr test360_degree - agile testing on steroids
Agile tour ncr test360_degree - agile testing on steroids
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategy
 

Similar to 7 DEADLY SINS OF AUTOMATED TESTING

How to bake in quality in agile scrum projects
How to bake in quality in agile scrum projectsHow to bake in quality in agile scrum projects
How to bake in quality in agile scrum projectsSantanu Bhattacharya
 
An Introduction to Software Performance Engineering
An Introduction to Software Performance EngineeringAn Introduction to Software Performance Engineering
An Introduction to Software Performance EngineeringCorrelsense
 
Behavior Driven Development—A Guide to Agile Practices by Josh Eastman
Behavior Driven Development—A Guide to Agile Practices by Josh EastmanBehavior Driven Development—A Guide to Agile Practices by Josh Eastman
Behavior Driven Development—A Guide to Agile Practices by Josh EastmanQA or the Highway
 
Agile Development in Aerospace and Defense
Agile Development in Aerospace and DefenseAgile Development in Aerospace and Defense
Agile Development in Aerospace and DefenseJim Nickel
 
CookpadTechConf2018-(Mobile)TestAutomation
CookpadTechConf2018-(Mobile)TestAutomationCookpadTechConf2018-(Mobile)TestAutomation
CookpadTechConf2018-(Mobile)TestAutomationKazuaki Matsuo
 
LeverX SAP DMS Webinar
LeverX SAP DMS WebinarLeverX SAP DMS Webinar
LeverX SAP DMS WebinarEric Stajda
 
AUG NYC June 12 - Event Presentations
AUG NYC June 12 - Event PresentationsAUG NYC June 12 - Event Presentations
AUG NYC June 12 - Event PresentationsMadhusudhan Matrubai
 
Ion Idea Testing Services Presentation Ver 1 0
Ion Idea Testing Services Presentation Ver 1 0Ion Idea Testing Services Presentation Ver 1 0
Ion Idea Testing Services Presentation Ver 1 0sambitgarnaik
 
Programming skills for test automation
Programming skills for test automationProgramming skills for test automation
Programming skills for test automationRomania Testing
 
Mindtree test automation services.
Mindtree test automation services.Mindtree test automation services.
Mindtree test automation services.Mindtree Ltd.
 
Udvid din test portefølje med coded ui test og cloud load test
Udvid din test portefølje med coded ui test og cloud load testUdvid din test portefølje med coded ui test og cloud load test
Udvid din test portefølje med coded ui test og cloud load testPeter Lindberg
 
Application Lifecycle Management & VSTS
Application Lifecycle Management & VSTSApplication Lifecycle Management & VSTS
Application Lifecycle Management & VSTSMicrosoft Iceland
 
Microsoft ALM Platform Overview
Microsoft ALM Platform OverviewMicrosoft ALM Platform Overview
Microsoft ALM Platform OverviewSteve Lange
 
Lights-Out Testing for Lights-On Business
Lights-Out Testing for Lights-On BusinessLights-Out Testing for Lights-On Business
Lights-Out Testing for Lights-On BusinessWorksoft
 
Agile Requirements by Agile Analysts
Agile Requirements by Agile AnalystsAgile Requirements by Agile Analysts
Agile Requirements by Agile AnalystsKurt Solarte
 
Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Delta-N
 
Cognizant's Zero Deviation Life Cycle - an Overview
Cognizant's Zero Deviation Life Cycle - an OverviewCognizant's Zero Deviation Life Cycle - an Overview
Cognizant's Zero Deviation Life Cycle - an OverviewDr. Bippin Makoond
 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CDRoger Turnau
 

Similar to 7 DEADLY SINS OF AUTOMATED TESTING (20)

Behavior Driven Development
Behavior Driven DevelopmentBehavior Driven Development
Behavior Driven Development
 
How to bake in quality in agile scrum projects
How to bake in quality in agile scrum projectsHow to bake in quality in agile scrum projects
How to bake in quality in agile scrum projects
 
An Introduction to Software Performance Engineering
An Introduction to Software Performance EngineeringAn Introduction to Software Performance Engineering
An Introduction to Software Performance Engineering
 
Behavior Driven Development—A Guide to Agile Practices by Josh Eastman
Behavior Driven Development—A Guide to Agile Practices by Josh EastmanBehavior Driven Development—A Guide to Agile Practices by Josh Eastman
Behavior Driven Development—A Guide to Agile Practices by Josh Eastman
 
Agile Development in Aerospace and Defense
Agile Development in Aerospace and DefenseAgile Development in Aerospace and Defense
Agile Development in Aerospace and Defense
 
CookpadTechConf2018-(Mobile)TestAutomation
CookpadTechConf2018-(Mobile)TestAutomationCookpadTechConf2018-(Mobile)TestAutomation
CookpadTechConf2018-(Mobile)TestAutomation
 
LeverX SAP DMS Webinar
LeverX SAP DMS WebinarLeverX SAP DMS Webinar
LeverX SAP DMS Webinar
 
AUG NYC June 12 - Event Presentations
AUG NYC June 12 - Event PresentationsAUG NYC June 12 - Event Presentations
AUG NYC June 12 - Event Presentations
 
Ion Idea Testing Services Presentation Ver 1 0
Ion Idea Testing Services Presentation Ver 1 0Ion Idea Testing Services Presentation Ver 1 0
Ion Idea Testing Services Presentation Ver 1 0
 
Programming skills for test automation
Programming skills for test automationProgramming skills for test automation
Programming skills for test automation
 
Mindtree test automation services.
Mindtree test automation services.Mindtree test automation services.
Mindtree test automation services.
 
Udvid din test portefølje med coded ui test og cloud load test
Udvid din test portefølje med coded ui test og cloud load testUdvid din test portefølje med coded ui test og cloud load test
Udvid din test portefølje med coded ui test og cloud load test
 
Application Lifecycle Management & VSTS
Application Lifecycle Management & VSTSApplication Lifecycle Management & VSTS
Application Lifecycle Management & VSTS
 
Microsoft ALM Platform Overview
Microsoft ALM Platform OverviewMicrosoft ALM Platform Overview
Microsoft ALM Platform Overview
 
Lights-Out Testing for Lights-On Business
Lights-Out Testing for Lights-On BusinessLights-Out Testing for Lights-On Business
Lights-Out Testing for Lights-On Business
 
Agile Requirements by Agile Analysts
Agile Requirements by Agile AnalystsAgile Requirements by Agile Analysts
Agile Requirements by Agile Analysts
 
Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012
 
Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012
 
Cognizant's Zero Deviation Life Cycle - an Overview
Cognizant's Zero Deviation Life Cycle - an OverviewCognizant's Zero Deviation Life Cycle - an Overview
Cognizant's Zero Deviation Life Cycle - an Overview
 
How BDD enables True CI/CD
How BDD enables True CI/CDHow BDD enables True CI/CD
How BDD enables True CI/CD
 

Recently uploaded

Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 

Recently uploaded (20)

Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 

7 DEADLY SINS OF AUTOMATED TESTING

  • 1. 7 DEADLY SINS OF AUTOMATED TESTING Dr Adrian Smith September 2012 Engineering Innovation. Thursday, 20 September 12
  • 2. Adrian Smith • Background in Engineering • Software development using Agile and Lean Diverse Ex Diverse Ex • Technical and Organisational Coach Aerospace Engineering • Founded a startup product development and Commercial and military engineering Aerospace Engineering analysis and manufacturing experienc consulting business Diverse Experienc Commercial and military engineering programs including A380 and F35. analysis and manufacturing experienc programs including A380 and F35. Agile Software Developm Aerospace Engineering Software development, architecture a Agile Software Developm Commercial and military engineering design, management for engineering CAE, au Software development, architecture a analysis and manufacturing experience on major scientific and digital media. programs including A380 and F35. engineering CAE, au management for scientific and digital media. Systems Integration Thursday, 20 September 12 Agile Software Development Integration of logistics, financial, engi
  • 4. Airbus A380 Wing Thursday, 20 September 12
  • 6. Envy Flawed comparison of manual testing and automation Thursday, 20 September 12
  • 7. How management see testing Thursday, 20 September 12
  • 8. How management would like to see testing Thursday, 20 September 12
  • 9. Manual vs Automation • A flawed comparison • Assumes that automation can replace manual testing effort • Automation generally doesn’t find new defects • Testing is not merely a sequence of repeatable actions • Testing requires thought and learning Thursday, 20 September 12
  • 10. Ideal automation targets • Regression testing - assessing current state • Automation of test support activities • Data generation or sub-setting • Load generation • Non-functional testing • Deterministic problems • Big data problems Thursday, 20 September 12
  • 11. Common symptoms • Relying on automation as the basis for all testing activities • All tests are built by developers • Absence of code reviews • Absence of exploratory testing • Absence of user testing Thursday, 20 September 12
  • 12. Suggested approach • Avoid comparison between manual and automated testing - both are needed • Distinguish between the automation and the process that is being automated • Use automation to provide a baseline • Use automation in conjunction with manual techniques Thursday, 20 September 12
  • 13. GLUTTONY Over indulging on commercial test tools Thursday, 20 September 12
  • 14. Promise of automation • Software vendors have sold automation as the capture-replay of manual testing processes • Miracle tools that solve all testing problems Thursday, 20 September 12
  • 15. License barrier • Commercial licenses restrict usage • Not everyone can run the tests • Typically, organisations create special groups or privileged individuals Thursday, 20 September 12
  • 16. Incompatible technology • Underlying technology of commercial tools is often not compatible with the development toolchain • Special file formats or databases • Lack of version control for tests • Tests cannot be versioned within the software • Continuous integration problems • Can’t be adapted or extended by the developers Thursday, 20 September 12
  • 17. Justifying the expense • Financial commitments distort judgement • Difficult to make objective decisions • Tendency to use the tool for every testing problem • People define their role by the tools they use Thursday, 20 September 12
  • 18. Common symptoms • A commercial tools form the basis of a testing strategy • Only certain teams or individuals can access a tool or run tests • Developers have not be consulted in the selection of a testing tools • “We always use <insert tool-name> for testing!” Thursday, 20 September 12
  • 19. Suggested approach • Use Open Source software tools where ever possible • Use tools that can easily be supported by the development team and play nicely with existing development tool chain • Ensure any commercial tools can be executed in a command-line mode Thursday, 20 September 12
  • 20. Lust User interface forms the basis for all testing Thursday, 20 September 12
  • 21. Testing through the GUI • Non-technical testers often approach testing through the user interface • Ignores the underlying system and application architecture • Resulting tests are slow and brittle • Difficult to setup test context - resulting in sequence dependent scripts Thursday, 20 September 12
  • 22. Investment profile Manual Exploratory Interface Confidence Speed / Feedback Collaboratively built around system behaviour Acceptance Exercises components and Integration systems Unit/Component Investment / Importance Developer built optimised for fast feedback Thursday, 20 September 12
  • 23. Architecture • Understanding application and system architecture improves test design • Creates opportunities to verify functionality at the right level Thursday, 20 September 12
  • 24. Test design Test Intent (Clearly identifies what the Test Data test is trying to verify) Test Implementation System Under (Implementation of the test Test including usage of test data) Thursday, 20 September 12
  • 25. F.I.R.S.T. class tests F Fast I Independent R Reliable S Small T Transparent Thursday, 20 September 12
  • 26. Common symptoms • Testers cannot draw the application or system architecture • Large proportion of tests are being run through the user interface • Testers have limited technical skills • No collaboration with developers • Intent of tests is unclear Thursday, 20 September 12
  • 27. Suggested approach • Limit the investment in automated tests that are executed through the user interface • Collaborate with developers • Focus investment in automation at lowest possible level with clear test intent • Ensure automation give fast feedback Thursday, 20 September 12
  • 28. Pride Too proud to collaborate when creating tests Thursday, 20 September 12
  • 29. Poor collaboration • Organisations often create specialisations of roles and skills • Layers of management and control then develop • Collaboration becomes difficult • Poor collaboration = poor tests Thursday, 20 September 12
  • 30. Automating too much • Delegating test automation to a special group inhibits collaboration • Poor collaboration can results in duplicate test cases / coverage • Duplication wastes effort and creates maintenance issues • Setting performance goals based around test- cases automated leads to problems Thursday, 20 September 12
  • 31. No definition of quality • Automated testing effort should match the desired system quality • Risk that too-much, too-little or not the right things will be tested • Defining quality creates a shared understanding and can only be achieved through collaboration Thursday, 20 September 12
  • 32. Good collaboration • Cross-functional Acceptance teams built Criteria better software Analyst • Collaboration Specification and improves Elaboration Collaboration Tester definition and verification Developer Automation Thursday, 20 September 12
  • 33. Specification by Example • Recognises the value of collaboration in testing • More general than ATDD and/or BDD • Based around building a suite of Living Documentation that can be executed Thursday, 20 September 12
  • 34. Common symptoms • Automated tests are being built in isolation from team • Intent of tests is unclear or not matched to quality • Poor automation design (abstraction, encapsulation, ...) • Maintainability or compatibility issues Thursday, 20 September 12
  • 35. Suggested approach • Collaborate to create good tests and avoid duplication • Limit the investment in UI based automated tests • Collaborate with developers to ensure good technical practices (encapsulation, abstraction, reuse, ... ) • Test code = Production code Thursday, 20 September 12
  • 36. SLOTH Too lazy to properly maintain automated tests Engineering Innovation. Thursday, 20 September 12
  • 37. Automated Test Failures • Many potential causes of failure • Unless maintained - value is slowly eroded System Reference Interface Data Change Changes Time New OS Feature Patch Thursday, 20 September 12
  • 38. Importance of maintenance Manual test execution Value of Unmaintained Maintained automation Automated Test Suite Unmaintained automation Cost / Effort Potential Value of Maintained Automated Test Suite Time Thursday, 20 September 12
  • 40. Common symptoms • Test suite has not been recently run - state is unknown • Continuous Integration history shows consistent failures following development changes / release • Test suite requires manual intervention • Duplication within automation code • Small changes triggers a cascade of failures Thursday, 20 September 12
  • 41. Suggested Approach • Ensure automated tests are executed using a Continuous Integration environment • Ensure test are always running - even if system in not being actively developed • Make test results visible - create transparency of system health • Ensure collaboration between developers and testers Thursday, 20 September 12
  • 42. Rage Frustration with slow, brittle or unreliable automated tests Thursday, 20 September 12
  • 43. Slow automation • Large datasets • Unnecessary integrations • Inadequate hardware/environments • Too many tests • Reliance on GUI based tests • Manual intervention • ... many others Thursday, 20 September 12
  • 45. Brittle Tests • Contain time-bound data • Have external dependencies • Rely on UI layout/style • Rely on sequence of execution • Based on production data or environments Thursday, 20 September 12
  • 47. Unreliable Tests • False positives • Wastes time investigating • Failures start being ignored • Creates uncertainty of system health • Workarounds and alternate tests are created Thursday, 20 September 12
  • 48. Suggested approach • Treat automated tests with the same importance as production code • Review, refactor, improve ... • Apply a “Stop the line” approach to test failure • Eliminate (quarantine) unreliable tests • Ensure collaboration with developers • Up-skill / pair testers Thursday, 20 September 12
  • 49. Avarice Trying to cut costs through (Greed) automation Thursday, 20 September 12
  • 50. Lure of cheap testing • Testing tool vendors often try to calculate ROI based on saving labour • Analysis is unreliable and under values the importance of testing Thursday, 20 September 12
  • 51. Automation is not cheap • Adopting test automation tools and techniques requires significant investment • Investment in new ways of working • Investment in skills • Investment in collaboration • Ongoing investment in maintenance Thursday, 20 September 12
  • 52. Common symptoms • Investment in commercial tools using a business-case based on reducing headcount • Using a predicted ROI as a way of reducing budget for Testing • Consolidating automated testing within a special group Thursday, 20 September 12
  • 53. Suggested approach • Ensure the reasons for automation are clear and are NOT based purely on saving money/headcount • Ensure business case for automation includes costs for ongoing maintenance Thursday, 20 September 12
  • 54. 7 Deadly Sins Envy Flawed comparison of manual testing and automation Gluttony Over indulging on commercial test tools Lust User interface forms the basis for all testing Pride Too proud to collaborate when creating tests Sloth Too lazy to maintain automated tests Rage Frustration with slow, brittle or unreliable tests Greed Trying to cut costs through automation Thursday, 20 September 12
  • 55. Why automate testing ? Thursday, 20 September 12
  • 56. How geeks really work Thursday, 20 September 12
  • 57. Thank you Dr Adrian Smith September 2012 Engineering Innovation. Thursday, 20 September 12