SlideShare a Scribd company logo
1 of 19
Download to read offline
MUT4SLX
Extensions for Mutation Testing
of Stateflow Models
Speaker — Prof. Serge Demeyer
Authors — Sien Nuyens, Halil Ibrahim Ceylan,
Onur Kilincceker, Mutlu Beyazıt, Serge Demeyer
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
DevOps — Continuous Testing
2
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
Build Pipeline
3
version
control
build
developer
test
deploy
(internal)
automated
system
tests
deploy
(production)
measure &
validate
`
`
merge
conflicts
compiler
warnings
regression
faults
deployment
warnings
unmet
requirements
deployment
warnings
key
performance
indicator
M
u
t
a
t
i
o
n
T
e
s
t
i
n
g
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
Testing The Quality Assurance
4
© Brussels Airlines
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
Inject Synthetic Items
5
© "The Good, the Bad and the Ugly: Evaluating Convolutional Neural Networks for Prohibited Item Detection Using Real and
Synthetically Composite X-ray Imagery”. Neelanjan Bhowmik, Qian Wang, Yona Falinie A. Gaus, Marcin Szarek, Toby P. Breckon
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
6
Mostly textual programming languages
(C++, C, C#, Java, Python, …)
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
Industry 4.0: Cyber-Physical Systems
7
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
MatLab Ecosystem
Simulink
• sensors and actuators (continuous signals)
• embedded (control) software
StateFlow
• reactive systems
• combinatorial & sequential decision logic
8
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
Microwave (StateFlow)
9
input = stream of values
• start boolean;
• door_closed boolean;
• clear boolean;
• steps_to_cook int output = stream of values
• mode int
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
Unit Testing: Streams of Values with Tolerated Deviation
10
public static void assertArrayEquals(String message,
float[] expected,
float[] actuals,
float delta)
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
Test Design with Signal Builder
11
Assert
Compare expected
against actual signal
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
Assert with SignalBuilder: Compare Signals
12
Assert
Compare expected
against actual signal
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
MUT4SLX: Mutation Testing for Simulink …
13
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
MUT4SLX: Mutation Testing for Simulink and StateFlow
14
New!
VST2024
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
MUT4SLX Overview
15
Model
Working Directory
Target System
Mutation Operators
Set
Configuration
Start Matlab
Open Working
Directory
Open Model
Select
Mutation
Operators
Find Specific
Block Type for
Mutation
Generate
Mutants
Load
JSON
File
Save Mutants
on CSV File
Pre-run Test
Apply Mutation
on Model
Run-Test
Check Test
Results
Prepare
Report
Detect
Test
Engine
MUT4SLX
Yes
No
Untested
Mutant in
CSV?
Save Report
in HTML format
MUT4SLX
Fast mutant injection by
manipulating via the API
Automatic test execution via Signal
builder and Simulink test.
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. 16
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
Mutation Operators: Industrial Collaboration
17
# Name Description
1 ROR Relational Operator Replacement
2 LOR Logical Operator Replacement
3 ASR Arithmetic Sign Replacement
4 MMR Min-Max Replacement
5 ICR If Condition Replacement
6 TOR Trigonometric Operator
Replacement
7 MOR Math Operator Replacement
8 PMR Product Multiplication
Replacement
9 POR Product Operator Replacement
10 FIR For Index Replacement
11 FLR For Limit Replacement
12 UDO Unit Delay Operation
13 STR Switch Threshold Replacement
14 SCR Switch Criteria Replacement
15 CR Constant Replacement
# Name Description
1 ROM Relational Operator Mutation
2 LOM Logical Operator Mutation
3 BOM Bitwise Operator Mutation
4 MOM Math Operator Mutation
5 NOM Non-bitwise Operator Mutation
7 CCM Control Chart Mutation
8 CDR Control chart Duration Mutation
9 TOM Transition Order Mutation
New!
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0.
Validation: 4 small models
18
System # mutants # killed
mutants
mutation
score
mutant
generation
time
mutant
execution
time
Cruise Control 63 33 52.38% 1.4 sec 11.79 min
Microwave 30 21 70% 0.7 sec 7.68 sec
Aircraft Elevator 2243 - - 66.1 sec -
Automatic Transmission 53 - - 1.35 sec -
System #
subsystems
Total Block
Count
Number of
States
Number of
Transition
Number of
tests
Cruise Control 1 9 7 23 15
Microwave 3 17 4 11 1
Aircraft Elevator 37 825 29 104 0
Automatic Transmission 17 65 9 14 0
It works …
… fast!
© Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. 19
https://github.com/haliliceylan/MUT4SLX

More Related Content

Similar to MUT4SLX: Extensions for Mutation Testing of Stateflow Models

Istio Triangle Kubernetes Meetup Aug 2019
Istio Triangle Kubernetes Meetup Aug 2019Istio Triangle Kubernetes Meetup Aug 2019
Istio Triangle Kubernetes Meetup Aug 2019Ram Vennam
 
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREUVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREVLSICS Design
 
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREUVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREVLSICS Design
 
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREUVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREVLSICS Design
 
Detailed large-scale real-time HYPERSIM EMT simulation for transient stabilit...
Detailed large-scale real-time HYPERSIM EMT simulation for transient stabilit...Detailed large-scale real-time HYPERSIM EMT simulation for transient stabilit...
Detailed large-scale real-time HYPERSIM EMT simulation for transient stabilit...OPAL-RT TECHNOLOGIES
 
Mining Assumptions for Software Components using Machine Learning
Mining Assumptions for Software Components using Machine LearningMining Assumptions for Software Components using Machine Learning
Mining Assumptions for Software Components using Machine LearningLionel Briand
 
BlockChain Online Course
BlockChain Online Course BlockChain Online Course
BlockChain Online Course Prasanthi K
 
Developing Real-Time Systems on Application Processors
Developing Real-Time Systems on Application ProcessorsDeveloping Real-Time Systems on Application Processors
Developing Real-Time Systems on Application ProcessorsToradex
 
2307 - DevBCN - Otel 101_compressed.pdf
2307 - DevBCN - Otel 101_compressed.pdf2307 - DevBCN - Otel 101_compressed.pdf
2307 - DevBCN - Otel 101_compressed.pdfDimitrisFinas1
 
UVM ARCHITECTURE FOR VERIFICATION
UVM ARCHITECTURE FOR VERIFICATIONUVM ARCHITECTURE FOR VERIFICATION
UVM ARCHITECTURE FOR VERIFICATIONIAEME Publication
 
1477764276931Resume_Ahmed
1477764276931Resume_Ahmed1477764276931Resume_Ahmed
1477764276931Resume_Ahmedsalman shaikh
 
A Survey of functional verification techniques
A Survey of functional verification techniquesA Survey of functional verification techniques
A Survey of functional verification techniquesIJSRD
 
A SURVEY OF VIRTUAL PROTOTYPING TECHNIQUES FOR SYSTEM DEVELOPMENT AND VALIDATION
A SURVEY OF VIRTUAL PROTOTYPING TECHNIQUES FOR SYSTEM DEVELOPMENT AND VALIDATIONA SURVEY OF VIRTUAL PROTOTYPING TECHNIQUES FOR SYSTEM DEVELOPMENT AND VALIDATION
A SURVEY OF VIRTUAL PROTOTYPING TECHNIQUES FOR SYSTEM DEVELOPMENT AND VALIDATIONIJCSES Journal
 
UVM_Full_Print_n.pptx
UVM_Full_Print_n.pptxUVM_Full_Print_n.pptx
UVM_Full_Print_n.pptxnikitha992646
 
淺談 Live patching technology
淺談 Live patching technology淺談 Live patching technology
淺談 Live patching technologySZ Lin
 
Block-Chain Oriented Software Testing Approach
Block-Chain Oriented Software Testing ApproachBlock-Chain Oriented Software Testing Approach
Block-Chain Oriented Software Testing ApproachIRJET Journal
 

Similar to MUT4SLX: Extensions for Mutation Testing of Stateflow Models (20)

Istio Triangle Kubernetes Meetup Aug 2019
Istio Triangle Kubernetes Meetup Aug 2019Istio Triangle Kubernetes Meetup Aug 2019
Istio Triangle Kubernetes Meetup Aug 2019
 
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREUVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
 
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREUVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
 
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREUVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
 
Detailed large-scale real-time HYPERSIM EMT simulation for transient stabilit...
Detailed large-scale real-time HYPERSIM EMT simulation for transient stabilit...Detailed large-scale real-time HYPERSIM EMT simulation for transient stabilit...
Detailed large-scale real-time HYPERSIM EMT simulation for transient stabilit...
 
Mining Assumptions for Software Components using Machine Learning
Mining Assumptions for Software Components using Machine LearningMining Assumptions for Software Components using Machine Learning
Mining Assumptions for Software Components using Machine Learning
 
BlockChain Online Training
BlockChain Online Training BlockChain Online Training
BlockChain Online Training
 
BlockChain Online Course
BlockChain Online Course BlockChain Online Course
BlockChain Online Course
 
Developing Real-Time Systems on Application Processors
Developing Real-Time Systems on Application ProcessorsDeveloping Real-Time Systems on Application Processors
Developing Real-Time Systems on Application Processors
 
2307 - DevBCN - Otel 101_compressed.pdf
2307 - DevBCN - Otel 101_compressed.pdf2307 - DevBCN - Otel 101_compressed.pdf
2307 - DevBCN - Otel 101_compressed.pdf
 
UVM ARCHITECTURE FOR VERIFICATION
UVM ARCHITECTURE FOR VERIFICATIONUVM ARCHITECTURE FOR VERIFICATION
UVM ARCHITECTURE FOR VERIFICATION
 
1477764276931Resume_Ahmed
1477764276931Resume_Ahmed1477764276931Resume_Ahmed
1477764276931Resume_Ahmed
 
Aniruddha_More_Resume
Aniruddha_More_ResumeAniruddha_More_Resume
Aniruddha_More_Resume
 
A Survey of functional verification techniques
A Survey of functional verification techniquesA Survey of functional verification techniques
A Survey of functional verification techniques
 
A SURVEY OF VIRTUAL PROTOTYPING TECHNIQUES FOR SYSTEM DEVELOPMENT AND VALIDATION
A SURVEY OF VIRTUAL PROTOTYPING TECHNIQUES FOR SYSTEM DEVELOPMENT AND VALIDATIONA SURVEY OF VIRTUAL PROTOTYPING TECHNIQUES FOR SYSTEM DEVELOPMENT AND VALIDATION
A SURVEY OF VIRTUAL PROTOTYPING TECHNIQUES FOR SYSTEM DEVELOPMENT AND VALIDATION
 
UVM_Full_Print_n.pptx
UVM_Full_Print_n.pptxUVM_Full_Print_n.pptx
UVM_Full_Print_n.pptx
 
01-06 OCRE Test Suite - Fernandes.pdf
01-06 OCRE Test Suite - Fernandes.pdf01-06 OCRE Test Suite - Fernandes.pdf
01-06 OCRE Test Suite - Fernandes.pdf
 
淺談 Live patching technology
淺談 Live patching technology淺談 Live patching technology
淺談 Live patching technology
 
Block-Chain Oriented Software Testing Approach
Block-Chain Oriented Software Testing ApproachBlock-Chain Oriented Software Testing Approach
Block-Chain Oriented Software Testing Approach
 
Ergo details
Ergo detailsErgo details
Ergo details
 

More from University of Antwerp

AI For Software Engineering: Two Industrial Experience Reports
AI For Software Engineering: Two Industrial Experience ReportsAI For Software Engineering: Two Industrial Experience Reports
AI For Software Engineering: Two Industrial Experience ReportsUniversity of Antwerp
 
Test Amplification in Python — An Industrial Experience Report
       Test Amplification in Python — An Industrial Experience Report       Test Amplification in Python — An Industrial Experience Report
Test Amplification in Python — An Industrial Experience ReportUniversity of Antwerp
 
Technical Debt in Start-ups / Scale-Ups
Technical Debt in Start-ups / Scale-UpsTechnical Debt in Start-ups / Scale-Ups
Technical Debt in Start-ups / Scale-UpsUniversity of Antwerp
 
Social Coding Platforms Facilitate Variant Forks
Social Coding Platforms Facilitate Variant ForksSocial Coding Platforms Facilitate Variant Forks
Social Coding Platforms Facilitate Variant ForksUniversity of Antwerp
 
Finding Bugs, Fixing Bugs, Preventing Bugs - Exploiting Automated Tests to In...
Finding Bugs, Fixing Bugs, Preventing Bugs - Exploiting Automated Tests to In...Finding Bugs, Fixing Bugs, Preventing Bugs - Exploiting Automated Tests to In...
Finding Bugs, Fixing Bugs, Preventing Bugs - Exploiting Automated Tests to In...University of Antwerp
 
Formal Verification of Developer Tests: a Research Agenda Inspired by Mutatio...
Formal Verification of Developer Tests: a Research Agenda Inspired by Mutatio...Formal Verification of Developer Tests: a Research Agenda Inspired by Mutatio...
Formal Verification of Developer Tests: a Research Agenda Inspired by Mutatio...University of Antwerp
 
Reproducible Crashes: Fuzzing Pharo by Mutating the Test Methods
Reproducible Crashes: Fuzzing Pharo by Mutating the Test MethodsReproducible Crashes: Fuzzing Pharo by Mutating the Test Methods
Reproducible Crashes: Fuzzing Pharo by Mutating the Test MethodsUniversity of Antwerp
 
Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...
Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...
Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...University of Antwerp
 
Test Automation Maturity: A Self-Assessment Tool
Test Automation Maturity: A Self-Assessment ToolTest Automation Maturity: A Self-Assessment Tool
Test Automation Maturity: A Self-Assessment ToolUniversity of Antwerp
 
Keynote VST2020 (Workshop on Validation, Analysis and Evolution of Software ...
Keynote VST2020 (Workshop on  Validation, Analysis and Evolution of Software ...Keynote VST2020 (Workshop on  Validation, Analysis and Evolution of Software ...
Keynote VST2020 (Workshop on Validation, Analysis and Evolution of Software ...University of Antwerp
 
Saner open steeringcommittee2018campobassodoubleblind
Saner open steeringcommittee2018campobassodoubleblindSaner open steeringcommittee2018campobassodoubleblind
Saner open steeringcommittee2018campobassodoubleblindUniversity of Antwerp
 

More from University of Antwerp (12)

AI For Software Engineering: Two Industrial Experience Reports
AI For Software Engineering: Two Industrial Experience ReportsAI For Software Engineering: Two Industrial Experience Reports
AI For Software Engineering: Two Industrial Experience Reports
 
Test Amplification in Python — An Industrial Experience Report
       Test Amplification in Python — An Industrial Experience Report       Test Amplification in Python — An Industrial Experience Report
Test Amplification in Python — An Industrial Experience Report
 
Technical Debt in Start-ups / Scale-Ups
Technical Debt in Start-ups / Scale-UpsTechnical Debt in Start-ups / Scale-Ups
Technical Debt in Start-ups / Scale-Ups
 
Social Coding Platforms Facilitate Variant Forks
Social Coding Platforms Facilitate Variant ForksSocial Coding Platforms Facilitate Variant Forks
Social Coding Platforms Facilitate Variant Forks
 
Finding Bugs, Fixing Bugs, Preventing Bugs - Exploiting Automated Tests to In...
Finding Bugs, Fixing Bugs, Preventing Bugs - Exploiting Automated Tests to In...Finding Bugs, Fixing Bugs, Preventing Bugs - Exploiting Automated Tests to In...
Finding Bugs, Fixing Bugs, Preventing Bugs - Exploiting Automated Tests to In...
 
VST2022SmallAmpAmpyfier.pdf
VST2022SmallAmpAmpyfier.pdfVST2022SmallAmpAmpyfier.pdf
VST2022SmallAmpAmpyfier.pdf
 
Formal Verification of Developer Tests: a Research Agenda Inspired by Mutatio...
Formal Verification of Developer Tests: a Research Agenda Inspired by Mutatio...Formal Verification of Developer Tests: a Research Agenda Inspired by Mutatio...
Formal Verification of Developer Tests: a Research Agenda Inspired by Mutatio...
 
Reproducible Crashes: Fuzzing Pharo by Mutating the Test Methods
Reproducible Crashes: Fuzzing Pharo by Mutating the Test MethodsReproducible Crashes: Fuzzing Pharo by Mutating the Test Methods
Reproducible Crashes: Fuzzing Pharo by Mutating the Test Methods
 
Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...
Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...
Finding Bugs, Fixing Bugs, Preventing Bugs — Exploiting Automated Tests to In...
 
Test Automation Maturity: A Self-Assessment Tool
Test Automation Maturity: A Self-Assessment ToolTest Automation Maturity: A Self-Assessment Tool
Test Automation Maturity: A Self-Assessment Tool
 
Keynote VST2020 (Workshop on Validation, Analysis and Evolution of Software ...
Keynote VST2020 (Workshop on  Validation, Analysis and Evolution of Software ...Keynote VST2020 (Workshop on  Validation, Analysis and Evolution of Software ...
Keynote VST2020 (Workshop on Validation, Analysis and Evolution of Software ...
 
Saner open steeringcommittee2018campobassodoubleblind
Saner open steeringcommittee2018campobassodoubleblindSaner open steeringcommittee2018campobassodoubleblind
Saner open steeringcommittee2018campobassodoubleblind
 

Recently uploaded

Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
+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
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 

Recently uploaded (20)

Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
+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...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 

MUT4SLX: Extensions for Mutation Testing of Stateflow Models

  • 1. MUT4SLX Extensions for Mutation Testing of Stateflow Models Speaker — Prof. Serge Demeyer Authors — Sien Nuyens, Halil Ibrahim Ceylan, Onur Kilincceker, Mutlu Beyazıt, Serge Demeyer
  • 2. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. DevOps — Continuous Testing 2
  • 3. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. Build Pipeline 3 version control build developer test deploy (internal) automated system tests deploy (production) measure & validate ` ` merge conflicts compiler warnings regression faults deployment warnings unmet requirements deployment warnings key performance indicator M u t a t i o n T e s t i n g
  • 4. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. Testing The Quality Assurance 4 © Brussels Airlines
  • 5. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. Inject Synthetic Items 5 © "The Good, the Bad and the Ugly: Evaluating Convolutional Neural Networks for Prohibited Item Detection Using Real and Synthetically Composite X-ray Imagery”. Neelanjan Bhowmik, Qian Wang, Yona Falinie A. Gaus, Marcin Szarek, Toby P. Breckon
  • 6. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. 6 Mostly textual programming languages (C++, C, C#, Java, Python, …)
  • 7. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. Industry 4.0: Cyber-Physical Systems 7
  • 8. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. MatLab Ecosystem Simulink • sensors and actuators (continuous signals) • embedded (control) software StateFlow • reactive systems • combinatorial & sequential decision logic 8
  • 9. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. Microwave (StateFlow) 9 input = stream of values • start boolean; • door_closed boolean; • clear boolean; • steps_to_cook int output = stream of values • mode int
  • 10. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. Unit Testing: Streams of Values with Tolerated Deviation 10 public static void assertArrayEquals(String message, float[] expected, float[] actuals, float delta)
  • 11. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. Test Design with Signal Builder 11 Assert Compare expected against actual signal
  • 12. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. Assert with SignalBuilder: Compare Signals 12 Assert Compare expected against actual signal
  • 13. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. MUT4SLX: Mutation Testing for Simulink … 13
  • 14. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. MUT4SLX: Mutation Testing for Simulink and StateFlow 14 New! VST2024
  • 15. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. MUT4SLX Overview 15 Model Working Directory Target System Mutation Operators Set Configuration Start Matlab Open Working Directory Open Model Select Mutation Operators Find Specific Block Type for Mutation Generate Mutants Load JSON File Save Mutants on CSV File Pre-run Test Apply Mutation on Model Run-Test Check Test Results Prepare Report Detect Test Engine MUT4SLX Yes No Untested Mutant in CSV? Save Report in HTML format MUT4SLX Fast mutant injection by manipulating via the API Automatic test execution via Signal builder and Simulink test.
  • 16. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. 16
  • 17. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. Mutation Operators: Industrial Collaboration 17 # Name Description 1 ROR Relational Operator Replacement 2 LOR Logical Operator Replacement 3 ASR Arithmetic Sign Replacement 4 MMR Min-Max Replacement 5 ICR If Condition Replacement 6 TOR Trigonometric Operator Replacement 7 MOR Math Operator Replacement 8 PMR Product Multiplication Replacement 9 POR Product Operator Replacement 10 FIR For Index Replacement 11 FLR For Limit Replacement 12 UDO Unit Delay Operation 13 STR Switch Threshold Replacement 14 SCR Switch Criteria Replacement 15 CR Constant Replacement # Name Description 1 ROM Relational Operator Mutation 2 LOM Logical Operator Mutation 3 BOM Bitwise Operator Mutation 4 MOM Math Operator Mutation 5 NOM Non-bitwise Operator Mutation 7 CCM Control Chart Mutation 8 CDR Control chart Duration Mutation 9 TOM Transition Order Mutation New!
  • 18. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. Validation: 4 small models 18 System # mutants # killed mutants mutation score mutant generation time mutant execution time Cruise Control 63 33 52.38% 1.4 sec 11.79 min Microwave 30 21 70% 0.7 sec 7.68 sec Aircraft Elevator 2243 - - 66.1 sec - Automatic Transmission 53 - - 1.35 sec - System # subsystems Total Block Count Number of States Number of Transition Number of tests Cruise Control 1 9 7 23 15 Microwave 3 17 4 11 1 Aircraft Elevator 37 825 29 104 0 Automatic Transmission 17 65 9 14 0 It works … … fast!
  • 19. © Copyright Serge Demeyer 2024. Licensed under CC BY_NC 4.0. 19 https://github.com/haliliceylan/MUT4SLX