SlideShare uma empresa Scribd logo
1 de 16
Baixar para ler offline
Automatic
Test Case Generation
for Train Control Systems
Adnan Causevic
TOCSYC Industrial Workshop, 2014-11-13, Västerås
2
Today’s talk is about…
●  Software Testing Laboratory @ MDH
●  Research:
●  Test Automation
●  Quality of Tests
●  Developers Testing
●  AGENTS - KKS funded project
●  Bombardier Transportation
●  Maximatecc
●  Involved in the TOCSYC
research environment
●  Intelligent Embedded Systems
Master Program Coordinator
3
About me
●  ATAC research project
●  2011-2014
●  Funded by ITEA2/Vinnova
●  Advanced Test Automation for Complex Software-
Intensive System
4
Cooperation with Bombardier
“The project has brought test automation
on the agenda of European industry.”
- ITEA3 Final Review Report
●  Train Control Management System (TCMS)
●  a high capacity, infrastructure backbone
●  the center of the distributed system
●  Functions controlled by TCMS include
●  collecting line voltage,
●  controlling the train engines,
●  opening and closing the train doors,
●  upload of diagnostic data.
5
About Bombardier
●  Vehicle
●  Vehicle Integration testing
●  System
●  System Integration testing
●  Software
●  Modules integration testing
●  Modules testing
●  “Get to the driver’s perspective as soon as possible”
6
About Bombardier
… and their testing
Responsibility
of a Developer!
●  IEC 61131-3
●  Function Block Diagram
●  Graphical programming language
●  Based on element composition
●  Various predefined elements
7
Development Environment
●  Coverage
●  Strict measurements mandated by safety standards
●  Tooling
●  No tool support to measure coverage on FBD
●  Time
●  Creating tests just to reach the coverage leaves very little
time for functional testing
8
Current challenges
… with module testing
9
CompleteTest
10
Research approach
FBD  Program
Transformation 1 Annotation2
UPPAAL  timed  
automata
...
Reachability  
properties
∃	
  ♢	
  β	
  ,
∃	
  ♢	
  pi	
  ,	
  
∃	
  ♢	
  c0	
  and	
  c1
Test  traces Test  cases
(Step)  (1)
(Time)  (20s)
(Inputs)  (0  1  23)
(Outputs)  (1  2  543,9)
UPPAAL  
model  checker
Test  Generation
3
Logic-­‐‑based  
coverage  criteria
DC,  CC,  
MC/DC
”Automated Test Generation using Model-Checking: An Industrial Evaluation”, Eduard Paul Enoiu, Adnan
Causevic, Thomas J. Ostrand, Elaine J. Weyuker, Daniel Sundmark, Paul Pettersson. International Journal
on Software Tools for Technology Transfer, 2014, Springer.
●  Time required to generate tests
●  satisfying the DC, CC and MC/DC logic coverage criteria
11
Case Study at BT
●  For 34 of the 157 programs, the tool did not terminate
after running for a substantial period of time.
●  Cut-off time was set to 10 minutes.
●  There is an indication that as the number of decisions
increases, the performance deteriorates and the cost of
using the tool may become prohibitive.
●  But, if you have so many decisions, how would you test
it manually?
12
Case Study at BT (2)
●  Should a developer generate the tests from scratch?
●  Should a developer provide manual tests first?
●  How many (or how much in terms of coverage)?
●  When should a developer use the Validate Test button?
●  Should developers use this tool at all or should we
automate that as well (nightly build, etc.) ?
13
Best Practices?
●  Internal behavior of each function block has to be
modeled
●  Currently, blocks from the standard language are modeled
●  and a few custom made by Bombardier which are often used
●  State-space explosion
●  a known problem of model-checking
●  large number of Boolean or Integer input values
●  but, again, how would you do it manually ?
14
Limitations
●  Complementing model-checking with:
●  Static analysis of FBD’s
●  Search-based software testing
●  Trying some new approaches:
●  Different model-checkers, SMT solvers, …
●  Measuring effectiveness of generated tests
●  In terms of how good they are in finding faults
●  Experimenting with FBD programs from
other organizations
15
On-going and Future work
●  Adnan Causevic
adnan.causevic@mdh.se
●  Eduard Enoiu
eduard.paul.enoiu@mdh.se
●  www.completetest.org
16
Questions?

