SlideShare une entreprise Scribd logo
1  sur  21
Télécharger pour lire hors ligne
W14
Concurrent Class
10/2/2013 3:00:00 PM

"Model-Based Testing:
Concepts, Tools, and
Techniques"
Presented by:
Adam Richards
Critical Logic

Brought to you by:

340 Corporate Way, Suite 300, Orange Park, FL 32073
888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
Adam Richards
Critical Logic
Adam Richards is the director of consulting services at Critical Logic, a consulting firm
specializing in model-based testing tools and services. With nearly two decades in the industry,
Adam has experience as a developer, business analyst, requirements manager, test analyst,
and QA manager. He brings first-hand experience implementing model-based testing
approaches on systems in a wide array of industries, across the entire gamut of development
methodologies.
9/20/2013

Model-Based Testing
Concepts, Tools, and Techniques
Presented by Adam Richards
Starwest, 2013
 2013 Critical Logic

If the shoe fits…
Model-Based Testing offers something for everyone.
 2013 Critical Logic

2

1
9/20/2013

Survey says…
Who uses MBT, how, and for what

 2013 Critical Logic

3

Domains

Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012
http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf

 2013 Critical Logic

4

2
9/20/2013

Interfaces

Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012
http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf

 2013 Critical Logic

5

Methodologies

Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012
http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf

 2013 Critical Logic

6

3
9/20/2013

Test Level
At what scope do you use MBT?

Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012
http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf
 2013 Critical Logic

7

Test Aspects
Which aspects of the SUT do you test with MBT?

Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012
http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf
 2013 Critical Logic

8

4
9/20/2013

Benefits
On average, respondents report MBT:
• Reduced escaped bugs by 59%
• Reduced testing costs by 17%
• Reduced testing duration by 25%
Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012
http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf

 2013 Critical Logic

9

Okay…
But what is it???
 2013 Critical Logic

10

5
9/20/2013

Model Soup
What we Mean by “Model”

 2013 Critical Logic

11

Structural Models

•
•
•
•
•
 2013 Critical Logic

Static
ERD, Class, Component, Data Model…
Can define test environment (e.g. UTP)
Foundation for Behavioral models
Used for both Rqmts & System Models
12

6
9/20/2013

Behavioral Models

• Describe flow
• BPM, Activity, State, Cause-Effect…
• Can specify abstract test scenarios
(no data, test environment)
• Used for both Rqmts & System Models
 2013 Critical Logic

13

Test Models

•
•
•
•
 2013 Critical Logic

Behavioral model + inputs + environment
Specify tests at executable level
Automatable
May or may not include test generator
14

7
9/20/2013

MBT Process Menu*
Hanging the model types together
*Substitutions welcome

 2013 Critical Logic

15

Flavor 1: Model-Centric
Rqmts
Model

Rqmts
Model

•
•
•
•

Rare today (yet)
Generate all
Big investment
Big returns
•
•
•
•

 2013 Critical Logic

Maint. costs
Human error
Defect escapes
Defect
introduction
16

8
9/20/2013

Flavor 2a: Model-Driven
• Less uncommon
• No rqmts model
• Generate
executable tests
from test model

 2013 Critical Logic

17

Flavor 2b: Model-Driven (Agile)
• Test model only
• Generate
acceptance criteria
• Maintain model,
not tests
• Supports CIT

 2013 Critical Logic

18

9
9/20/2013

Flavor 3: Model-Based
•
•
•
•

No test model
Walk rqmts model
Validation later
Add data, env.

 2013 Critical Logic

19

MBT Flavor Rainbow
Model “Centric”
• Model-generated tests & code

Model “Driven”
• Model-generated tests

Model “Based”
• Tests based on rqmts models, built by hand
 2013 Critical Logic

20

10
9/20/2013

Tool Ingredients
What Test Modeling Tools Can Do

 2013 Critical Logic

21

Test Model Tool Functions
Test Data Generators

Test Case Editors

Test Case Generators
>> Test Coverage Criteria
 2013 Critical Logic

22

11
9/20/2013

