SlideShare a Scribd company logo
1 of 13
Download to read offline
GENERATION OF
MUTATION TESTING TOOLS
WITH WODEL-TEST
P. Gómez-Abajo , E. Guerra, J. de Lara
Modelling&Software Engineering Research Group
http://miso.es
Universidad Autónoma de Madrid (Spain)
The MFoC Workshop 2019
November 26th, IMDEA, Madrid
Mercedes G. Merayo
Design and Testing of Reliable Systems Research Group
http://antares.sip.ucm.es/testing
Universidad Complutense de Madrid (Spain)
WHAT IS MUTATION
TESTING?
• Approach of software testing to
assess the quality of test suites
• Injection of syntax changes in a
program by using mutation
operators
• The mutations introduced
simulate common programming
faults
• Facilitates to improve the
quality of the test-suites and
the mutation operators set
2
3
MUTATION TESTING FOR FA
0
1
1
0
Seed model
01
00
Test-suite
✓

4
MUTATION TESTING FOR FA
0
1
0
1
0
1
1
0
Seed model Mutant model
01
00
Test-suite
✓

MT
01
00 ✓

Test-suite
5
MUTATION TESTING FOR FA
0
1
0
1
0
1
1
0
Seed model Mutant model
01
00
Test-suite
✓

The mutant is alive 
MT
01
00 ✓

Test-suite
6
MUTATION TESTING FOR FA
0
1
1
0
Seed model
✓
01
00
Test-suite
✓

10
7
MUTATION TESTING FOR FA
0
1
0
1
0
1
1
0
Seed model Mutant model
✓
01
00
Test-suite
✓

10
MT
01
00 ✓

10 
Test-suite
8
MUTATION TESTING FOR FA
0
1
0
1
0
1
1
0
Seed model Mutant model
The mutant is killed
✓
01
00
Test-suite
✓

10
✓
01
00 ✓

10 
Test-suite
MT
• Wodel: a DSL for model mutation
generate exhaustive mutants in "out/" from "model/"
metamodel "mm/fa.ecore"
description "Simple Wodel program"
with blocks {
sts "Swap the symbols of two transitions" {
t = select one Transition
where {symbol <> null}
modify one Transition
where {symbol <> t->symbol}
with {swap(symbol, t->symbol)}
}
}
• Wodel tool extension for language independent MT Wodel-Test
9
A SIMPLE WODEL PROGRAM
WODEL-TEST PROCESS
10
Wodel-Test is also useful to
build MT tools for common
programming languages:
Wodel-Test for Java
• Wodel-Test: automates the generation of MT tools for arbitrary languages
• Eases the creation of MT tools for the MDE community
• Implemented 3 MT tools: Wodel-Test for FA/Java/ATL
11
CONCLUSIONS
FUTURE WORK
• We plan to create MT tools for other DSLs
• Reuse of generic mutation operators across similar languages (e.g., Java and C++)
• Support for the definition of functions in the Wodel DSL
12
Thank you!!
Wodel & Wodel-Test project websites:
http://gomezabajo.github.io/Wodel/
http://gomezabajo.github.io/Wodel/Wodel-Test/
Pablo.GomezA@uam.es
@GomezAbajo
WODEL-TEST ARCHITECTURE
13

More Related Content

What's hot

Fu agile#2 unit_testing
Fu agile#2 unit_testingFu agile#2 unit_testing
Fu agile#2 unit_testing
Nguyen Anh
 
Ideate ptototypes and feedback
Ideate ptototypes and feedbackIdeate ptototypes and feedback
Ideate ptototypes and feedback
sundarkkl
 
Automatic Generation of System Test Cases from Use Case Specifications
Automatic Generation of System Test Cases from Use Case SpecificationsAutomatic Generation of System Test Cases from Use Case Specifications
Automatic Generation of System Test Cases from Use Case Specifications
Lionel Briand
 

What's hot (9)

Rv11
Rv11Rv11
Rv11
 
50120140502017
5012014050201750120140502017
50120140502017
 
Fu agile#2 unit_testing
Fu agile#2 unit_testingFu agile#2 unit_testing
Fu agile#2 unit_testing
 
