SlideShare a Scribd company logo
Laying the Foundation
for Enduring Success
Part1: Elements of a Test Framework
What is a Test Framework?
Software Development Life Cycle
Requirements Tests Defects
What do we
make and how
should it
behave
Make sure it
works as
stated in the
Requirement
Definition Sets Environments
Actual Results
do not equal
Expected
Results
What is a Test Framework?
A Test Framework:
• Links tests to other SDLC items
• Is NOT a Test Automation Framework but often contains one
• Allows for rapid creation of tests from reusable components
• Separates data from logic (REUSABILITY)
• Provides a standardized test “language” and reporting structure for an application
under test
How to Build a Test
Framework—The 3 D’s
Define
3 D’s of Testing: Define
Define Workflows (the easy part)
• Startwith requirements
• Each requirementshouldbe at least one test case
• Identify and detailcommon workflows thru the applicationundertest
• If you use User Stories,you are already mostly there
3 D’s of Testing: Define
Define Requirement Example: QAComplete.com ROI Calculator
• Role:As a QAComplete Prospect
• Perspective: Interestedin determiningwhat QAComplete can do for me
• Context: On the ROI Calculatorpage in a web browser
The 3 D’s of Testing: Define
Define Example Workflow—QAComplete.com ROICalculator
• The desired path with minimal variation
• User selects values for the 4 inputs or leavesthe defaults
• User reviewsthe 3 pieces of returned data
• User clicksPrint
• User clicksContact Us
How to Build a Test
Framework—The 3 D’s
Decompose
The 3 D’s of Testing: Decompose
Decompose the Workflow
• Definitions should be as reasonably atomic as possible, yet still useful
• Break down:
• Actions that provide an input (data)
• Results of those actions
• Workflow logic
• Exit points from the workflow
The 3 D’s of Testing: Decompose
Decompose Workflow Example—QAComplete.com ROI Calculator
1.Userselectsortypesinavalueforteammembers
2.Userselectsortypesinavalueforrequirementsto
beimplementedthisyear
3.Userselectsortypesinavaluefortestcasesper
requirements
4.UserleavesSaaSasaselection,orswitchestoOn-
Premise,orcanswitchbackandforth
5.QACompleteImplementationcostinUSD
6.SavingsavailableduetoQACompleteinUSD
7.ROIinthefirstyearasapercent
8.UsercanclickContactUslink
9.UsercanclickPrint,whichwillprovideaprintable
versionof1-7
Inputs
Outputs
Exits
The 3 D’s: Decompose
Decompose Input Methods
Workflow1
• UserSelectsSlider:
• Input1:Teammembers
• Input2:Requirementstobeimplementedthisyear
• Input3:TestCasesperrequirement
• Input4:UserleavesSaaSasaselection,orswitchestoOn-Premise,
optiontoflipbackandforth
Workflow2
• UserSelectsTyping:
• Input1:Teammembers
• Input2:Requirementstobeimplementedthisyear
• Input3:TestCasesperrequirement
• Input4:UserleavesSaaSasaselection,orswitchestoOn-Premise,
optiontoflipbackandforth
Checkpoints
• Output5:QACompleteImplementation
• Output6:SavingAvailableduetoQACompleteinUSD
• Output7:ROIinthefirstyear
Exit
• UsercanclickContactUs
• UsercanclickPrint
How to Build a Test
Framework—The 3 D’s
Decide
The 3 D’s of Testing: Decide
What Environments /Contexts to Cover?
• Operating Systems
• Browsers
• Devices (Mobile & Tablets)
• Security Permissions
• User Roles
• Conflicting Software
The 3 D’s of Testing: Decide
What Tasks and Steps Repeat?
• After decomposing all major workflows:
• Find commonly reused steps and actions
• Find actions and checks that use the same data
• Example: Workflow 1 and Workflow 2 from the ROI Calculator
The 3 D’s of Testing: Decide
What to Automate?
• EnvironmentSetup/Teardown
• DataEntry
• FormFilling
• Varyingdatainputsinarepetitiveprocess
• Exposingbackenddata(APIs,DBtable,etc…)
• Repetitive/boringtasksthatarepronetoinattentionerrors
• Taskswithhighreusevalueacrossmanyworkflows
• Testswithtimingorscreenresponsivenessasacriteriaforsuccess
• Manynon-functionaltesttypes,suchasperformancetesting
• Captureresults
Elements of a Test
Framework
Software Development Life Cycle
Requirements Tests Defects
What do we
make and how
should it
behave
Make sure it
works as
stated in the
Requirement
Definition Sets Environments
Actual Results
do not equal
Expected
Results
Elements of a Test Framework
• Library
• Test Data Sources
• HelperFunctions
• Test Environments
• Modules
• Structure/ Hierarchies
Elements of a Test Framework
• Library:Arepositoryofallyourdecomposedscripts,separatedintotheircomponents.
• Example:InputsonlyfromWorkflow2,separatedfromInputsselectedbysliderinWorkflow1,separatefrom
thecheckpointsusedinboth
• TestDataSources:Arepositoryofalldatasources
• Example:Inputsandexpectedresultsusedbybothworkflowsisonedatasources
• HelperFunctions:Arepositoryofalldecomposedtestscripts,automatedormanual,thatarenotinputsorchecks
• Example:Setupscripts,cleanupscripts,backenddatacapture,other“tasks”
• TestEnvironments:Alistofallcoveredtestingenvironments,brokenoutbytape(OS,Browser…)
• Bestwhencombinedwithassociatedhelperfunctionssuchassetupscriptsandaccessinformation
Elements of a Test Framework
Modules
• Thecombinationoflibraryitemswithanyhelper
functionsandtestdatasources—plusenvironments
• Example:ROICalculator
• Workflow1inputs“ROIslider”usingData
SourceA
• ROICalculatorChecksusingDataSourceA
• Workflow2inputs“ROItypein”usingData
SourceA
• ROICalculatorChecksusingDataSourceA
• RepeatforCoveredEnvironments:IE,
Chrome,Firefox,etc.
Structure/Hierarchies
• The“folder”structureofmodules
• Oftenorganizedinasimilarformatastheapplication
undertest
• Groupedinparent/childrelationships
Elements of a Test Framework
Defects
• Importanttorelatetotestsfor
retesting
• Importanttorelateto
requirementsfor“brokenas
designed”
Releases
• Listofallchangingrequirements
ingivenperiod/build
• Agreatframeworkcanbuildit’s
testplanjustfromthislistasthe
planisequaltoalllinked
requirementsandtheirtests
Requirements
• Mustberelatedtotestsfor
coveragereportingtoensurethat
allchangesaretested
• Feedstestdesign
Join us at 8:30 AM | 2:00 PM EDT
November 7th
https://smartbear.com/resources/webinars/elements-of-a-ui-automation-framework/
Carson Underwood
QA Engineer
O’Reilly Auto Parts
Bria Grangard
Product Marketing Manager
SmartBear Software