Test Coverage Criteria
Sys/Rqmt Model Coverage
• Control Flow, Data Flow
• Transition-Based (FSM, statecharts)
• UML-Based (AD, Class, Seq, etc.)

Data Coverage
• Boundary Value Analysis
• Classification Tree
• Statistical, Pairwise

Fault-Based Coverage
• Mutation, Stuck-At Fault Model, MC/DC

Requirements-Based Coverage
• All Requirements Coverage
Utting, M.; Legeard, B.: "Practical Model-Based Testing - A Tools Approach". Morgan Kaufmann Publ, Amsterdam, 2007
 2013 Critical Logic

23

Test Modeling Tool Examples
Commercial
• RBT/DTT (Bender RBT, Critical Logic)
• Rhapsody ATG (IBM)
• Others (Conformiq, AETG, Leirios…)

Open Source
• ParTeG (Eclipse Plugin)
• Spec Explorer (Visual Studio)
• Others (JUMBL, Torx, Uppaal TRON…)
 2013 Critical Logic

24

12
9/20/2013

More Survey
What kind of MBT tools were used?
• 17% Open Source
• 30% Custom
• 53% Commercial

Testing modes used on project (avg)?
• 33.6% MBT
• 36.7% Traditional
• 29.7% Manual
Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012
http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf
 2013 Critical Logic

25

Coverage
What kind of coverage is measured for your MBT test
runs?

Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012
http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf
 2013 Critical Logic

26

13
9/20/2013

More Survey (last one)
How do you connect MBT output, SUT control
interfaces, & SUT observation interfaces?
• 06% Manual input & observation
• 15% Manual scripting required
• 15% Tool generates code/data + manual
processing
• 26% Tool generates code/data for the SUT
interface
• 38% Tool generates code/data for an adapter that
abstracts the SUT interface

Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012
http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf
 2013 Critical Logic

27

Tool Challenges Opportunities
Tool Integration
• Automation, RMS, TMS, SDLC, TestIF

Coverage limited to source model
• Can it synthesize sources to generate tests?

Constraints & infeasibles
• Good coverage <> executable tests

Environment Independence
• What if the scripting language changes?

 2013 Critical Logic

28

14
9/20/2013

“Test Model”

Model-Centric Example - CEM
1. Multi-Source
Synthesis
2. RMS
Traceability
3. Manual &
Auto
4. TMS
integration
5. MCDC tests
that run
6. Language
independence

 2013 Critical Logic

29

Yeah but…
Advantages, Challenges, & Benefits

 2013 Critical Logic

30

15
9/20/2013

MBT Advantages
1. Flexibility (env, interface, model basis)
2. Low barrier to entry (80-100 hrs)
[Binder]
3. Measurable, repeatable test coverage
4. Basis for effort estimation
5. Review models, not tests
6. Move validation forward in SDLC
7. Store test definitions as data
8. Integrated test automation
9. Maintain models, not tests
 2013 Critical Logic

31

MBT Challenges
•
•
•
•
•

Education of test modelers
MBT strategy is an intellectual task
Expectations: models not “automatic”
Selecting and integrating tool suite
Integration with existing SDLC
•
•
•

 2013 Critical Logic

People
Tools
Processes

32

16
9/20/2013

MBT Benefits
1.
2.
3.
4.
5.
6.
7.
8.
9.

Requirements improvement
Efficient test generation, automation
Reduce maintenance costs
Models as basis for effort estimation
Reduce technical debt
Lower cost of quality from rework
Reduce defect escapes
Reduce defect introduction
Data-based result analysis and reporting

 2013 Critical Logic

33

Tips to Get Started
• Start small
•
•
•

Pilot low-risk app/change
Rev. eng. an old complex function
Parallel = ideal

• Use a vendor
•
•

Planning, objectives, strategy
Delivery, training & mentoring

• Identify demonstration objectives
•
•
•
•
 2013 Critical Logic

Test Coverage improvement
Requirements improvement
Reduced defect introduction/escape rates
Scalability, strategy
34

17
9/20/2013

Discussion

 2013 Critical Logic

35

Thank You!

Adam Richards
Critical Logic
Tel: 415-814-9556
arichards@critical-logic.com
 2013 Critical Logic

36

18
9/20/2013

References & Further Reading
Ambler, Scott W. Agile Modeling: Effective Practices for Extreme Programming and the Unified Process.
2002
Utting, M.; Legeard, B.: "Practical Model-Based Testing - A Tools Approach". Morgan Kaufmann Publ,
Amsterdam, 2007
Web site of Robert V. Binder, software engineer, expert on testing and automation, source of important
research information in this presentation: http://www.robertvbinder.com/
http://www.robertvbinder.com/open-source-tools-for-model-based-testing/
http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf
Web site of Stephan Weissleder, MBT theoretician, expert, and innovator: http://model-based-testing.de/
Please feel free to contact me directly if you have any questions or simply to further the discussion. ModelBased Testing is the future!

 2013 Critical Logic

37

19

Contenu connexe

Tendances

Software testing
Software testingSoftware testing
Software testing
Bala Ganesh
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software Testing
Nishant Worah
 
01 software test engineering (manual testing)
01 software test engineering (manual testing)01 software test engineering (manual testing)
01 software test engineering (manual testing)
Siddireddy Balu
 
New software testing-techniques
New software testing-techniquesNew software testing-techniques
New software testing-techniques
Fincy V.J
 
TESTING LIFE CYCLE PPT
TESTING LIFE CYCLE PPTTESTING LIFE CYCLE PPT
TESTING LIFE CYCLE PPT
suhasreddy1
 
Testing artifacts test cases
Testing artifacts   test casesTesting artifacts   test cases
Testing artifacts test cases
Petro Chernii
 

Tendances (20)

Model-based Testing: Taking BDD/ATDD to the Next Level
Model-based Testing: Taking BDD/ATDD to the Next LevelModel-based Testing: Taking BDD/ATDD to the Next Level
Model-based Testing: Taking BDD/ATDD to the Next Level
 
Importance of Software testing in SDLC and Agile
Importance of Software testing in SDLC and AgileImportance of Software testing in SDLC and Agile
Importance of Software testing in SDLC and Agile
 
Software testing
Software testingSoftware testing
Software testing
 
Ppt19
Ppt19Ppt19
Ppt19
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software Testing
 
Manual Testing Notes
Manual Testing NotesManual Testing Notes
Manual Testing Notes
 
Software testing methods
Software testing methodsSoftware testing methods
Software testing methods
 
Quiz3 tonghop
 Quiz3 tonghop Quiz3 tonghop
Quiz3 tonghop
 
Volodymyr Prymakov and Vlada Benyukh Detailed manual estimation approach for ...
Volodymyr Prymakov and Vlada Benyukh Detailed manual estimation approach for ...Volodymyr Prymakov and Vlada Benyukh Detailed manual estimation approach for ...
Volodymyr Prymakov and Vlada Benyukh Detailed manual estimation approach for ...
 
01 software test engineering (manual testing)
01 software test engineering (manual testing)01 software test engineering (manual testing)
01 software test engineering (manual testing)
 
New software testing-techniques
New software testing-techniquesNew software testing-techniques
New software testing-techniques
 
Software testing
Software testing   Software testing
Software testing
 
Software testing quiz questions and answers
Software testing quiz questions and answersSoftware testing quiz questions and answers
Software testing quiz questions and answers
 
Testing of Object-Oriented Software
Testing of Object-Oriented SoftwareTesting of Object-Oriented Software
Testing of Object-Oriented Software
 
TESTING LIFE CYCLE PPT
TESTING LIFE CYCLE PPTTESTING LIFE CYCLE PPT
TESTING LIFE CYCLE PPT
 
Control Flow Testing
Control Flow TestingControl Flow Testing
Control Flow Testing
 
Testing artifacts test cases
Testing artifacts   test casesTesting artifacts   test cases
Testing artifacts test cases
 
Black Box Testing
Black Box TestingBlack Box Testing
Black Box Testing
 
Test cases
Test casesTest cases
Test cases
 
Testing chapter updated (1)
Testing chapter updated (1)Testing chapter updated (1)
Testing chapter updated (1)
 