Iml v1.5 open-source version
Iml v1.5   open-source versionIml v1.5   open-source version
Iml v1.5 open-source version
 
Ideate ptototypes and feedback
Ideate ptototypes and feedbackIdeate ptototypes and feedback
Ideate ptototypes and feedback
 
Using task models in model-based testing
Using task models in model-based testingUsing task models in model-based testing
Using task models in model-based testing
 
Model Driven Developing & Model Based Checking: Applying Together
Model Driven Developing & Model Based Checking: Applying TogetherModel Driven Developing & Model Based Checking: Applying Together
Model Driven Developing & Model Based Checking: Applying Together
 
Automatic Test Case Generation
Automatic Test Case GenerationAutomatic Test Case Generation
Automatic Test Case Generation
 
Automatic Generation of System Test Cases from Use Case Specifications
Automatic Generation of System Test Cases from Use Case SpecificationsAutomatic Generation of System Test Cases from Use Case Specifications
Automatic Generation of System Test Cases from Use Case Specifications
 

Similar to Generation of mutation testing tools with Wodel-Test

A mutation testing analysis and regression
A mutation testing analysis and regressionA mutation testing analysis and regression
A mutation testing analysis and regression
ijfcstjournal
 
A MUTATION TESTING ANALYSIS AND REGRESSION TESTING
A MUTATION TESTING ANALYSIS AND REGRESSION TESTINGA MUTATION TESTING ANALYSIS AND REGRESSION TESTING
A MUTATION TESTING ANALYSIS AND REGRESSION TESTING
ijfcstjournal
 
Regression Optimizer
Regression OptimizerRegression Optimizer
Regression Optimizer
Shradha Singh
 
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
mwpeexdvjgtqujwhog
 
Model-based Testing using Microsoft’s Spec Explorer Tool: A Case Study
Model-based Testing using Microsoft’s Spec Explorer Tool: A Case StudyModel-based Testing using Microsoft’s Spec Explorer Tool: A Case Study
Model-based Testing using Microsoft’s Spec Explorer Tool: A Case Study
Dharmalingam Ganesan
 

Similar to Generation of mutation testing tools with Wodel-Test (20)

DYNAMUT: A MUTATION TESTING TOOL FOR INDUSTRY-LEVEL EMBEDDED SYSTEM APPLICATIONS
DYNAMUT: A MUTATION TESTING TOOL FOR INDUSTRY-LEVEL EMBEDDED SYSTEM APPLICATIONSDYNAMUT: A MUTATION TESTING TOOL FOR INDUSTRY-LEVEL EMBEDDED SYSTEM APPLICATIONS
DYNAMUT: A MUTATION TESTING TOOL FOR INDUSTRY-LEVEL EMBEDDED SYSTEM APPLICATIONS
 
MuFinal
MuFinalMuFinal
MuFinal
 
SAIConference_PAPER
SAIConference_PAPERSAIConference_PAPER
SAIConference_PAPER
 
Real Impact Testing Analysis For JVM
Real Impact Testing Analysis For JVMReal Impact Testing Analysis For JVM
Real Impact Testing Analysis For JVM
 
Q44098893
Q44098893Q44098893
Q44098893
 
A mutation testing analysis and regression
A mutation testing analysis and regressionA mutation testing analysis and regression
A mutation testing analysis and regression
 
Pesttt testing
Pesttt testingPesttt testing
Pesttt testing
 
A MUTATION TESTING ANALYSIS AND REGRESSION TESTING
A MUTATION TESTING ANALYSIS AND REGRESSION TESTINGA MUTATION TESTING ANALYSIS AND REGRESSION TESTING
A MUTATION TESTING ANALYSIS AND REGRESSION TESTING
 
Regression Optimizer
Regression OptimizerRegression Optimizer
Regression Optimizer
 
Mutation Testing and MuJava
Mutation Testing and MuJavaMutation Testing and MuJava
Mutation Testing and MuJava
 
Dc35579583
Dc35579583Dc35579583
Dc35579583
 
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
st-notes-13-26-software-testing-is-the-act-of-examining-the-artifacts-and-the...
 
C41041120
C41041120C41041120
C41041120
 