Mais conteúdo relacionado

Mais procurados

Testing Tool Evaluation Criteria
Testing Tool Evaluation CriteriaTesting Tool Evaluation Criteria
Testing Tool Evaluation Criteria
basma_iti_1984
 
Automated Testing of NASA Software
Automated Testing of NASA SoftwareAutomated Testing of NASA Software
Automated Testing of NASA Software
Dharmalingam Ganesan
 
Model Based Software Testing
Model Based Software TestingModel Based Software Testing
Model Based Software Testing
Esin Karaman
 
Automation Framework/QTP Framework
Automation Framework/QTP FrameworkAutomation Framework/QTP Framework
Automation Framework/QTP Framework
HeyDay Software Solutions
 

Mais procurados (19)

Types of test tools
Types of test toolsTypes of test tools
Types of test tools
 
Uft Basics
Uft BasicsUft Basics
Uft Basics
 
Software testing tools (free and open source)
Software testing tools (free and open source)Software testing tools (free and open source)
Software testing tools (free and open source)
 
Testing Tool Evaluation Criteria
Testing Tool Evaluation CriteriaTesting Tool Evaluation Criteria
Testing Tool Evaluation Criteria
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
 
Automated Testing of NASA Software
Automated Testing of NASA SoftwareAutomated Testing of NASA Software
Automated Testing of NASA Software
 
Model-Based Testing: Concepts, Tools, and Techniques
Model-Based Testing: Concepts, Tools, and TechniquesModel-Based Testing: Concepts, Tools, and Techniques
Model-Based Testing: Concepts, Tools, and Techniques
 
Model Based Software Testing
Model Based Software TestingModel Based Software Testing
Model Based Software Testing
 
Software testing tools
Software testing toolsSoftware testing tools
Software testing tools
 
Testing Tools
Testing ToolsTesting Tools
Testing Tools
 
Testing parallel programs
Testing parallel programsTesting parallel programs
Testing parallel programs
 
Unit testing
Unit testingUnit testing
Unit testing
 
Model-based Testing Principles
Model-based Testing PrinciplesModel-based Testing Principles
Model-based Testing Principles
 
Software testing tools
Software testing toolsSoftware testing tools
Software testing tools
 
Unit testing
Unit testing Unit testing
Unit testing
 
Automation Framework/QTP Framework
Automation Framework/QTP FrameworkAutomation Framework/QTP Framework
Automation Framework/QTP Framework
 
Software Testing Tools | Edureka
Software Testing Tools | EdurekaSoftware Testing Tools | Edureka
Software Testing Tools | Edureka
 
SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)
 
Case study: QTP to Selenium migration
Case study: QTP to Selenium migrationCase study: QTP to Selenium migration
Case study: QTP to Selenium migration
 

Semelhante a Automatic Test Case Generation

Resume_Archana_Rao
Resume_Archana_RaoResume_Archana_Rao
Resume_Archana_Rao
archana rao
 
WSO2Con Asia 2014 - Effective Test Automation in an Agile Environment
WSO2Con Asia 2014 - Effective Test Automation in an Agile EnvironmentWSO2Con Asia 2014 - Effective Test Automation in an Agile Environment
WSO2Con Asia 2014 - Effective Test Automation in an Agile Environment
WSO2
 
Automock: Interaction-Based Mock Code Generation
Automock: Interaction-Based Mock Code GenerationAutomock: Interaction-Based Mock Code Generation
Automock: Interaction-Based Mock Code Generation
Sabrina Souto
 
TechTalk_Cloud Performance Testing_0.6
TechTalk_Cloud Performance Testing_0.6TechTalk_Cloud Performance Testing_0.6
TechTalk_Cloud Performance Testing_0.6
Sravanthi N
 
Goutham_2+_Testing.docx
Goutham_2+_Testing.docxGoutham_2+_Testing.docx
Goutham_2+_Testing.docx
goutham mylu
 