Similaire à Model-Based Testing: Concepts, Tools, and Techniques

Bertazo et al - Application Lifecycle Management and process monitoring throu...
Bertazo et al - Application Lifecycle Management and process monitoring throu...Bertazo et al - Application Lifecycle Management and process monitoring throu...
Bertazo et al - Application Lifecycle Management and process monitoring throu...
International Software Benchmarking Standards Group (ISBSG)
 
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Lionel Briand
 

Similaire à Model-Based Testing: Concepts, Tools, and Techniques (20)

Model Drivers: The testing profile and its opportunity 2013-09-01
Model Drivers: The testing profile and its opportunity 2013-09-01Model Drivers: The testing profile and its opportunity 2013-09-01
Model Drivers: The testing profile and its opportunity 2013-09-01
 
Establishing A Defect Prediction Model Using A Combination of Product Metrics...
Establishing A Defect Prediction Model Using A Combination of Product Metrics...Establishing A Defect Prediction Model Using A Combination of Product Metrics...
Establishing A Defect Prediction Model Using A Combination of Product Metrics...
 
Predictive Analytics based Regression Test Optimization
Predictive Analytics based Regression Test OptimizationPredictive Analytics based Regression Test Optimization
Predictive Analytics based Regression Test Optimization
 
2019 Testim Webinar: Automation Test Strategy and Design for Agile Teams
2019 Testim Webinar: Automation Test Strategy and Design for Agile Teams2019 Testim Webinar: Automation Test Strategy and Design for Agile Teams
2019 Testim Webinar: Automation Test Strategy and Design for Agile Teams
 
Software testing methodologies to watch out in 2020
Software testing methodologies to watch out in 2020Software testing methodologies to watch out in 2020
Software testing methodologies to watch out in 2020
 
Gcs day1
Gcs day1Gcs day1
Gcs day1
 
Manual Testing to Intelligent Test Automation.pptx
Manual Testing to Intelligent Test Automation.pptxManual Testing to Intelligent Test Automation.pptx
Manual Testing to Intelligent Test Automation.pptx
 
Webinar: Estrategias para optimizar los costos de testing
Webinar: Estrategias para optimizar los costos de testingWebinar: Estrategias para optimizar los costos de testing
Webinar: Estrategias para optimizar los costos de testing
 
Software models
Software modelsSoftware models
Software models
 
Test automation with the Gauge framework: Experience and best practices -- SE...
Test automation with the Gauge framework: Experience and best practices -- SE...Test automation with the Gauge framework: Experience and best practices -- SE...
Test automation with the Gauge framework: Experience and best practices -- SE...
 
Role+Of+Testing+In+Sdlc
Role+Of+Testing+In+SdlcRole+Of+Testing+In+Sdlc
Role+Of+Testing+In+Sdlc
 
Bertazo et al - Application Lifecycle Management and process monitoring throu...
Bertazo et al - Application Lifecycle Management and process monitoring throu...Bertazo et al - Application Lifecycle Management and process monitoring throu...
Bertazo et al - Application Lifecycle Management and process monitoring throu...
 
IT Confidence 2013 - Spago4Q presents a 3D model for Productivity Intelligence
IT Confidence 2013 - Spago4Q presents a 3D model for Productivity IntelligenceIT Confidence 2013 - Spago4Q presents a 3D model for Productivity Intelligence
IT Confidence 2013 - Spago4Q presents a 3D model for Productivity Intelligence
 
Meetup TestingUy 2017: Automating the Viewer: a cross-functional team approach
Meetup TestingUy 2017: Automating the Viewer: a cross-functional team approachMeetup TestingUy 2017: Automating the Viewer: a cross-functional team approach
Meetup TestingUy 2017: Automating the Viewer: a cross-functional team approach
 
Meetup TestingUy 2017 - Automating the Viewer: a cross-functional team approach
Meetup TestingUy 2017 - Automating the Viewer: a cross-functional team approachMeetup TestingUy 2017 - Automating the Viewer: a cross-functional team approach
Meetup TestingUy 2017 - Automating the Viewer: a cross-functional team approach
 