Verification of simulation computer program by ashish gangwar (8445059669)
Verification of simulation computer program by ashish gangwar (8445059669)Verification of simulation computer program by ashish gangwar (8445059669)
Verification of simulation computer program by ashish gangwar (8445059669)
 
QUALITY METRICS OF TEST SUITES IN TESTDRIVEN DESIGNED APPLICATIONS
QUALITY METRICS OF TEST SUITES IN TESTDRIVEN DESIGNED APPLICATIONSQUALITY METRICS OF TEST SUITES IN TESTDRIVEN DESIGNED APPLICATIONS
QUALITY METRICS OF TEST SUITES IN TESTDRIVEN DESIGNED APPLICATIONS
 
Modern Formal Methods in Software Engineering.pptx
Modern Formal Methods in Software Engineering.pptxModern Formal Methods in Software Engineering.pptx
Modern Formal Methods in Software Engineering.pptx
 
Model-based Testing using Microsoft’s Spec Explorer Tool: A Case Study
Model-based Testing using Microsoft’s Spec Explorer Tool: A Case StudyModel-based Testing using Microsoft’s Spec Explorer Tool: A Case Study
Model-based Testing using Microsoft’s Spec Explorer Tool: A Case Study
 
Managing the Machine Learning Lifecycle with MLflow
Managing the Machine Learning Lifecycle with MLflowManaging the Machine Learning Lifecycle with MLflow
Managing the Machine Learning Lifecycle with MLflow
 
Bd36334337
Bd36334337Bd36334337
Bd36334337
 
EXTRACTING THE MINIMIZED TEST SUITE FOR REVISED SIMULINK/STATEFLOW MODEL
EXTRACTING THE MINIMIZED TEST SUITE FOR REVISED SIMULINK/STATEFLOW MODELEXTRACTING THE MINIMIZED TEST SUITE FOR REVISED SIMULINK/STATEFLOW MODEL
EXTRACTING THE MINIMIZED TEST SUITE FOR REVISED SIMULINK/STATEFLOW MODEL
 

More from Pablo Gómez Abajo

Automated engineering of domain-specific metamorphic testing environments
Automated engineering of domain-specific metamorphic testing environmentsAutomated engineering of domain-specific metamorphic testing environments
Automated engineering of domain-specific metamorphic testing environments
Pablo Gómez Abajo
 
Wodel-Test: A Model-Based Framework for Language-Independent Mutation Testing...
Wodel-Test: A Model-Based Framework for Language-Independent Mutation Testing...Wodel-Test: A Model-Based Framework for Language-Independent Mutation Testing...
Wodel-Test: A Model-Based Framework for Language-Independent Mutation Testing...
Pablo Gómez Abajo
 

More from Pablo Gómez Abajo (8)

Wodel-Edu: A tool for the generation and evaluation of diagram-based exercises
Wodel-Edu: A tool for the generation and evaluation of diagram-based exercisesWodel-Edu: A tool for the generation and evaluation of diagram-based exercises
Wodel-Edu: A tool for the generation and evaluation of diagram-based exercises
 
Automated engineering of domain-specific metamorphic testing environments
Automated engineering of domain-specific metamorphic testing environmentsAutomated engineering of domain-specific metamorphic testing environments
Automated engineering of domain-specific metamorphic testing environments
 
Wodel-Test: A Model-Based Framework for Language-Independent Mutation Testing...
Wodel-Test: A Model-Based Framework for Language-Independent Mutation Testing...Wodel-Test: A Model-Based Framework for Language-Independent Mutation Testing...
Wodel-Test: A Model-Based Framework for Language-Independent Mutation Testing...
 
Wodel-Edu: An MDE Solution for the Generation and Evaluation of Diagram-based...
Wodel-Edu: An MDE Solution for the Generation and Evaluation of Diagram-based...Wodel-Edu: An MDE Solution for the Generation and Evaluation of Diagram-based...
Wodel-Edu: An MDE Solution for the Generation and Evaluation of Diagram-based...
 
Programación de macros en Microsoft Excel VBA
Programación de macros en Microsoft Excel VBAProgramación de macros en Microsoft Excel VBA
Programación de macros en Microsoft Excel VBA
 