Rahul_Auti_Sr. Test Engineer_Manual & Automation_Testing_6_Yrs - Copy
Rahul_Auti_Sr. Test Engineer_Manual & Automation_Testing_6_Yrs - CopyRahul_Auti_Sr. Test Engineer_Manual & Automation_Testing_6_Yrs - Copy
Rahul_Auti_Sr. Test Engineer_Manual & Automation_Testing_6_Yrs - Copy
Rahul Auti
 

Semelhante a Automatic Test Case Generation (20)

Info dev flexibility in agile
Info dev flexibility in agileInfo dev flexibility in agile
Info dev flexibility in agile
 
Your Testing Is Flawed: Introducing A New Open Source Tool For Accurate Kuber...
Your Testing Is Flawed: Introducing A New Open Source Tool For Accurate Kuber...Your Testing Is Flawed: Introducing A New Open Source Tool For Accurate Kuber...
Your Testing Is Flawed: Introducing A New Open Source Tool For Accurate Kuber...
 
Julio andradecv
Julio andradecvJulio andradecv
Julio andradecv
 
Technical Practices for Agile Engineering - PNSQC 2019
Technical Practices for Agile Engineering - PNSQC 2019Technical Practices for Agile Engineering - PNSQC 2019
Technical Practices for Agile Engineering - PNSQC 2019
 
Rethinking the Mobile Code Offloading Paradigm: From Concept to Practice
Rethinking the Mobile Code Offloading Paradigm: From Concept to PracticeRethinking the Mobile Code Offloading Paradigm: From Concept to Practice
Rethinking the Mobile Code Offloading Paradigm: From Concept to Practice
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
Vinay Resume
Vinay ResumeVinay Resume
Vinay Resume
 
kundan_resume
kundan_resumekundan_resume
kundan_resume
 
Continuous Performance Testing
Continuous Performance TestingContinuous Performance Testing
Continuous Performance Testing
 
Resume_Archana_Rao
Resume_Archana_RaoResume_Archana_Rao
Resume_Archana_Rao
 
WSO2Con Asia 2014 - Effective Test Automation in an Agile Environment
WSO2Con Asia 2014 - Effective Test Automation in an Agile EnvironmentWSO2Con Asia 2014 - Effective Test Automation in an Agile Environment
WSO2Con Asia 2014 - Effective Test Automation in an Agile Environment
 
Automock: Interaction-Based Mock Code Generation
Automock: Interaction-Based Mock Code GenerationAutomock: Interaction-Based Mock Code Generation
Automock: Interaction-Based Mock Code Generation
 
TechTalk_Cloud Performance Testing_0.6
TechTalk_Cloud Performance Testing_0.6TechTalk_Cloud Performance Testing_0.6
TechTalk_Cloud Performance Testing_0.6
 
Profile_Sugumar_N
Profile_Sugumar_NProfile_Sugumar_N
Profile_Sugumar_N
 
Goutham_2+_Testing.docx
Goutham_2+_Testing.docxGoutham_2+_Testing.docx
Goutham_2+_Testing.docx
 
Rahul_Auti_Sr. Test Engineer_Manual & Automation_Testing_6_Yrs - Copy
Rahul_Auti_Sr. Test Engineer_Manual & Automation_Testing_6_Yrs - CopyRahul_Auti_Sr. Test Engineer_Manual & Automation_Testing_6_Yrs - Copy
Rahul_Auti_Sr. Test Engineer_Manual & Automation_Testing_6_Yrs - Copy
 
Wso2con test-automation
Wso2con test-automationWso2con test-automation
Wso2con test-automation
 
Resume
ResumeResume
Resume
 
Manoj kolhe - Continuous Integration Testing
Manoj kolhe - Continuous Integration TestingManoj kolhe - Continuous Integration Testing
Manoj kolhe - Continuous Integration Testing
 
Leveraging Open Standards to Build Highly Extensible Autonomous Systems
Leveraging Open Standards to Build Highly Extensible Autonomous SystemsLeveraging Open Standards to Build Highly Extensible Autonomous Systems
Leveraging Open Standards to Build Highly Extensible Autonomous Systems
 

Último

%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
masabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 

Último (20)

WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 

Automatic Test Case Generation

  • 1. Automatic Test Case Generation for Train Control Systems Adnan Causevic TOCSYC Industrial Workshop, 2014-11-13, Västerås
  • 3. ●  Software Testing Laboratory @ MDH ●  Research: ●  Test Automation ●  Quality of Tests ●  Developers Testing ●  AGENTS - KKS funded project ●  Bombardier Transportation ●  Maximatecc ●  Involved in the TOCSYC research environment ●  Intelligent Embedded Systems Master Program Coordinator 3 About me
  • 4. ●  ATAC research project ●  2011-2014 ●  Funded by ITEA2/Vinnova ●  Advanced Test Automation for Complex Software- Intensive System 4 Cooperation with Bombardier “The project has brought test automation on the agenda of European industry.” - ITEA3 Final Review Report
  • 5. ●  Train Control Management System (TCMS) ●  a high capacity, infrastructure backbone ●  the center of the distributed system ●  Functions controlled by TCMS include ●  collecting line voltage, ●  controlling the train engines, ●  opening and closing the train doors, ●  upload of diagnostic data. 5 About Bombardier
  • 6. ●  Vehicle ●  Vehicle Integration testing ●  System ●  System Integration testing ●  Software ●  Modules integration testing ●  Modules testing ●  “Get to the driver’s perspective as soon as possible” 6 About Bombardier … and their testing Responsibility of a Developer!
  • 7. ●  IEC 61131-3 ●  Function Block Diagram ●  Graphical programming language ●  Based on element composition ●  Various predefined elements 7 Development Environment
  • 8. ●  Coverage ●  Strict measurements mandated by safety standards ●  Tooling ●  No tool support to measure coverage on FBD ●  Time ●  Creating tests just to reach the coverage leaves very little time for functional testing 8 Current challenges … with module testing
  • 10. 10 Research approach FBD  Program Transformation 1 Annotation2 UPPAAL  timed   automata ... Reachability   properties ∃  ♢  β  , ∃  ♢  pi  ,   ∃  ♢  c0  and  c1 Test  traces Test  cases (Step)  (1) (Time)  (20s) (Inputs)  (0  1  23) (Outputs)  (1  2  543,9) UPPAAL   model  checker Test  Generation 3 Logic-­‐‑based   coverage  criteria DC,  CC,   MC/DC ”Automated Test Generation using Model-Checking: An Industrial Evaluation”, Eduard Paul Enoiu, Adnan Causevic, Thomas J. Ostrand, Elaine J. Weyuker, Daniel Sundmark, Paul Pettersson. International Journal on Software Tools for Technology Transfer, 2014, Springer.
  • 11. ●  Time required to generate tests ●  satisfying the DC, CC and MC/DC logic coverage criteria 11 Case Study at BT
  • 12. ●  For 34 of the 157 programs, the tool did not terminate after running for a substantial period of time. ●  Cut-off time was set to 10 minutes. ●  There is an indication that as the number of decisions increases, the performance deteriorates and the cost of using the tool may become prohibitive. ●  But, if you have so many decisions, how would you test it manually? 12 Case Study at BT (2)
  • 13. ●  Should a developer generate the tests from scratch? ●  Should a developer provide manual tests first? ●  How many (or how much in terms of coverage)? ●  When should a developer use the Validate Test button? ●  Should developers use this tool at all or should we automate that as well (nightly build, etc.) ? 13 Best Practices?
  • 14. ●  Internal behavior of each function block has to be modeled ●  Currently, blocks from the standard language are modeled ●  and a few custom made by Bombardier which are often used ●  State-space explosion ●  a known problem of model-checking ●  large number of Boolean or Integer input values ●  but, again, how would you do it manually ? 14 Limitations
  • 15. ●  Complementing model-checking with: ●  Static analysis of FBD’s ●  Search-based software testing ●  Trying some new approaches: ●  Different model-checkers, SMT solvers, … ●  Measuring effectiveness of generated tests ●  In terms of how good they are in finding faults ●  Experimenting with FBD programs from other organizations 15 On-going and Future work
  • 16. ●  Adnan Causevic adnan.causevic@mdh.se ●  Eduard Enoiu eduard.paul.enoiu@mdh.se ●  www.completetest.org 16 Questions?