Better Test Designs to Drive Test Automation Excellence
Better Test Designs to Drive Test Automation ExcellenceBetter Test Designs to Drive Test Automation Excellence
Better Test Designs to Drive Test Automation Excellence
 
Next level of test automation with Model-based Testing (MBT): Experience and ...
Next level of test automation with Model-based Testing (MBT): Experience and ...Next level of test automation with Model-based Testing (MBT): Experience and ...
Next level of test automation with Model-based Testing (MBT): Experience and ...
 
Elise Greveraars - Tester Needed? No Thanks, We Use MBT!
Elise Greveraars - Tester Needed? No Thanks, We Use MBT!Elise Greveraars - Tester Needed? No Thanks, We Use MBT!
Elise Greveraars - Tester Needed? No Thanks, We Use MBT!
 
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
 
Questions for successful test automation projects
Questions for successful test automation projectsQuestions for successful test automation projects
Questions for successful test automation projects
 

Plus de TechWell

Plus de TechWell (20)

Failing and Recovering
Failing and RecoveringFailing and Recovering
Failing and Recovering
 
Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization Instill a DevOps Testing Culture in Your Team and Organization
Instill a DevOps Testing Culture in Your Team and Organization
 
Test Design for Fully Automated Build Architecture
Test Design for Fully Automated Build ArchitectureTest Design for Fully Automated Build Architecture
Test Design for Fully Automated Build Architecture
 
System-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good StartSystem-Level Test Automation: Ensuring a Good Start
System-Level Test Automation: Ensuring a Good Start
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
 
Testing Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for SuccessTesting Transformation: The Art and Science for Success
Testing Transformation: The Art and Science for Success
 
Implement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlowImplement BDD with Cucumber and SpecFlow
Implement BDD with Cucumber and SpecFlow
 
Develop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your SanityDevelop WebDriver Automated Tests—and Keep Your Sanity
Develop WebDriver Automated Tests—and Keep Your Sanity
 
Ma 15
Ma 15Ma 15
Ma 15
 
Eliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps StrategyEliminate Cloud Waste with a Holistic DevOps Strategy
Eliminate Cloud Waste with a Holistic DevOps Strategy
 
Transform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOpsTransform Test Organizations for the New World of DevOps
Transform Test Organizations for the New World of DevOps
 
The Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—LeadershipThe Fourth Constraint in Project Delivery—Leadership
The Fourth Constraint in Project Delivery—Leadership
 
Resolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile TeamsResolve the Contradiction of Specialists within Agile Teams
Resolve the Contradiction of Specialists within Agile Teams
 
Pin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile GamePin the Tail on the Metric: A Field-Tested Agile Game
Pin the Tail on the Metric: A Field-Tested Agile Game
 
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile TeamsAgile Performance Holarchy (APH)—A Model for Scaling Agile Teams
Agile Performance Holarchy (APH)—A Model for Scaling Agile Teams
 
A Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps ImplementationA Business-First Approach to DevOps Implementation
A Business-First Approach to DevOps Implementation
 
Databases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery ProcessDatabases in a Continuous Integration/Delivery Process
Databases in a Continuous Integration/Delivery Process
 
Mobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to AutomateMobile Testing: What—and What Not—to Automate
Mobile Testing: What—and What Not—to Automate
 
Cultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for SuccessCultural Intelligence: A Key Skill for Success
Cultural Intelligence: A Key Skill for Success
 
Turn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile TransformationTurn the Lights On: A Power Utility Company's Agile Transformation
Turn the Lights On: A Power Utility Company's Agile Transformation
 

Dernier

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

Model-Based Testing: Concepts, Tools, and Techniques

  • 1. W14 Concurrent Class 10/2/2013 3:00:00 PM "Model-Based Testing: Concepts, Tools, and Techniques" Presented by: Adam Richards Critical Logic Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
  • 2. Adam Richards Critical Logic Adam Richards is the director of consulting services at Critical Logic, a consulting firm specializing in model-based testing tools and services. With nearly two decades in the industry, Adam has experience as a developer, business analyst, requirements manager, test analyst, and QA manager. He brings first-hand experience implementing model-based testing approaches on systems in a wide array of industries, across the entire gamut of development methodologies.
  • 3. 9/20/2013 Model-Based Testing Concepts, Tools, and Techniques Presented by Adam Richards Starwest, 2013  2013 Critical Logic If the shoe fits… Model-Based Testing offers something for everyone.  2013 Critical Logic 2 1
  • 4. 9/20/2013 Survey says… Who uses MBT, how, and for what  2013 Critical Logic 3 Domains Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012 http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf  2013 Critical Logic 4 2
  • 5. 9/20/2013 Interfaces Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012 http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf  2013 Critical Logic 5 Methodologies Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012 http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf  2013 Critical Logic 6 3
  • 6. 9/20/2013 Test Level At what scope do you use MBT? Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012 http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf  2013 Critical Logic 7 Test Aspects Which aspects of the SUT do you test with MBT? Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012 http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf  2013 Critical Logic 8 4
  • 7. 9/20/2013 Benefits On average, respondents report MBT: • Reduced escaped bugs by 59% • Reduced testing costs by 17% • Reduced testing duration by 25% Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012 http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf  2013 Critical Logic 9 Okay… But what is it???  2013 Critical Logic 10 5
  • 8. 9/20/2013 Model Soup What we Mean by “Model”  2013 Critical Logic 11 Structural Models • • • • •  2013 Critical Logic Static ERD, Class, Component, Data Model… Can define test environment (e.g. UTP) Foundation for Behavioral models Used for both Rqmts & System Models 12 6
  • 9. 9/20/2013 Behavioral Models • Describe flow • BPM, Activity, State, Cause-Effect… • Can specify abstract test scenarios (no data, test environment) • Used for both Rqmts & System Models  2013 Critical Logic 13 Test Models • • • •  2013 Critical Logic Behavioral model + inputs + environment Specify tests at executable level Automatable May or may not include test generator 14 7
  • 10. 9/20/2013 MBT Process Menu* Hanging the model types together *Substitutions welcome  2013 Critical Logic 15 Flavor 1: Model-Centric Rqmts Model Rqmts Model • • • • Rare today (yet) Generate all Big investment Big returns • • • •  2013 Critical Logic Maint. costs Human error Defect escapes Defect introduction 16 8
  • 11. 9/20/2013 Flavor 2a: Model-Driven • Less uncommon • No rqmts model • Generate executable tests from test model  2013 Critical Logic 17 Flavor 2b: Model-Driven (Agile) • Test model only • Generate acceptance criteria • Maintain model, not tests • Supports CIT  2013 Critical Logic 18 9
  • 12. 9/20/2013 Flavor 3: Model-Based • • • • No test model Walk rqmts model Validation later Add data, env.  2013 Critical Logic 19 MBT Flavor Rainbow Model “Centric” • Model-generated tests & code Model “Driven” • Model-generated tests Model “Based” • Tests based on rqmts models, built by hand  2013 Critical Logic 20 10
  • 13. 9/20/2013 Tool Ingredients What Test Modeling Tools Can Do  2013 Critical Logic 21 Test Model Tool Functions Test Data Generators Test Case Editors Test Case Generators >> Test Coverage Criteria  2013 Critical Logic 22 11
  • 14. 9/20/2013 Test Coverage Criteria Sys/Rqmt Model Coverage • Control Flow, Data Flow • Transition-Based (FSM, statecharts) • UML-Based (AD, Class, Seq, etc.) Data Coverage • Boundary Value Analysis • Classification Tree • Statistical, Pairwise Fault-Based Coverage • Mutation, Stuck-At Fault Model, MC/DC Requirements-Based Coverage • All Requirements Coverage Utting, M.; Legeard, B.: "Practical Model-Based Testing - A Tools Approach". Morgan Kaufmann Publ, Amsterdam, 2007  2013 Critical Logic 23 Test Modeling Tool Examples Commercial • RBT/DTT (Bender RBT, Critical Logic) • Rhapsody ATG (IBM) • Others (Conformiq, AETG, Leirios…) Open Source • ParTeG (Eclipse Plugin) • Spec Explorer (Visual Studio) • Others (JUMBL, Torx, Uppaal TRON…)  2013 Critical Logic 24 12
  • 15. 9/20/2013 More Survey What kind of MBT tools were used? • 17% Open Source • 30% Custom • 53% Commercial Testing modes used on project (avg)? • 33.6% MBT • 36.7% Traditional • 29.7% Manual Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012 http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf  2013 Critical Logic 25 Coverage What kind of coverage is measured for your MBT test runs? Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012 http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf  2013 Critical Logic 26 13
  • 16. 9/20/2013 More Survey (last one) How do you connect MBT output, SUT control interfaces, & SUT observation interfaces? • 06% Manual input & observation • 15% Manual scripting required • 15% Tool generates code/data + manual processing • 26% Tool generates code/data for the SUT interface • 38% Tool generates code/data for an adapter that abstracts the SUT interface Binder, Robert V. 2011 Model-based Testing User Survey: Results and Analysis. 2012 http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf  2013 Critical Logic 27 Tool Challenges Opportunities Tool Integration • Automation, RMS, TMS, SDLC, TestIF Coverage limited to source model • Can it synthesize sources to generate tests? Constraints & infeasibles • Good coverage <> executable tests Environment Independence • What if the scripting language changes?  2013 Critical Logic 28 14
  • 17. 9/20/2013 “Test Model” Model-Centric Example - CEM 1. Multi-Source Synthesis 2. RMS Traceability 3. Manual & Auto 4. TMS integration 5. MCDC tests that run 6. Language independence  2013 Critical Logic 29 Yeah but… Advantages, Challenges, & Benefits  2013 Critical Logic 30 15
  • 18. 9/20/2013 MBT Advantages 1. Flexibility (env, interface, model basis) 2. Low barrier to entry (80-100 hrs) [Binder] 3. Measurable, repeatable test coverage 4. Basis for effort estimation 5. Review models, not tests 6. Move validation forward in SDLC 7. Store test definitions as data 8. Integrated test automation 9. Maintain models, not tests  2013 Critical Logic 31 MBT Challenges • • • • • Education of test modelers MBT strategy is an intellectual task Expectations: models not “automatic” Selecting and integrating tool suite Integration with existing SDLC • • •  2013 Critical Logic People Tools Processes 32 16
  • 19. 9/20/2013 MBT Benefits 1. 2. 3. 4. 5. 6. 7. 8. 9. Requirements improvement Efficient test generation, automation Reduce maintenance costs Models as basis for effort estimation Reduce technical debt Lower cost of quality from rework Reduce defect escapes Reduce defect introduction Data-based result analysis and reporting  2013 Critical Logic 33 Tips to Get Started • Start small • • • Pilot low-risk app/change Rev. eng. an old complex function Parallel = ideal • Use a vendor • • Planning, objectives, strategy Delivery, training & mentoring • Identify demonstration objectives • • • •  2013 Critical Logic Test Coverage improvement Requirements improvement Reduced defect introduction/escape rates Scalability, strategy 34 17
  • 20. 9/20/2013 Discussion  2013 Critical Logic 35 Thank You! Adam Richards Critical Logic Tel: 415-814-9556 arichards@critical-logic.com  2013 Critical Logic 36 18
  • 21. 9/20/2013 References & Further Reading Ambler, Scott W. Agile Modeling: Effective Practices for Extreme Programming and the Unified Process. 2002 Utting, M.; Legeard, B.: "Practical Model-Based Testing - A Tools Approach". Morgan Kaufmann Publ, Amsterdam, 2007 Web site of Robert V. Binder, software engineer, expert on testing and automation, source of important research information in this presentation: http://www.robertvbinder.com/ http://www.robertvbinder.com/open-source-tools-for-model-based-testing/ http://www.robertvbinder.com/docs/arts/MBT-User-Survey.pdf Web site of Stephan Weissleder, MBT theoretician, expert, and innovator: http://model-based-testing.de/ Please feel free to contact me directly if you have any questions or simply to further the discussion. ModelBased Testing is the future!  2013 Critical Logic 37 19