尊敬的 微信汇率:1円 ≈ 0.046239 元 支付宝汇率:1円 ≈ 0.04633元 [退出登录]
SlideShare a Scribd company logo
Path to Becoming an Effective Test
Automation Engineer
Lee Barnes
Chief Quality Officer, Forte Group
About Me…
• Chief Quality Officer of Forte Group
• Involved in software quality and testing for over 30 years
• Most of that time focused on test automation and performance
testing
• Passionate about helping organizations build quality into their
applications
Email: lee.barnes@fortegrp.com
Twitter: @USI_LeeBarnes
LinkedIn: linkedin.com/in/leebarnes
@USI_LeeBarnes 2
Current State of Test Automation
Image Source: 2022-23 World Quality Report
Three most important factors in determining test automation approach
@USI_LeeBarnes 3
What Does Effective Test Automation Look Like?
• Supports software development and business objectives
• Includes high value activities / tests
• Reliable and provides fast feedback
• Continuous improvement
• Allows testers to focus on high-value testing tasks  finding problems
@USI_LeeBarnes 4
Testing Techniques | Test Design | Domain
Knowledge | Application Knowledge
Programming | Design Techniques | Automated
Test Design | General Tech Skills
Test Automation Technology / Tooling
What is an Effective Test Automation Engineer?
@USI_LeeBarnes 5
“Show me an effective SDET and I’ll show you a developer with the heart of a tester” – Scott Moore
Curious | Analytical | Intuition
Effective Communicator | Love of Learning
Foundational Characteristics & Skills
Software Testing Skills
Technical Skills
Tooling
Programming | Design Techniques |
Automated Test Design | General
Tech Skills
Test Automation Technology / Tooling
What’s the Reality?
@USI_LeeBarnes 6
Tooling
Technical Skills
7
How Do We Get
There from Here?
@USI_LeeBarnes
Finding Your Starting Point
@USI_LeeBarnes 8
Self
Assessment
Mind Map
Test
Automation
Skills
Automated
Test Design
Tooling
Landscape
UI
Automation
API
Automation
General Tech
Skills
CI/CD
Technologies
Web
Technologies
Test Data
Management
Database
Basics
Operating
Systems
Programming
Skills
Version
Control
Object
Oriented
Programming
Software
Design
Patterns
Software
Testing
Skills
Risk
Assessment
Test Types
Test Design
Techniques
Value
Assessment
Plotting Your Path
@USI_LeeBarnes 9
Start at YOUR
beginning
Keep Focus on the Northstar…
Adding Value!
Software Testing
Skills
General Tech
Skills
Programming
Skills
Test Automation
Skills
10
How Do We Get
There from Here?
@USI_LeeBarnes
Software Testing
Skills
Typical Approach to Software Testing
@USI_LeeBarnes 11
Requirements Tests Execution
• Created in a vacuum
• Missing acceptance
criteria
• Incomplete
• Ambiguous
• Scripted test steps
• Shallow verification
• UI heavy
• Executed / automated by
someone other than the
test author
• Shallow results analysis
Maximum Work and Minimum Value
Learn the Craft of Software Testing
• Understand the importance of viewing testing as a craft that requires
specialized skills
• Learn the levels of testing (unit, integration, etc.) and how they
complement each other
• Learn a variety of testing techniques and when to use them
• Understand how to add value throughout the software delivery cycle
• Learn how to communicate the value of testing to product
stakeholders
@USI_LeeBarnes 12
Software Testing Learning Path
@USI_LeeBarnes 13
Books
• Software Testing Techniques (Beizer)
• The Craft of Software Testing (Marick)
• Software Testing: A Craftsman’s Approach
(Jorgensen)
• Testing Computer Software (Kaner)
• Perfect Software and Other Illusions About
Testing (Weinberg)
• Pragmatic Unit Testing (Langr, Hunt and
Thomas)
• Testing Object Oriented Systems (Binder)
Software Testing Fundamentals and Techniques
Online
• Ministry of Testing (testing community)
• Thinking Tester (testing focused blog)
• Visible Quality (testing & QA focused blog)
• Developsense Blog (testing focused blog)
• Satisfice Blog (testing focused blog)
• Google Testing Blog (testing focused blog)
Software Testing Learning Path
@USI_LeeBarnes 14
Books
• Practical Guide to Testing in DevOps (Clokie)
• Agile Testing: A Practical Guide for Testers in
Agile Teams (Crispin and Gregory)
• More Agile Testing (Crispin and Gregory)
Software Testing in Modern Software Development
Online
• Lisa Crispin blog (Agile testing focused blog)
• Katrina the Tester (DevOps testing focused
blog)
• Continuous Testing and DevOps (DevOps
testing focused blog)
• Agile Testing Fellowship (Agile testing
focused community with blog & training
courses)
15
How Do We Get
There from Here?
@USI_LeeBarnes
Test Automation
Skills
Typical Approach to Test Automation
@USI_LeeBarnes 16
Tool / Framework Automate Tests Execution
• Start with tool /
framework focus
• Over engineer
• Ignore important
foundational factors for
success
• Automate existing
scripted test steps
verbatim
• Scope limited to
executing tests
• UI heavy
• Executed late in the sprint
(or next sprint)
• Flaky execution /
irrelevant failures
• Inefficient results triage
Maximum Work and Minimum Value
Learn the Craft of Test Automation
• Understand that test automation is a process, NOT a tool or
framework
• Automate testing activities to further software development goals,
not for the sake of automation
• Learn how to assess your readiness to succeed with test automation
• Learn test automation design techniques to ensure reliability and
maintainability
• Learn how to communicate the value of test automation to product
stakeholders
@USI_LeeBarnes 17
Are You Ready to Succeed?
Purpose Dependencies Constraints Pipeline / Execution Environment / Data
What business goal
does this test suite
support?
What business risk
does this test suite
mitigate?
What systems or
tools must be in
place for this test
suite to run
successfully?
What can prevent us
from implementing
this test suite in an
ideal way?
Will this test suite be
part of a pipeline?
When will it be
triggered?
How often will it
run?
What environment
will the test suite run
in?
How will test data be
managed?
Ownership and Response Maintainability Effectiveness
Who will create the test suite?
Who should own it?
Who will address test failures and
how?
What will the process be to review
code?
What documentation needs to
exist?
How will we know the test suite is
effective?
Test Suite Canvas – questions to help you think critically about test automation readiness
- Ashley Hunsberger (adapted from original concept by Katrina Clokie)
@USI_LeeBarnes 18
Automated Test Design
• Interact with the application in the most direct way
• UI level for testing UI mechanics
• API / component level for testing variations on the backend components
• Consider contract style tests vs. end-to-end automation across
systems
• Avoid automating existing test steps verbatim – find the most
efficient way satisfy test objectives with automation
• Provide actionable feedback to facilitate test failure analysis
@USI_LeeBarnes 19
Take a Context-Driven Approach
• Don’t let your current tools / knowledge be your hammer and make
every automation opportunity look like a nail
• Consider all testing activities for automation – not just scripted test
steps
• Broaden your definition of what a test automation “tool” is – use the
right tool for the job
• Think critically about your automation scope – focus on high-value
tests
@USI_LeeBarnes 20
Test Automation Learning Path
@USI_LeeBarnes 21
Online
• Automation In Testing (test automation
focused site with training, practice site, and
blog)
• On Test Automation (test automation
focused site with training, free workshops
and blog)
• Test Automation University (site with a
wide variety of free test automation
courses)
• Test Guild (online community dedicated to
test automation)
• Evil Tester (testing and test automation
focused site with many resources)
Test Automation Fundamentals and Techniques
• Automation Panda (a software
development, testing and test automation
focused site – includes a current list of sites
to practice your test automation skills)
Key Takeaways
• There is not a single path to becoming an Effective Test Automation
Engineer
• Effective test automation is built on a foundation of software testing
expertise
• Keep focused on adding value as you progress down your path
• Continuously improve!
• Understand that test automation (and software testing!) is much
more than executing scripted test steps
@USI_LeeBarnes 22
Continuing the Conversation
Lee Barnes
Chief Quality Officer
Forte Group
Email: lee.barnes@fortegrp.com
Twitter: @USI_LeeBarnes
LinkedIn: linkedin.com/in/leebarnes
@USI_LeeBarnes 23