More Related Content

PPTX
Agile test practices
Leonard Fingerman
 
PPTX
Continuous Test Automation via CI (CodeMash 2012) - Automating the Agile way
Leonard Fingerman
 
PPT
Automated Testing with Agile
Ken McCorkell
 
PPTX
Functional & Performance Test Automation with CI
Leonard Fingerman
 
PPTX
Amalgamation of BDD, parallel execution and mobile automation
Agile Testing Alliance
 
PPT
BDD along with Continuous Integration
Agile Testing Alliance
 
PDF
Continuous Integration
drluckyspin
 
PPTX
Start Your Automation Journey With Rapise
Inflectra
 
Agile test practices
Leonard Fingerman
 
Continuous Test Automation via CI (CodeMash 2012) - Automating the Agile way
Leonard Fingerman
 
Automated Testing with Agile
Ken McCorkell
 
Functional & Performance Test Automation with CI
Leonard Fingerman
 
Amalgamation of BDD, parallel execution and mobile automation
Agile Testing Alliance
 
BDD along with Continuous Integration
Agile Testing Alliance
 
Continuous Integration
drluckyspin
 
Start Your Automation Journey With Rapise
Inflectra
 

What's hot (20)

PPTX
Continuous Delivery without Test Automation @STPCon, San Diego
Maaret Pyhäjärvi
 
PPTX
Test Automation
Tomas Riha
 
PDF
10 Benefits of Automated Testing
TestObject - Mobile Testing
 
PDF
Test Automation
nikos batsios
 
PPT
Automation testing strategy, approach & planning
SivaprasanthRentala1975
 
PPTX
Automation Tools Overview
Murageppa-QA
 
PPTX
Test automation
Xavier Yin
 
PPTX
Why Automated Testing Matters To DevOps
dpaulmerrill
 
PDF
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Edureka!
 
PPTX
Continuous Performance Testing with Taurus and Jmeter
Agile Testing Alliance
 
PPTX
Introduction to Automation Testing
Archana Krushnan
 
PPTX
Visual Studio 2010 Testing for Developers
Steve Lange
 
DOCX
Selenium Testing Project report
Kapil Rajpurohit
 
PPTX
Test automation within a scrum process
Kushan Shalindra Amarasiri - Technical QE Specialist
 
PPT
Introduction to Gauge
vodqancr
 
PPTX
Test Automation and Continuous Integration
TestCampRO
 
PDF
Test automation - What? Why? How?
Anand Bagmar
 
PDF
6 Traits of a Successful Test Automation Architecture
Erdem YILDIRIM
 
PPTX
Software testing
K Lingaraju
 
PPT
Testing Frameworks
Moataz Nabil
 
Continuous Delivery without Test Automation @STPCon, San Diego
Maaret Pyhäjärvi
 
Test Automation
Tomas Riha
 
10 Benefits of Automated Testing
TestObject - Mobile Testing
 
Test Automation
nikos batsios
 
Automation testing strategy, approach & planning
SivaprasanthRentala1975
 
Automation Tools Overview
Murageppa-QA
 
Test automation
Xavier Yin
 
Why Automated Testing Matters To DevOps
dpaulmerrill
 
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Edureka!
 
Continuous Performance Testing with Taurus and Jmeter
Agile Testing Alliance
 
Introduction to Automation Testing
Archana Krushnan
 
Visual Studio 2010 Testing for Developers
Steve Lange
 
Selenium Testing Project report
Kapil Rajpurohit
 
Test automation within a scrum process
Kushan Shalindra Amarasiri - Technical QE Specialist
 
Introduction to Gauge
vodqancr
 
Test Automation and Continuous Integration
TestCampRO
 
Test automation - What? Why? How?
Anand Bagmar
 
6 Traits of a Successful Test Automation Architecture
Erdem YILDIRIM
 
Software testing
K Lingaraju
 
Testing Frameworks
Moataz Nabil
 
Ad

Similar to Elements of a Test Framework (20)

PDF
Cloud-based Test Microservices JavaOne 2014
Shelley Lambert
 
PPT
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
Lohika_Odessa_TechTalks
 
PPTX
Automation Test Framework
Sachin-QA
 
PPT
Gcs day1
Sriram Angajala
 
PDF
Laravel Load Testing: Strategies and Tools
Muhammad Shehata
 
PDF
Testing - How Vital and How Easy to use
Uma Ghotikar
 
PDF
Shuvam dutta | Performance testing and engineering
Shuvam Dutta
 
PDF
Shuvam dutta | Performance testing & engineering
Shuvam Dutta
 
PDF
STLC (Software Testing Life Cycle)
Ch Fahadi
 
PPTX
Predictive Analytics based Regression Test Optimization
STePINForum
 
PPTX
Performance testing
Chalana Kahandawala
 
PDF
Performancetestingjmeter 121109061704-phpapp02
Shivakumara .
 
PPTX
Types of Testing
Murageppa-QA
 
PPT
Test automation lessons from WebSphere Application Server
Robbie Minshall
 
PPTX
Introduction to performance testing
Richard Bishop
 
PPTX
Automated Acceptance Tests & Tool choice
toddbr
 
PDF
Introduction-Software-Testing-for Developers.pdf
NoviaNengtiyas
 
DOC
Testing Process
maheshpadwal
 
PPTX
How To Transform the Manual Testing Process to Incorporate Test Automation
Ranorex
 
PPTX
Application Performance Tuning Techniques
Ram Nagesh
 
Cloud-based Test Microservices JavaOne 2014
Shelley Lambert
 
" Performance testing for Automation QA - why and how " by Andrey Kovalenko f...
Lohika_Odessa_TechTalks
 
Automation Test Framework
Sachin-QA
 
Gcs day1
Sriram Angajala
 
Laravel Load Testing: Strategies and Tools
Muhammad Shehata
 
Testing - How Vital and How Easy to use
Uma Ghotikar
 
Shuvam dutta | Performance testing and engineering
Shuvam Dutta
 
Shuvam dutta | Performance testing & engineering
Shuvam Dutta
 
STLC (Software Testing Life Cycle)
Ch Fahadi
 
Predictive Analytics based Regression Test Optimization
STePINForum
 
Performance testing
Chalana Kahandawala
 
Performancetestingjmeter 121109061704-phpapp02
Shivakumara .
 
Types of Testing
Murageppa-QA
 
Test automation lessons from WebSphere Application Server
Robbie Minshall
 
Introduction to performance testing
Richard Bishop
 
Automated Acceptance Tests & Tool choice
toddbr
 
Introduction-Software-Testing-for Developers.pdf
NoviaNengtiyas
 
Testing Process
maheshpadwal
 
How To Transform the Manual Testing Process to Incorporate Test Automation
Ranorex
 
Application Performance Tuning Techniques
Ram Nagesh
 
Ad

More from SmartBear (20)

PPTX
Enforcing Your Organization's API Design Standards with SwaggerHub
SmartBear
 
PPTX
Introducing OpenAPI Version 3.1
SmartBear
 
PPTX
IATA Open Air: How API Standardization Enables Innovation in the Airline Indu...
SmartBear
 
PPTX
The State of API 2020 Webinar – Exploring Trends, Tools & Takeaways to Drive ...
SmartBear
 
PPTX
How LISI Automotive Accelerated Application Delivery with SwaggerHub
SmartBear
 
PPTX
Standardising APIs: Powering the Platform Economy in Financial Services
SmartBear
 
PPTX
Getting Started with API Standardization in SwaggerHub
SmartBear
 
PPTX
Adopting a Design-First Approach to API Development with SwaggerHub
SmartBear
 
PPTX
Standardizing APIs Across Your Organization with Swagger and OAS | A SmartBea...
SmartBear
 
PPTX
Effective API Lifecycle Management
SmartBear
 
PDF
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
SmartBear
 
PDF
The API Lifecycle Series: Evolving API Development and Testing from Open Sour...
SmartBear
 
PPTX
Artificial intelligence for faster and smarter software testing - Galway Mee...
SmartBear
 
PDF
Successfully Implementing BDD in an Agile World
SmartBear
 
PPTX
The Best Kept Secrets of Code Review | SmartBear Webinar
SmartBear
 
PPTX
How Capital One Scaled API Design to Deliver New Products Faster
SmartBear
 
PPTX
Testing Without a GUI Using TestComplete
SmartBear
 
PPTX
Hidden Treasure - TestComplete Script Extensions
SmartBear
 
PDF
How Bdd Can Save Agile
SmartBear
 
PPTX
API Automation and TDD to Implement Master Data Survivorship Rules
SmartBear
 
Enforcing Your Organization's API Design Standards with SwaggerHub
SmartBear
 
Introducing OpenAPI Version 3.1
SmartBear
 
IATA Open Air: How API Standardization Enables Innovation in the Airline Indu...
SmartBear
 
The State of API 2020 Webinar – Exploring Trends, Tools & Takeaways to Drive ...
SmartBear
 
How LISI Automotive Accelerated Application Delivery with SwaggerHub
SmartBear
 
Standardising APIs: Powering the Platform Economy in Financial Services
SmartBear
 
Getting Started with API Standardization in SwaggerHub
SmartBear
 
Adopting a Design-First Approach to API Development with SwaggerHub
SmartBear
 
Standardizing APIs Across Your Organization with Swagger and OAS | A SmartBea...
SmartBear
 
Effective API Lifecycle Management
SmartBear
 
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
SmartBear
 
The API Lifecycle Series: Evolving API Development and Testing from Open Sour...
SmartBear
 
Artificial intelligence for faster and smarter software testing - Galway Mee...
SmartBear
 
Successfully Implementing BDD in an Agile World
SmartBear
 
The Best Kept Secrets of Code Review | SmartBear Webinar
SmartBear
 
How Capital One Scaled API Design to Deliver New Products Faster
SmartBear
 
Testing Without a GUI Using TestComplete
SmartBear
 
Hidden Treasure - TestComplete Script Extensions
SmartBear
 
How Bdd Can Save Agile
SmartBear
 
API Automation and TDD to Implement Master Data Survivorship Rules
SmartBear
 

Recently uploaded (20)

PPTX
classification of computer and basic part of digital computer
ravisinghrajpurohit3
 
PPT
Why Reliable Server Maintenance Service in New York is Crucial for Your Business
Sam Vohra
 
PDF
Using licensed Data Loss Prevention (DLP) as a strategic proactive data secur...
Q-Advise
 
PDF
Protecting the Digital World Cyber Securit
dnthakkar16
 
PDF
10 posting ideas for community engagement with AI prompts
Pankaj Taneja
 
PDF
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
PDF
WatchTraderHub - Watch Dealer software with inventory management and multi-ch...
WatchDealer Pavel
 
PDF
Download iTop VPN Free 6.1.0.5882 Crack Full Activated Pre Latest 2025
imang66g
 
PPTX
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
PPTX
Can You Build Dashboards Using Open Source Visualization Tool.pptx
Varsha Nayak
 
PDF
Enhancing Healthcare RPM Platforms with Contextual AI Integration
Cadabra Studio
 
PDF
New Download FL Studio Crack Full Version [Latest 2025]
imang66g
 
PPT
Activate_Methodology_Summary presentatio
annapureddyn
 
PDF
Salesforce Implementation Services Provider.pdf
VALiNTRY360
 
PDF
New Download MiniTool Partition Wizard Crack Latest Version 2025
imang66g
 
PPTX
AI-Ready Handoff: Auto-Summaries & Draft Emails from MQL to Slack in One Flow
bbedford2
 
PDF
advancepresentationskillshdhdhhdhdhdhhfhf
jasmenrojas249
 
PDF
Generating Union types w/ Static Analysis
K. Matthew Dupree
 
PPTX
Contractor Management Platform and Software Solution for Compliance
SHEQ Network Limited
 
PDF
Summary Of Odoo 18.1 to 18.4 : The Way For Odoo 19
CandidRoot Solutions Private Limited
 
classification of computer and basic part of digital computer
ravisinghrajpurohit3
 
Why Reliable Server Maintenance Service in New York is Crucial for Your Business
Sam Vohra
 
Using licensed Data Loss Prevention (DLP) as a strategic proactive data secur...
Q-Advise
 
Protecting the Digital World Cyber Securit
dnthakkar16
 
10 posting ideas for community engagement with AI prompts
Pankaj Taneja
 
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
WatchTraderHub - Watch Dealer software with inventory management and multi-ch...
WatchDealer Pavel
 
Download iTop VPN Free 6.1.0.5882 Crack Full Activated Pre Latest 2025
imang66g
 
Web Testing.pptx528278vshbuqffqhhqiwnwuq
studylike474
 
Can You Build Dashboards Using Open Source Visualization Tool.pptx
Varsha Nayak
 
Enhancing Healthcare RPM Platforms with Contextual AI Integration
Cadabra Studio
 
New Download FL Studio Crack Full Version [Latest 2025]
imang66g
 
Activate_Methodology_Summary presentatio
annapureddyn
 
Salesforce Implementation Services Provider.pdf
VALiNTRY360
 
New Download MiniTool Partition Wizard Crack Latest Version 2025
imang66g
 
AI-Ready Handoff: Auto-Summaries & Draft Emails from MQL to Slack in One Flow
bbedford2
 
advancepresentationskillshdhdhhdhdhdhhfhf
jasmenrojas249
 
Generating Union types w/ Static Analysis
K. Matthew Dupree
 
Contractor Management Platform and Software Solution for Compliance
SHEQ Network Limited
 
Summary Of Odoo 18.1 to 18.4 : The Way For Odoo 19
CandidRoot Solutions Private Limited
 

Elements of a Test Framework

  • 1. Laying the Foundation for Enduring Success Part1: Elements of a Test Framework
  • 2. What is a Test Framework?
  • 3. Software Development Life Cycle Requirements Tests Defects What do we make and how should it behave Make sure it works as stated in the Requirement Definition Sets Environments Actual Results do not equal Expected Results
  • 4. What is a Test Framework? A Test Framework: • Links tests to other SDLC items • Is NOT a Test Automation Framework but often contains one • Allows for rapid creation of tests from reusable components • Separates data from logic (REUSABILITY) • Provides a standardized test “language” and reporting structure for an application under test
  • 5. How to Build a Test Framework—The 3 D’s Define
  • 6. 3 D’s of Testing: Define Define Workflows (the easy part) • Startwith requirements • Each requirementshouldbe at least one test case • Identify and detailcommon workflows thru the applicationundertest • If you use User Stories,you are already mostly there
  • 7. 3 D’s of Testing: Define Define Requirement Example: QAComplete.com ROI Calculator • Role:As a QAComplete Prospect • Perspective: Interestedin determiningwhat QAComplete can do for me • Context: On the ROI Calculatorpage in a web browser
  • 8. The 3 D’s of Testing: Define Define Example Workflow—QAComplete.com ROICalculator • The desired path with minimal variation • User selects values for the 4 inputs or leavesthe defaults • User reviewsthe 3 pieces of returned data • User clicksPrint • User clicksContact Us
  • 9. How to Build a Test Framework—The 3 D’s Decompose
  • 10. The 3 D’s of Testing: Decompose Decompose the Workflow • Definitions should be as reasonably atomic as possible, yet still useful • Break down: • Actions that provide an input (data) • Results of those actions • Workflow logic • Exit points from the workflow
  • 11. The 3 D’s of Testing: Decompose Decompose Workflow Example—QAComplete.com ROI Calculator 1.Userselectsortypesinavalueforteammembers 2.Userselectsortypesinavalueforrequirementsto beimplementedthisyear 3.Userselectsortypesinavaluefortestcasesper requirements 4.UserleavesSaaSasaselection,orswitchestoOn- Premise,orcanswitchbackandforth 5.QACompleteImplementationcostinUSD 6.SavingsavailableduetoQACompleteinUSD 7.ROIinthefirstyearasapercent 8.UsercanclickContactUslink 9.UsercanclickPrint,whichwillprovideaprintable versionof1-7 Inputs Outputs Exits
  • 12. The 3 D’s: Decompose Decompose Input Methods Workflow1 • UserSelectsSlider: • Input1:Teammembers • Input2:Requirementstobeimplementedthisyear • Input3:TestCasesperrequirement • Input4:UserleavesSaaSasaselection,orswitchestoOn-Premise, optiontoflipbackandforth Workflow2 • UserSelectsTyping: • Input1:Teammembers • Input2:Requirementstobeimplementedthisyear • Input3:TestCasesperrequirement • Input4:UserleavesSaaSasaselection,orswitchestoOn-Premise, optiontoflipbackandforth Checkpoints • Output5:QACompleteImplementation • Output6:SavingAvailableduetoQACompleteinUSD • Output7:ROIinthefirstyear Exit • UsercanclickContactUs • UsercanclickPrint
  • 13. How to Build a Test Framework—The 3 D’s Decide
  • 14. The 3 D’s of Testing: Decide What Environments /Contexts to Cover? • Operating Systems • Browsers • Devices (Mobile & Tablets) • Security Permissions • User Roles • Conflicting Software
  • 15. The 3 D’s of Testing: Decide What Tasks and Steps Repeat? • After decomposing all major workflows: • Find commonly reused steps and actions • Find actions and checks that use the same data • Example: Workflow 1 and Workflow 2 from the ROI Calculator
  • 16. The 3 D’s of Testing: Decide What to Automate? • EnvironmentSetup/Teardown • DataEntry • FormFilling • Varyingdatainputsinarepetitiveprocess • Exposingbackenddata(APIs,DBtable,etc…) • Repetitive/boringtasksthatarepronetoinattentionerrors • Taskswithhighreusevalueacrossmanyworkflows • Testswithtimingorscreenresponsivenessasacriteriaforsuccess • Manynon-functionaltesttypes,suchasperformancetesting • Captureresults
  • 17. Elements of a Test Framework
  • 18. Software Development Life Cycle Requirements Tests Defects What do we make and how should it behave Make sure it works as stated in the Requirement Definition Sets Environments Actual Results do not equal Expected Results
  • 19. Elements of a Test Framework • Library • Test Data Sources • HelperFunctions • Test Environments • Modules • Structure/ Hierarchies
  • 20. Elements of a Test Framework • Library:Arepositoryofallyourdecomposedscripts,separatedintotheircomponents. • Example:InputsonlyfromWorkflow2,separatedfromInputsselectedbysliderinWorkflow1,separatefrom thecheckpointsusedinboth • TestDataSources:Arepositoryofalldatasources • Example:Inputsandexpectedresultsusedbybothworkflowsisonedatasources • HelperFunctions:Arepositoryofalldecomposedtestscripts,automatedormanual,thatarenotinputsorchecks • Example:Setupscripts,cleanupscripts,backenddatacapture,other“tasks” • TestEnvironments:Alistofallcoveredtestingenvironments,brokenoutbytape(OS,Browser…) • Bestwhencombinedwithassociatedhelperfunctionssuchassetupscriptsandaccessinformation
  • 21. Elements of a Test Framework Modules • Thecombinationoflibraryitemswithanyhelper functionsandtestdatasources—plusenvironments • Example:ROICalculator • Workflow1inputs“ROIslider”usingData SourceA • ROICalculatorChecksusingDataSourceA • Workflow2inputs“ROItypein”usingData SourceA • ROICalculatorChecksusingDataSourceA • RepeatforCoveredEnvironments:IE, Chrome,Firefox,etc. Structure/Hierarchies • The“folder”structureofmodules • Oftenorganizedinasimilarformatastheapplication undertest • Groupedinparent/childrelationships
  • 22. Elements of a Test Framework Defects • Importanttorelatetotestsfor retesting • Importanttorelateto requirementsfor“brokenas designed” Releases • Listofallchangingrequirements ingivenperiod/build • Agreatframeworkcanbuildit’s testplanjustfromthislistasthe planisequaltoalllinked requirementsandtheirtests Requirements • Mustberelatedtotestsfor coveragereportingtoensurethat allchangesaretested • Feedstestdesign
  • 23. Join us at 8:30 AM | 2:00 PM EDT November 7th https://smartbear.com/resources/webinars/elements-of-a-ui-automation-framework/ Carson Underwood QA Engineer O’Reilly Auto Parts Bria Grangard Product Marketing Manager SmartBear Software

Editor's Notes

  • #2: Bria
  • #3: Bria
  • #4: Bria leads, Jeff adds comments (feel free to interrupt but Bria will initiate conversation because she actually understands this slide) Let’s star high level with the software development lifecycle. While you all are probably very familiar with this let’s talk about some points. Requirements. Where it all begins. What do we want to make, what will we make, and how should whatever we make really behave. Need to have a solid foundation for success… you need to know what your requirements are and what you want them to accomplish. No confusion. It’s kind of like taking that moment to prepare for your essay before you write it. For Tests you can have multiple types of tests. Test Definition Test set What environments you want to run the test on-operating systems, browsers, resolutions, etc. Defects—it’s inevitable. Your tests are going to find some bugs and there will be some problem. But if you have a defect you want to be able to log it properly and tie it to the correct test and requirement. Releases—all of these things are encapsulated in a release. What are you pushing out for the next major or minor release/build.
  • #5: Jeff leads
  • #6: Bria
  • #7: Bria leads Framework starts as a collection of workflows Every requirement should have some associated tests. You shouldn’t have a requirement without a test because then how do you know whether or not your requirement is successful. It’s important to look and see if there is a common thread between your workflows for the application under test and if so… note them. These will be important later as you continue to build out your test framework You may be using user stories.. If this is the case you’re already almost there for defining your workflows
  • #8: Bria leads Now let us walk you through an example. Recently I was working on a project-–QAComplete.com. For this website I needed to define my requirements. In order to do this I needed to put myself in the place of whomever will be visiting this website. This is important to get perspective of what is necessary. Role: sets expectations, is a way to fill in unwritten requirements Perspective: separate from role to make later reporting easier, provides insight into desires and mindset Context: very important as it provides a starting point AND ENVIRONMENT, in more complex tests provides input data as well—you cannot forget this part of things and sometimes people do. What is the context in which you are defining your requirements.
  • #9: Jeff leads
  • #10: Jeff leads
  • #11: Jeff leads Little bit of an art and usually requires knowledge of the application under test
  • #12: Bria leads—Jeff definitely adds comments lol Note there is no Data, but formats are specified
  • #13: Jeff leads
  • #14: Bria leads
  • #15: Bria leads So now it’s time to make some decisions. You’ve defined key things to be successful, and you’ve broken them down into various parts, but now you have to make some decisions for each part. S…me of these decisions may include.
  • #16: Jeff leads
  • #17: Jeff leads—Bria interjects
  • #18: Bria leads
  • #19: Bria leads Let’s bring it back. We know about how to craft a testing framework but what are the actual elements of the testing framework for every stage of the SDLC
  • #20: Jeff leads
  • #21: Jeff Leads It may be helpful to specify INPUTS, OUTPUTS, Logic, and exits There are implicit exits as well (close window, click to other area of website)
  • #22: Jeff leads
  • #23: Bria