PhD defense presentation
PhD defense presentationPhD defense presentation
PhD defense presentation
 
Wodel: A DSL for Model Mutation; and Wodel-Edu: its Application to the Automa...
Wodel: A DSL for Model Mutation; and Wodel-Edu: its Application to the Automa...Wodel: A DSL for Model Mutation; and Wodel-Edu: its Application to the Automa...
Wodel: A DSL for Model Mutation; and Wodel-Edu: its Application to the Automa...
 
Un framework para la generación automática de ejercicios mediante técnicas de...
Un framework para la generación automática de ejercicios mediante técnicas de...Un framework para la generación automática de ejercicios mediante técnicas de...
Un framework para la generación automática de ejercicios mediante técnicas de...
 

Recently uploaded

biology HL practice questions IB BIOLOGY
biology HL practice questions IB BIOLOGYbiology HL practice questions IB BIOLOGY
biology HL practice questions IB BIOLOGY
1301aanya
 
Bacterial Identification and Classifications
Bacterial Identification and ClassificationsBacterial Identification and Classifications
Bacterial Identification and Classifications
Areesha Ahmad
 
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptxSCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
RizalinePalanog2
 

Recently uploaded (20)

pumpkin fruit fly, water melon fruit fly, cucumber fruit fly
pumpkin fruit fly, water melon fruit fly, cucumber fruit flypumpkin fruit fly, water melon fruit fly, cucumber fruit fly
pumpkin fruit fly, water melon fruit fly, cucumber fruit fly
 
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICESAMASTIPUR CALL GIRL 7857803690  LOW PRICE  ESCORT SERVICE
SAMASTIPUR CALL GIRL 7857803690 LOW PRICE ESCORT SERVICE
 
Proteomics: types, protein profiling steps etc.
Proteomics: types, protein profiling steps etc.Proteomics: types, protein profiling steps etc.
Proteomics: types, protein profiling steps etc.
 
PSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptxPSYCHOSOCIAL NEEDS. in nursing II sem pptx
PSYCHOSOCIAL NEEDS. in nursing II sem pptx
 
GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)
 
High Class Escorts in Hyderabad ₹7.5k Pick Up & Drop With Cash Payment 969456...
High Class Escorts in Hyderabad ₹7.5k Pick Up & Drop With Cash Payment 969456...High Class Escorts in Hyderabad ₹7.5k Pick Up & Drop With Cash Payment 969456...
High Class Escorts in Hyderabad ₹7.5k Pick Up & Drop With Cash Payment 969456...
 
Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...
Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...
Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...
 
biology HL practice questions IB BIOLOGY
biology HL practice questions IB BIOLOGYbiology HL practice questions IB BIOLOGY
biology HL practice questions IB BIOLOGY
 
Bacterial Identification and Classifications
Bacterial Identification and ClassificationsBacterial Identification and Classifications
Bacterial Identification and Classifications
 
Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...
Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...
Locating and isolating a gene, FISH, GISH, Chromosome walking and jumping, te...
 
module for grade 9 for distance learning
module for grade 9 for distance learningmodule for grade 9 for distance learning
module for grade 9 for distance learning
 
Site Acceptance Test .
Site Acceptance Test                    .Site Acceptance Test                    .
Site Acceptance Test .
 
Dopamine neurotransmitter determination using graphite sheet- graphene nano-s...
Dopamine neurotransmitter determination using graphite sheet- graphene nano-s...Dopamine neurotransmitter determination using graphite sheet- graphene nano-s...
Dopamine neurotransmitter determination using graphite sheet- graphene nano-s...
 
COMPUTING ANTI-DERIVATIVES (Integration by SUBSTITUTION)
COMPUTING ANTI-DERIVATIVES(Integration by SUBSTITUTION)COMPUTING ANTI-DERIVATIVES(Integration by SUBSTITUTION)
COMPUTING ANTI-DERIVATIVES (Integration by SUBSTITUTION)
 
Zoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdfZoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdf
 
9999266834 Call Girls In Noida Sector 22 (Delhi) Call Girl Service
9999266834 Call Girls In Noida Sector 22 (Delhi) Call Girl Service9999266834 Call Girls In Noida Sector 22 (Delhi) Call Girl Service
9999266834 Call Girls In Noida Sector 22 (Delhi) Call Girl Service
 
Clean In Place(CIP).pptx .
Clean In Place(CIP).pptx                 .Clean In Place(CIP).pptx                 .
Clean In Place(CIP).pptx .
 
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptxSCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
SCIENCE-4-QUARTER4-WEEK-4-PPT-1 (1).pptx
 
COST ESTIMATION FOR A RESEARCH PROJECT.pptx
COST ESTIMATION FOR A RESEARCH PROJECT.pptxCOST ESTIMATION FOR A RESEARCH PROJECT.pptx
COST ESTIMATION FOR A RESEARCH PROJECT.pptx
 
Unit5-Cloud.pptx for lpu course cse121 o
Unit5-Cloud.pptx for lpu course cse121 oUnit5-Cloud.pptx for lpu course cse121 o
Unit5-Cloud.pptx for lpu course cse121 o
 

Generation of mutation testing tools with Wodel-Test

  • 1. GENERATION OF MUTATION TESTING TOOLS WITH WODEL-TEST P. Gómez-Abajo , E. Guerra, J. de Lara Modelling&Software Engineering Research Group http://miso.es Universidad Autónoma de Madrid (Spain) The MFoC Workshop 2019 November 26th, IMDEA, Madrid Mercedes G. Merayo Design and Testing of Reliable Systems Research Group http://antares.sip.ucm.es/testing Universidad Complutense de Madrid (Spain)
  • 2. WHAT IS MUTATION TESTING? • Approach of software testing to assess the quality of test suites • Injection of syntax changes in a program by using mutation operators • The mutations introduced simulate common programming faults • Facilitates to improve the quality of the test-suites and the mutation operators set 2
  • 3. 3 MUTATION TESTING FOR FA 0 1 1 0 Seed model 01 00 Test-suite ✓ 
  • 4. 4 MUTATION TESTING FOR FA 0 1 0 1 0 1 1 0 Seed model Mutant model 01 00 Test-suite ✓  MT 01 00 ✓  Test-suite
  • 5. 5 MUTATION TESTING FOR FA 0 1 0 1 0 1 1 0 Seed model Mutant model 01 00 Test-suite ✓  The mutant is alive  MT 01 00 ✓  Test-suite
  • 6. 6 MUTATION TESTING FOR FA 0 1 1 0 Seed model ✓ 01 00 Test-suite ✓  10
  • 7. 7 MUTATION TESTING FOR FA 0 1 0 1 0 1 1 0 Seed model Mutant model ✓ 01 00 Test-suite ✓  10 MT 01 00 ✓  10  Test-suite
  • 8. 8 MUTATION TESTING FOR FA 0 1 0 1 0 1 1 0 Seed model Mutant model The mutant is killed ✓ 01 00 Test-suite ✓  10 ✓ 01 00 ✓  10  Test-suite MT
  • 9. • Wodel: a DSL for model mutation generate exhaustive mutants in "out/" from "model/" metamodel "mm/fa.ecore" description "Simple Wodel program" with blocks { sts "Swap the symbols of two transitions" { t = select one Transition where {symbol <> null} modify one Transition where {symbol <> t->symbol} with {swap(symbol, t->symbol)} } } • Wodel tool extension for language independent MT Wodel-Test 9 A SIMPLE WODEL PROGRAM
  • 10. WODEL-TEST PROCESS 10 Wodel-Test is also useful to build MT tools for common programming languages: Wodel-Test for Java
  • 11. • Wodel-Test: automates the generation of MT tools for arbitrary languages • Eases the creation of MT tools for the MDE community • Implemented 3 MT tools: Wodel-Test for FA/Java/ATL 11 CONCLUSIONS FUTURE WORK • We plan to create MT tools for other DSLs • Reuse of generic mutation operators across similar languages (e.g., Java and C++) • Support for the definition of functions in the Wodel DSL
  • 12. 12 Thank you!! Wodel & Wodel-Test project websites: http://gomezabajo.github.io/Wodel/ http://gomezabajo.github.io/Wodel/Wodel-Test/ Pablo.GomezA@uam.es @GomezAbajo