More Related Content

Similar to Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf

Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbsModule 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
Shivang100
 
Software Testing Training : Tonex Training
Software Testing Training : Tonex TrainingSoftware Testing Training : Tonex Training
Software Testing Training : Tonex Training
Bryan Len
 
ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0
Samer Desouky
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle
Kari Kakkonen
 
Organizational responsibilities and test automation
Organizational responsibilities and test automationOrganizational responsibilities and test automation
Organizational responsibilities and test automation
vineeta vineeta
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
SHREEHARI WADAWADAGI
 
Cultural change of testing
Cultural change of testingCultural change of testing
Cultural change of testing
Brijesh Prabhakar
 
7 steps to Software test automation success
7 steps to Software test automation success7 steps to Software test automation success
7 steps to Software test automation success
ngowda gowda (Looking For New job in Bangalore
 
Software product development process
Software product development processSoftware product development process
Software product development process
Sri Kanajan
 
UNIT IV.ppt
UNIT IV.pptUNIT IV.ppt
UNIT IV.ppt
Varshini62
 
Beyond "Quality Assurance"
Beyond "Quality Assurance"Beyond "Quality Assurance"
Beyond "Quality Assurance"
Jason Benton
 
Software test management
Software test managementSoftware test management
Software test management
Vishad Garg
 
Methodology: IT test
Methodology: IT testMethodology: IT test
Methodology: IT test
Jean-François Nguyen
 
How to make Automation an asset for Organization
How to make Automation an asset for OrganizationHow to make Automation an asset for Organization
How to make Automation an asset for Organization
anuvip
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
Chankey Pathak
 
Software Testing Process & Trend
Software Testing Process & TrendSoftware Testing Process & Trend
Software Testing Process & Trend
KMS Technology
 
Test Automation using UiPath Test Suite - Developer Circle Part-1.pdf
Test Automation using UiPath Test Suite - Developer Circle Part-1.pdfTest Automation using UiPath Test Suite - Developer Circle Part-1.pdf
Test Automation using UiPath Test Suite - Developer Circle Part-1.pdf
Diana Gray, MBA
 
How to become a Software Tester Carrier Path for Software Quality Tester
How to become a Software Tester Carrier Path for Software Quality TesterHow to become a Software Tester Carrier Path for Software Quality Tester
How to become a Software Tester Carrier Path for Software Quality Tester
jeetendra mandal
 
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
Emerasoft, solutions to collaborate
 
Why choose Software Testing as a career
Why choose Software Testing as a careerWhy choose Software Testing as a career
Why choose Software Testing as a career
Soumya Suman
 

Similar to Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf (20)

Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbsModule 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
Module 4.pptxbsbsnsnsnsbsbbsjsjzbsbbsbsbsbs
 
Software Testing Training : Tonex Training
Software Testing Training : Tonex TrainingSoftware Testing Training : Tonex Training
Software Testing Training : Tonex Training
 
ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0ISTQB - CTFL Summary v1.0
ISTQB - CTFL Summary v1.0
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle
 
Organizational responsibilities and test automation
Organizational responsibilities and test automationOrganizational responsibilities and test automation
Organizational responsibilities and test automation
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
Cultural change of testing
Cultural change of testingCultural change of testing
Cultural change of testing
 
7 steps to Software test automation success
7 steps to Software test automation success7 steps to Software test automation success
7 steps to Software test automation success
 
Software product development process
Software product development processSoftware product development process
Software product development process
 
UNIT IV.ppt
UNIT IV.pptUNIT IV.ppt
UNIT IV.ppt
 
Beyond "Quality Assurance"
Beyond "Quality Assurance"Beyond "Quality Assurance"
Beyond "Quality Assurance"
 
Software test management
Software test managementSoftware test management
Software test management
 
Methodology: IT test
Methodology: IT testMethodology: IT test
Methodology: IT test
 
How to make Automation an asset for Organization
How to make Automation an asset for OrganizationHow to make Automation an asset for Organization
How to make Automation an asset for Organization
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
Software Testing Process & Trend
Software Testing Process & TrendSoftware Testing Process & Trend
Software Testing Process & Trend
 
Test Automation using UiPath Test Suite - Developer Circle Part-1.pdf
Test Automation using UiPath Test Suite - Developer Circle Part-1.pdfTest Automation using UiPath Test Suite - Developer Circle Part-1.pdf
Test Automation using UiPath Test Suite - Developer Circle Part-1.pdf
 
How to become a Software Tester Carrier Path for Software Quality Tester
How to become a Software Tester Carrier Path for Software Quality TesterHow to become a Software Tester Carrier Path for Software Quality Tester
How to become a Software Tester Carrier Path for Software Quality Tester
 
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
Webinar: "5 semplici passi per migliorare la Quality e i processi di Test".
 
Why choose Software Testing as a career
Why choose Software Testing as a careerWhy choose Software Testing as a career
Why choose Software Testing as a career
 

Recently uploaded

Day 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio FundamentalsDay 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio Fundamentals
UiPathCommunity
 
From Natural Language to Structured Solr Queries using LLMs
From Natural Language to Structured Solr Queries using LLMsFrom Natural Language to Structured Solr Queries using LLMs
From Natural Language to Structured Solr Queries using LLMs
Sease
 
APJC Introduction to ThousandEyes Webinar
APJC Introduction to ThousandEyes WebinarAPJC Introduction to ThousandEyes Webinar
APJC Introduction to ThousandEyes Webinar
ThousandEyes
 
Discover the Unseen: Tailored Recommendation of Unwatched Content
Discover the Unseen: Tailored Recommendation of Unwatched ContentDiscover the Unseen: Tailored Recommendation of Unwatched Content
Discover the Unseen: Tailored Recommendation of Unwatched Content
ScyllaDB
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
Pablo Gómez Abajo
 
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
AlexanderRichford
 
Automation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI AutomationAutomation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI Automation
UiPathCommunity
 
Radically Outperforming DynamoDB @ Digital Turbine with SADA and Google Cloud
Radically Outperforming DynamoDB @ Digital Turbine with SADA and Google CloudRadically Outperforming DynamoDB @ Digital Turbine with SADA and Google Cloud
Radically Outperforming DynamoDB @ Digital Turbine with SADA and Google Cloud
ScyllaDB
 
Multivendor cloud production with VSF TR-11 - there and back again
Multivendor cloud production with VSF TR-11 - there and back againMultivendor cloud production with VSF TR-11 - there and back again
Multivendor cloud production with VSF TR-11 - there and back again
Kieran Kunhya
 
Facilitation Skills - When to Use and Why.pptx
Facilitation Skills - When to Use and Why.pptxFacilitation Skills - When to Use and Why.pptx
Facilitation Skills - When to Use and Why.pptx
Knoldus Inc.
 
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - MydbopsMySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
Mydbops
 
Getting the Most Out of ScyllaDB Monitoring: ShareChat's Tips
Getting the Most Out of ScyllaDB Monitoring: ShareChat's TipsGetting the Most Out of ScyllaDB Monitoring: ShareChat's Tips
Getting the Most Out of ScyllaDB Monitoring: ShareChat's Tips
ScyllaDB
 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
LizaNolte
 
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc
 
QA or the Highway - Component Testing: Bridging the gap between frontend appl...
QA or the Highway - Component Testing: Bridging the gap between frontend appl...QA or the Highway - Component Testing: Bridging the gap between frontend appl...
QA or the Highway - Component Testing: Bridging the gap between frontend appl...
zjhamm304
 
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDBScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
christinelarrosa
 
Introduction to ThousandEyes AMER Webinar
Introduction  to ThousandEyes AMER WebinarIntroduction  to ThousandEyes AMER Webinar
Introduction to ThousandEyes AMER Webinar
ThousandEyes
 
Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!
Tobias Schneck
 
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptxPRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
christinelarrosa
 

Recently uploaded (20)

Day 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio FundamentalsDay 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio Fundamentals
 
From Natural Language to Structured Solr Queries using LLMs
From Natural Language to Structured Solr Queries using LLMsFrom Natural Language to Structured Solr Queries using LLMs
From Natural Language to Structured Solr Queries using LLMs
 
APJC Introduction to ThousandEyes Webinar
APJC Introduction to ThousandEyes WebinarAPJC Introduction to ThousandEyes Webinar
APJC Introduction to ThousandEyes Webinar
 
Discover the Unseen: Tailored Recommendation of Unwatched Content
Discover the Unseen: Tailored Recommendation of Unwatched ContentDiscover the Unseen: Tailored Recommendation of Unwatched Content
Discover the Unseen: Tailored Recommendation of Unwatched Content
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
 
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
 
Automation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI AutomationAutomation Student Developers Session 3: Introduction to UI Automation
Automation Student Developers Session 3: Introduction to UI Automation
 
Radically Outperforming DynamoDB @ Digital Turbine with SADA and Google Cloud
Radically Outperforming DynamoDB @ Digital Turbine with SADA and Google CloudRadically Outperforming DynamoDB @ Digital Turbine with SADA and Google Cloud
Radically Outperforming DynamoDB @ Digital Turbine with SADA and Google Cloud
 
Multivendor cloud production with VSF TR-11 - there and back again
Multivendor cloud production with VSF TR-11 - there and back againMultivendor cloud production with VSF TR-11 - there and back again
Multivendor cloud production with VSF TR-11 - there and back again
 
Facilitation Skills - When to Use and Why.pptx
Facilitation Skills - When to Use and Why.pptxFacilitation Skills - When to Use and Why.pptx
Facilitation Skills - When to Use and Why.pptx
 
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - MydbopsMySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
 
Getting the Most Out of ScyllaDB Monitoring: ShareChat's Tips
Getting the Most Out of ScyllaDB Monitoring: ShareChat's TipsGetting the Most Out of ScyllaDB Monitoring: ShareChat's Tips
Getting the Most Out of ScyllaDB Monitoring: ShareChat's Tips
 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
 
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
 
QA or the Highway - Component Testing: Bridging the gap between frontend appl...
QA or the Highway - Component Testing: Bridging the gap between frontend appl...QA or the Highway - Component Testing: Bridging the gap between frontend appl...
QA or the Highway - Component Testing: Bridging the gap between frontend appl...
 
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDBScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
ScyllaDB Leaps Forward with Dor Laor, CEO of ScyllaDB
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
 
Introduction to ThousandEyes AMER Webinar
Introduction  to ThousandEyes AMER WebinarIntroduction  to ThousandEyes AMER Webinar
Introduction to ThousandEyes AMER Webinar
 
Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!Containers & AI - Beauty and the Beast!?!
Containers & AI - Beauty and the Beast!?!
 
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptxPRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
 

Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf

  • 1. Path to Becoming an Effective Test Automation Engineer Lee Barnes Chief Quality Officer, Forte Group
  • 2. About Me… • Chief Quality Officer of Forte Group • Involved in software quality and testing for over 30 years • Most of that time focused on test automation and performance testing • Passionate about helping organizations build quality into their applications Email: lee.barnes@fortegrp.com Twitter: @USI_LeeBarnes LinkedIn: linkedin.com/in/leebarnes @USI_LeeBarnes 2
  • 3. Current State of Test Automation Image Source: 2022-23 World Quality Report Three most important factors in determining test automation approach @USI_LeeBarnes 3
  • 4. What Does Effective Test Automation Look Like? • Supports software development and business objectives • Includes high value activities / tests • Reliable and provides fast feedback • Continuous improvement • Allows testers to focus on high-value testing tasks  finding problems @USI_LeeBarnes 4
  • 5. Testing Techniques | Test Design | Domain Knowledge | Application Knowledge Programming | Design Techniques | Automated Test Design | General Tech Skills Test Automation Technology / Tooling What is an Effective Test Automation Engineer? @USI_LeeBarnes 5 “Show me an effective SDET and I’ll show you a developer with the heart of a tester” – Scott Moore Curious | Analytical | Intuition Effective Communicator | Love of Learning Foundational Characteristics & Skills Software Testing Skills Technical Skills Tooling
  • 6. Programming | Design Techniques | Automated Test Design | General Tech Skills Test Automation Technology / Tooling What’s the Reality? @USI_LeeBarnes 6 Tooling Technical Skills
  • 7. 7 How Do We Get There from Here? @USI_LeeBarnes
  • 8. Finding Your Starting Point @USI_LeeBarnes 8 Self Assessment Mind Map Test Automation Skills Automated Test Design Tooling Landscape UI Automation API Automation General Tech Skills CI/CD Technologies Web Technologies Test Data Management Database Basics Operating Systems Programming Skills Version Control Object Oriented Programming Software Design Patterns Software Testing Skills Risk Assessment Test Types Test Design Techniques Value Assessment
  • 9. Plotting Your Path @USI_LeeBarnes 9 Start at YOUR beginning Keep Focus on the Northstar… Adding Value! Software Testing Skills General Tech Skills Programming Skills Test Automation Skills
  • 10. 10 How Do We Get There from Here? @USI_LeeBarnes Software Testing Skills
  • 11. Typical Approach to Software Testing @USI_LeeBarnes 11 Requirements Tests Execution • Created in a vacuum • Missing acceptance criteria • Incomplete • Ambiguous • Scripted test steps • Shallow verification • UI heavy • Executed / automated by someone other than the test author • Shallow results analysis Maximum Work and Minimum Value
  • 12. Learn the Craft of Software Testing • Understand the importance of viewing testing as a craft that requires specialized skills • Learn the levels of testing (unit, integration, etc.) and how they complement each other • Learn a variety of testing techniques and when to use them • Understand how to add value throughout the software delivery cycle • Learn how to communicate the value of testing to product stakeholders @USI_LeeBarnes 12
  • 13. Software Testing Learning Path @USI_LeeBarnes 13 Books • Software Testing Techniques (Beizer) • The Craft of Software Testing (Marick) • Software Testing: A Craftsman’s Approach (Jorgensen) • Testing Computer Software (Kaner) • Perfect Software and Other Illusions About Testing (Weinberg) • Pragmatic Unit Testing (Langr, Hunt and Thomas) • Testing Object Oriented Systems (Binder) Software Testing Fundamentals and Techniques Online • Ministry of Testing (testing community) • Thinking Tester (testing focused blog) • Visible Quality (testing & QA focused blog) • Developsense Blog (testing focused blog) • Satisfice Blog (testing focused blog) • Google Testing Blog (testing focused blog)
  • 14. Software Testing Learning Path @USI_LeeBarnes 14 Books • Practical Guide to Testing in DevOps (Clokie) • Agile Testing: A Practical Guide for Testers in Agile Teams (Crispin and Gregory) • More Agile Testing (Crispin and Gregory) Software Testing in Modern Software Development Online • Lisa Crispin blog (Agile testing focused blog) • Katrina the Tester (DevOps testing focused blog) • Continuous Testing and DevOps (DevOps testing focused blog) • Agile Testing Fellowship (Agile testing focused community with blog & training courses)
  • 15. 15 How Do We Get There from Here? @USI_LeeBarnes Test Automation Skills
  • 16. Typical Approach to Test Automation @USI_LeeBarnes 16 Tool / Framework Automate Tests Execution • Start with tool / framework focus • Over engineer • Ignore important foundational factors for success • Automate existing scripted test steps verbatim • Scope limited to executing tests • UI heavy • Executed late in the sprint (or next sprint) • Flaky execution / irrelevant failures • Inefficient results triage Maximum Work and Minimum Value
  • 17. Learn the Craft of Test Automation • Understand that test automation is a process, NOT a tool or framework • Automate testing activities to further software development goals, not for the sake of automation • Learn how to assess your readiness to succeed with test automation • Learn test automation design techniques to ensure reliability and maintainability • Learn how to communicate the value of test automation to product stakeholders @USI_LeeBarnes 17
  • 18. Are You Ready to Succeed? Purpose Dependencies Constraints Pipeline / Execution Environment / Data What business goal does this test suite support? What business risk does this test suite mitigate? What systems or tools must be in place for this test suite to run successfully? What can prevent us from implementing this test suite in an ideal way? Will this test suite be part of a pipeline? When will it be triggered? How often will it run? What environment will the test suite run in? How will test data be managed? Ownership and Response Maintainability Effectiveness Who will create the test suite? Who should own it? Who will address test failures and how? What will the process be to review code? What documentation needs to exist? How will we know the test suite is effective? Test Suite Canvas – questions to help you think critically about test automation readiness - Ashley Hunsberger (adapted from original concept by Katrina Clokie) @USI_LeeBarnes 18
  • 19. Automated Test Design • Interact with the application in the most direct way • UI level for testing UI mechanics • API / component level for testing variations on the backend components • Consider contract style tests vs. end-to-end automation across systems • Avoid automating existing test steps verbatim – find the most efficient way satisfy test objectives with automation • Provide actionable feedback to facilitate test failure analysis @USI_LeeBarnes 19
  • 20. Take a Context-Driven Approach • Don’t let your current tools / knowledge be your hammer and make every automation opportunity look like a nail • Consider all testing activities for automation – not just scripted test steps • Broaden your definition of what a test automation “tool” is – use the right tool for the job • Think critically about your automation scope – focus on high-value tests @USI_LeeBarnes 20
  • 21. Test Automation Learning Path @USI_LeeBarnes 21 Online • Automation In Testing (test automation focused site with training, practice site, and blog) • On Test Automation (test automation focused site with training, free workshops and blog) • Test Automation University (site with a wide variety of free test automation courses) • Test Guild (online community dedicated to test automation) • Evil Tester (testing and test automation focused site with many resources) Test Automation Fundamentals and Techniques • Automation Panda (a software development, testing and test automation focused site – includes a current list of sites to practice your test automation skills)
  • 22. Key Takeaways • There is not a single path to becoming an Effective Test Automation Engineer • Effective test automation is built on a foundation of software testing expertise • Keep focused on adding value as you progress down your path • Continuously improve! • Understand that test automation (and software testing!) is much more than executing scripted test steps @USI_LeeBarnes 22
  • 23. Continuing the Conversation Lee Barnes Chief Quality Officer Forte Group Email: lee.barnes@fortegrp.com Twitter: @USI_LeeBarnes LinkedIn: linkedin.com/in/leebarnes @USI_LeeBarnes 23
  翻译: