SlideShare a Scribd company logo
1 of 108
Download to read offline
Qi Luo,
Kevin Moran,
Massimiliano Di Penta,
Denys Poshyvanyk
AssessingTest Case Prioritization
on Real Faults and Mutants
34th International Conference on Software
Maintenance and Evolution (ICSME’18)
Thursday, September 27th, 2018
Continuous	
Testing
Continuous	
Testing
REGRESSION TESTING
v1.0 v1.2 v2.0 vN
…
REGRESSION TESTING
v1.0 v1.2 v2.0 vN
…
t1
t2
t3
t4
REGRESSION TESTING
v1.0 v1.2 v2.0 vN
…
t1
t2
t3
t4
REGRESSION TESTING
v1.0 v1.2 v2.0 vN
…
t1
t2
t3
t4
REGRESSION TESTING
v1.0 v1.2 v2.0 vN
…
t1
t2
t3
t4
REGRESSION TESTING
v1.0 v1.2 v2.0 vN
…
t1
t2
t3
t4
TEST CASE PRIORITIZATION (TCP)
v1.2
t1
t2
t3
t4
TEST CASE PRIORITIZATION (TCP)
v1.2
t1
t2
t3
t4
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
TEST CASE PRIORITIZATION (TCP)
v1.2
t1
t2
t3
t4
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1
TEST CASE PRIORITIZATION (TCP)
v1.2
t1
t2
t3
t4
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2
TEST CASE PRIORITIZATION (TCP)
v1.2
t1
t2
t3
t4
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2 3) t3
TEST CASE PRIORITIZATION (TCP)
v1.2
t1
t2
t3
t4
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2 3) t3 4) t4
TEST CASE PRIORITIZATION (TCP)
v1.2
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2 3) t3 4) t4
TEST CASE PRIORITIZATION (TCP)
v1.2
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2 3) t3 4) t4
t3
t1
t2
t4
TEST CASE PRIORITIZATION (TCP)
v1.2
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2 3) t3 4) t4
1) t3
t3
t1
t2
t4
TEST CASE PRIORITIZATION (TCP)
v1.2
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2 3) t3 4) t4
1) t3 2) t1
t3
t1
t2
t4
TEST CASE PRIORITIZATION (TCP)
v1.2
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2 3) t3 4) t4
1) t3 2) t1 3) t2
t3
t1
t2
t4
TEST CASE PRIORITIZATION (TCP)
v1.2
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2 3) t3 4) t4
1) t3 2) t1 3) t2 4) t4
t3
t1
t2
t4
TEST CASE PRIORITIZATION (TCP)
v1.2
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2 3) t3 4) t4
1) t3 2) t1 3) t2 4) t4
t3
t1
t2
t4
APFD: Average Percentage
of Faults Detected
APFD = 54%
TEST CASE PRIORITIZATION (TCP)
v1.2
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2 3) t3 4) t4
1) t3 2) t1 3) t2 4) t4
t3
t1
t2
t4
APFD: Average Percentage
of Faults Detected
APFD = 54%
TEST CASE PRIORITIZATION (TCP)
v1.2
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2 3) t3 4) t4
1) t3 2) t1 3) t2 4) t4
t3
t1
t2
t4
APFD: Average Percentage
of Faults Detected
APFD = 54%
APFD = 96%
TEST CASE PRIORITIZATION (TCP)
v1.2
0
1
2
3
4
0 1 2 3 4
# Faults
Found
#Tests Executed
Test Ordering
1) t1 2) t2 3) t3 4) t4
1) t3 2) t1 3) t2 4) t4
t3
t1
t2
t4
APFD: Average Percentage
of Faults Detected
APFD = 54%
APFD = 96%
The Red ordering of test cases
outperforms the Blue ordering in terms
of APFD
The main goal of TCP is to prioritize test
cases so as to maximize APFD
ASSESSING TCP EFFECTIVENESS (IDEAL)
v1.0 v1.2 v2.0 vN
…
ASSESSING TCP EFFECTIVENESS (IDEAL)
v1.0 v1.2 v2.0 vN
…
ASSESSING TCP EFFECTIVENESS (IDEAL)
ASSESSING TCP EFFECTIVENESS (IDEAL)
ASSESSING TCP EFFECTIVENESS (IDEAL)
t1
t2
t3
t4
ASSESSING TCP EFFECTIVENESS (IDEAL)
t1
t2
t3
t4
TCP
Technique
ASSESSING TCP EFFECTIVENESS (IDEAL)
t1
t2
t3
t4
TCP
Technique
t1
t2
t3
t4
Prioritized
Tests
ASSESSING TCP EFFECTIVENESS (IDEAL)
t1
t2
t3
t4
TCP
Technique
t1
t2
t3
t4
Prioritized
Tests
ASSESSING TCP EFFECTIVENESS (IDEAL)
t1
t2
t3
t4
TCP
Technique
t1
t2
t3
t4
Prioritized
Tests
Measured
APFD Values
ASSESSING TCP EFFECTIVENESS (ACTUAL)
t1
t2
t3
t4
Mutation
Framework
v N
ASSESSING TCP EFFECTIVENESS (ACTUAL)
t1
t2
t3
t4
Mutation
Framework
v N
ASSESSING TCP EFFECTIVENESS (ACTUAL)
t1
t2
t3
t4
v N
ASSESSING TCP EFFECTIVENESS (ACTUAL)
t1
t2
t3
t4
TCP
Technique
v N
ASSESSING TCP EFFECTIVENESS (ACTUAL)
t1
t2
t3
t4
TCP
Technique
t1
t2
t3
t4
Prioritized
Tests
v N
ASSESSING TCP EFFECTIVENESS (ACTUAL)
t1
t2
t3
t4
TCP
Technique
t1
t2
t3
t4
Prioritized
Tests
v N
ASSESSING TCP EFFECTIVENESS (ACTUAL)
t1
t2
t3
t4
TCP
Technique
t1
t2
t3
t4
Prioritized
Tests
Measured
APFD Values v N
How well do TCP Techniques perform on real faults?
How well do TCP Techniques perform on real faults?
Is the performance of TCP techniques on mutants
representative of their performance on real faults?
How well do TCP Techniques perform on real faults?
What properties of mutants impact the
representativeness of this performance?
Is the performance of TCP techniques on mutants
representative of their performance on real faults?
RESEARCH QUESTIONS
RESEARCH QUESTIONS
• RQ1: TCP performance real faults?
RESEARCH QUESTIONS
• RQ1: TCP performance real faults?
• RQ2: Representativeness of mutants for TCP?
RESEARCH QUESTIONS
• RQ1: TCP performance real faults?
• RQ2: Representativeness of mutants for TCP?
• RQ3: How do fault properties impact TCP performance?
EMPIRICAL STUDY CONTEXT
Project Name Number of Real Faults
JFreeChart 26
Closure compiler 133
Apache commons-lang 65
Apache commons-math 106
Joda-Time 27
Total 357
Defects4J
EMPIRICAL STUDY CONTEXT
v1.0 v2.0 vN
…
EMPIRICAL STUDY CONTEXT
EMPIRICAL STUDY CONTEXT
EMPIRICAL STUDY CONTEXT
EMPIRICAL STUDY CONTEXT
Pit
Mutation
Framework
vN
EMPIRICAL STUDY CONTEXT
Pit
Mutation
Framework
vN
Repeat this process
100 times
Every mutant can be detected
by at least one test case
EMPIRICAL STUDY CONTEXT
Project Name Number of Real Faults Mutants
JFreeChart 26 2,600
Closure 133 13,300
Commons-lang 65 6,500
Commons-math 106 10,600
Joda-Time 27 2,700
Total 357 35,700
Defects4J
EMPIRICAL STUDY CONTEXT
EMPIRICAL STUDY CONTEXT
EMPIRICAL STUDY CONTEXT
EMPIRICAL STUDY CONTEXT
Created a second set of
mutants with subsumed
mutants removed
EMPIRICAL STUDY CONTEXT
Project Name Number of Bugs Mutants Subsuming Mutants
JFreeChart 26 2,600 1,796
Closure 133 13,300 9,731
Commons-lang 65 6,500 2,129
Commons-math 106 10,600 5,016
Joda-Time 27 2,700 2,700
Total 357 35,700 21,372
Defects4J
EMPIRICAL STUDY CONTEXT
Type Tag Description
Static
CG-Total Call graph-based (total strategy)
CG-Add Call graph-based (additional strategy)
Str String distance-based
Topic Topic model-based
Dynamic
Total Greedy Total (statement level)
Add Greedy Additional (statement level)
Art Adaptive Random (statement level)
Search Search-based (statement level)
Studied TCP Techniques
METHODOLOGY RQ1
METHODOLOGY RQ1
Run Tests at Test
Method Level
METHODOLOGY RQ1
Run Tests at Test
Method Level
APFD = Rate of
Fault Detection
METHODOLOGY RQ1
Run Tests at Test
Method Level
APFD = Rate of
Fault Detection
APFDc = Fault
Detection Rate
& Efficiency
METHODOLOGY RQ1
Run Tests at Test
Method Level
ANOVA & Tukey
HSD Tests
APFD = Rate of
Fault Detection
APFDc = Fault
Detection Rate
& Efficiency
METHODOLOGY RQ2
METHODOLOGY RQ2
Examine
Absolute
Performance
METHODOLOGY RQ2
Examine
Absolute
Performance
Examine
Relative
Performance
METHODOLOGY RQ2
Examine
Absolute
Performance
Kendall
Rank
Correlation
Analysis
Examine
Relative
Performance
METHODOLOGY RQ3
METHODOLOGY RQ3
Examine Mutants
based on Real
Fault Coupling
METHODOLOGY RQ3
Examine Mutants
based on Real
Fault Coupling
Examine
Mutants based
on Operator
METHODOLOGY RQ3
Kendall
Rank
Correlation
Analysis
Examine Mutants
based on Real
Fault Coupling
Examine
Mutants based
on Operator
RQ1 RESULTS: REAL FAULT PERFORMANCE
TCP Technique APFD
Static
Topic 0.700
Str 0.696
CG-Add 0.597
CG-Total 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
TCP Technique APFDc
Static
Topic 0.635
Str 0.594
CG-Add 0.591
CG-Total 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
RQ1 RESULTS: REAL FAULT PERFORMANCE
TCP Technique APFD
Static
Topic 0.700
Str 0.696
CG-Add 0.597
CG-Total 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
TCP Technique APFDc
Static
Topic 0.635
Str 0.594
CG-Add 0.591
CG-Total 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
RQ1 RESULTS: REAL FAULT PERFORMANCE
TCP Technique APFD
Static
Topic 0.700
Str 0.696
CG-Add 0.597
CG-Total 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
TCP Technique APFDc
Static
Topic 0.635
Str 0.594
CG-Add 0.591
CG-Total 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
RQ1 RESULTS: REAL FAULT PERFORMANCE
TCP Technique APFD
Static
Topic 0.700
Str 0.696
CG-Add 0.597
CG-Total 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
TCP Technique APFDc
Static
Topic 0.635
Str 0.594
CG-Add 0.591
CG-Total 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
Summary
• All Techniques perform better
according to APFD
RQ1 RESULTS: REAL FAULT PERFORMANCE
TCP Technique APFD
Static
Topic 0.700
Str 0.696
CG-Add 0.597
CG-Total 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
TCP Technique APFDc
Static
Topic 0.635
Str 0.594
CG-Add 0.591
CG-Total 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
Summary
• All Techniques perform better
according to APFD
• Static TCP Techniques tend to
perform better overall
RQ1 RESULTS: REAL FAULT PERFORMANCE
TCP Technique APFD
Static
Topic 0.700
Str 0.696
CG-Add 0.597
CG-Total 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
TCP Technique APFDc
Static
Topic 0.635
Str 0.594
CG-Add 0.591
CG-Total 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
Summary
• All Techniques perform better
according to APFD
• Static TCP Techniques tend to
perform better overall
• Total outperforms Add for APFD
RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
Tech APFD
Static
Topic 0.700
Str 0.696
CG-A 0.597
CG-T 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
Tech APFDc
Static
Topic 0.635
Str 0.594
CG-A 0.591
CG-T 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
Tech APFD
Static
Str 0.834
Topic 0.832
CG-A 0.818
CG-T 0.743
Dynamic
Add 0.897
Art 0.800
Search 0.784
Total 0.757
Tech APFDc
Static
CG-A 0.835
Topic 0.802
Str 0.788
CG-T 0.598
Dynamic
Art 0.841
Add 0.829
Search 0.725
Total 0.549
Real Faults All Mutants
RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
Tech APFD
Static
Topic 0.700
Str 0.696
CG-A 0.597
CG-T 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
Tech APFDc
Static
Topic 0.635
Str 0.594
CG-A 0.591
CG-T 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
Tech APFD
Static
Str 0.834
Topic 0.832
CG-A 0.818
CG-T 0.743
Dynamic
Add 0.897
Art 0.800
Search 0.784
Total 0.757
Tech APFDc
Static
CG-A 0.835
Topic 0.802
Str 0.788
CG-T 0.598
Dynamic
Art 0.841
Add 0.829
Search 0.725
Total 0.549
Real Faults All Mutants
RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
Tech APFD
Static
Topic 0.700
Str 0.696
CG-A 0.597
CG-T 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
Tech APFDc
Static
Topic 0.635
Str 0.594
CG-A 0.591
CG-T 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
Tech APFD
Static
Str 0.834
Topic 0.832
CG-A 0.818
CG-T 0.743
Dynamic
Add 0.897
Art 0.800
Search 0.784
Total 0.757
Tech APFDc
Static
CG-A 0.835
Topic 0.802
Str 0.788
CG-T 0.598
Dynamic
Art 0.841
Add 0.829
Search 0.725
Total 0.549
Real Faults All Mutants
Tech APFD
Static
Topic 0.700
Str 0.696
CG-A 0.597
CG-T 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
Tech APFDc
Static
Topic 0.635
Str 0.594
CG-A 0.591
CG-T 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
Tech APFD
Static
Str 0.620
Topic 0.612
CG-A 0.612
CG-T 0.561
Dynamic
Add 0.664
Art 0.622
Search 0.578
Total 0.534
Tech APFDc
Static
CG-A 0.639
Str 0.572
Topic 0.570
CG-T 0.407
Dynamic
Art 0.671
Add 0.565
Search 0.508
Total 0.305
Real Faults Subsuming Mutants
RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
Tech APFD
Static
Topic 0.700
Str 0.696
CG-A 0.597
CG-T 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
Tech APFDc
Static
Topic 0.635
Str 0.594
CG-A 0.591
CG-T 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
Tech APFD
Static
Str 0.620
Topic 0.612
CG-A 0.612
CG-T 0.561
Dynamic
Add 0.664
Art 0.622
Search 0.578
Total 0.534
Tech APFDc
Static
CG-A 0.639
Str 0.572
Topic 0.570
CG-T 0.407
Dynamic
Art 0.671
Add 0.565
Search 0.508
Total 0.305
Real Faults Subsuming Mutants
RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
Tech APFD
Static
Topic 0.700
Str 0.696
CG-A 0.597
CG-T 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
Tech APFDc
Static
Topic 0.635
Str 0.594
CG-A 0.591
CG-T 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
Tech APFD
Static
Str 0.620
Topic 0.612
CG-A 0.612
CG-T 0.561
Dynamic
Add 0.664
Art 0.622
Search 0.578
Total 0.534
Tech APFDc
Static
CG-A 0.639
Str 0.572
Topic 0.570
CG-T 0.407
Dynamic
Art 0.671
Add 0.565
Search 0.508
Total 0.305
Real Faults Subsuming Mutants
RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
Tech APFD
Static
Topic 0.700
Str 0.696
CG-A 0.597
CG-T 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
Tech APFDc
Static
Topic 0.635
Str 0.594
CG-A 0.591
CG-T 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
Tech APFD
Static
Str 0.620
Topic 0.612
CG-A 0.612
CG-T 0.561
Dynamic
Add 0.664
Art 0.622
Search 0.578
Total 0.534
Tech APFDc
Static
CG-A 0.639
Str 0.572
Topic 0.570
CG-T 0.407
Dynamic
Art 0.671
Add 0.565
Search 0.508
Total 0.305
Real Faults Subsuming MutantsSummary
•Metrics according to the full mutant set
tend to overestimate performance
RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
Tech APFD
Static
Topic 0.700
Str 0.696
CG-A 0.597
CG-T 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
Tech APFDc
Static
Topic 0.635
Str 0.594
CG-A 0.591
CG-T 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
Tech APFD
Static
Str 0.620
Topic 0.612
CG-A 0.612
CG-T 0.561
Dynamic
Add 0.664
Art 0.622
Search 0.578
Total 0.534
Tech APFDc
Static
CG-A 0.639
Str 0.572
Topic 0.570
CG-T 0.407
Dynamic
Art 0.671
Add 0.565
Search 0.508
Total 0.305
Real Faults Subsuming MutantsSummary
•Metrics according to the full mutant set
tend to overestimate performance
•APFDc values on mutants correlated more
strongly to APFDc values on Real Faults
RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
Tech APFD
Static
Topic 0.700
Str 0.696
CG-A 0.597
CG-T 0.594
Dynamic
Art 0.657
Total 0.610
Search 0.600
Add 0.583
Tech APFDc
Static
Topic 0.635
Str 0.594
CG-A 0.591
CG-T 0.480
Dynamic
Art 0.677
Search 0.556
Add 0.454
Total 0.419
Tech APFD
Static
Str 0.620
Topic 0.612
CG-A 0.612
CG-T 0.561
Dynamic
Add 0.664
Art 0.622
Search 0.578
Total 0.534
Tech APFDc
Static
CG-A 0.639
Str 0.572
Topic 0.570
CG-T 0.407
Dynamic
Art 0.671
Add 0.565
Search 0.508
Total 0.305
Real Faults Subsuming MutantsSummary
•Metrics according to the full mutant set
tend to overestimate performance
•APFDc values on mutants correlated more
strongly to APFDc values on Real Faults
•The relative ordering of techniques
between mutants and real faults differs
RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
RQ3 RESULTS: EXAMINING FAULT PROPERTIES
RQ3 RESULTS: EXAMINING FAULT PROPERTIES
• High performance correlation for real faults that were
highly coupled to mutation operators
RQ3 RESULTS: EXAMINING FAULT PROPERTIES
• High performance correlation for real faults that were
highly coupled to mutation operators
• TCP techniques perform differently across mutants
seeded by different operators
RQ3 RESULTS: EXAMINING FAULT PROPERTIES
• High performance correlation for real faults that were
highly coupled to mutation operators
• TCP techniques perform differently across mutants
seeded by different operators
• TCP performance for mutants seeded by different
operators varies widely across subject programs
LEARNED LESSONS
LEARNED LESSONS
Relative TCP
performance can
differ between
mutants and real faults
Lesson 1
LEARNED LESSONS
Relative TCP
performance can
differ between
mutants and real faults
Lesson 1
The metrics utilized
in TCP evaluations
impact mutant
representativeness
Lesson 2
LEARNED LESSONS
Relative TCP
performance can
differ between
mutants and real faults
Lesson 1
The metrics utilized
in TCP evaluations
impact mutant
representativeness
Lesson 2
Mutation Operators must be
carefully selected in order
for mutation-based TCP
performance to represent
performance on real faults
Lesson 3
Any Questions?
Thank you!
Kevin Moran
Post-Doctoral Fellow
College of William & Mary
@kevpmo
kpmoran@cs.wm.edu
https://www.kpmoran.com
ADDITIONAL SLIDES
SEEDING MUTANTS INTO THE LATEST VERSION

More Related Content

What's hot

Concurrency and Python - PyCon MY 2015
Concurrency and Python - PyCon MY 2015Concurrency and Python - PyCon MY 2015
Concurrency and Python - PyCon MY 2015Boey Pak Cheong
 
Critical Factors for Successful Real-Time PCR: Multiplex PCR
Critical Factors for Successful Real-Time PCR: Multiplex PCRCritical Factors for Successful Real-Time PCR: Multiplex PCR
Critical Factors for Successful Real-Time PCR: Multiplex PCRQIAGEN
 
Epi tect chi pqpcr_2013
Epi tect chi pqpcr_2013Epi tect chi pqpcr_2013
Epi tect chi pqpcr_2013Elsa von Licy
 
QIAGEN LNA Tools - Experience truly exceptional RNA Research
QIAGEN LNA Tools - Experience truly exceptional RNA ResearchQIAGEN LNA Tools - Experience truly exceptional RNA Research
QIAGEN LNA Tools - Experience truly exceptional RNA ResearchQIAGEN
 
Overview of covid 19 testing by rt-pcr
Overview of covid 19 testing by rt-pcrOverview of covid 19 testing by rt-pcr
Overview of covid 19 testing by rt-pcrRipuDas
 
EclipseOMRBuildingBlocks4Polyglot_TURBO18
EclipseOMRBuildingBlocks4Polyglot_TURBO18EclipseOMRBuildingBlocks4Polyglot_TURBO18
EclipseOMRBuildingBlocks4Polyglot_TURBO18Xiaoli Liang
 

What's hot (11)

Concurrency and Python - PyCon MY 2015
Concurrency and Python - PyCon MY 2015Concurrency and Python - PyCon MY 2015
Concurrency and Python - PyCon MY 2015
 
Critical Factors for Successful Real-Time PCR: Multiplex PCR
Critical Factors for Successful Real-Time PCR: Multiplex PCRCritical Factors for Successful Real-Time PCR: Multiplex PCR
Critical Factors for Successful Real-Time PCR: Multiplex PCR
 
Epi tect chi pqpcr_2013
Epi tect chi pqpcr_2013Epi tect chi pqpcr_2013
Epi tect chi pqpcr_2013
 
Pcr brochure
Pcr brochurePcr brochure
Pcr brochure
 
Analysis of a Modified RC4
Analysis of a Modified RC4 Analysis of a Modified RC4
Analysis of a Modified RC4
 
20140710 4 a_bergstrom_lucas_ercc2.0_workshop
20140710 4 a_bergstrom_lucas_ercc2.0_workshop20140710 4 a_bergstrom_lucas_ercc2.0_workshop
20140710 4 a_bergstrom_lucas_ercc2.0_workshop
 
QIAGEN LNA Tools - Experience truly exceptional RNA Research
QIAGEN LNA Tools - Experience truly exceptional RNA ResearchQIAGEN LNA Tools - Experience truly exceptional RNA Research
QIAGEN LNA Tools - Experience truly exceptional RNA Research
 
Overview of covid 19 testing by rt-pcr
Overview of covid 19 testing by rt-pcrOverview of covid 19 testing by rt-pcr
Overview of covid 19 testing by rt-pcr
 
EclipseOMRBuildingBlocks4Polyglot_TURBO18
EclipseOMRBuildingBlocks4Polyglot_TURBO18EclipseOMRBuildingBlocks4Polyglot_TURBO18
EclipseOMRBuildingBlocks4Polyglot_TURBO18
 
Qpcr
QpcrQpcr
Qpcr
 
Cgc2
Cgc2Cgc2
Cgc2
 

Similar to Assessing Test Case Prioritization on Real Faults and Mutants

A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...Kevin Moran
 
Black-box Behavioral Model Inference for Autopilot Software Systems
Black-box Behavioral Model Inference for Autopilot Software SystemsBlack-box Behavioral Model Inference for Autopilot Software Systems
Black-box Behavioral Model Inference for Autopilot Software SystemsMohammad Jafar Mashhadi
 
Rouault imbert alpc_rpc_pacsec
Rouault imbert alpc_rpc_pacsecRouault imbert alpc_rpc_pacsec
Rouault imbert alpc_rpc_pacsecPacSecJP
 
FVCAG: A framework for formal verification driven power modelling and verific...
FVCAG: A framework for formal verification driven power modelling and verific...FVCAG: A framework for formal verification driven power modelling and verific...
FVCAG: A framework for formal verification driven power modelling and verific...Arun Joseph
 
Correctness attraction __kth_2017
Correctness attraction __kth_2017Correctness attraction __kth_2017
Correctness attraction __kth_2017Benjamin Danglot
 
Magic behind the numbers - software metrics in practice
Magic behind the numbers - software metrics in practiceMagic behind the numbers - software metrics in practice
Magic behind the numbers - software metrics in practiceSebastian Marek
 
Other FacilityICCP MasterHistorianDatabaseSCADA.docx
Other FacilityICCP MasterHistorianDatabaseSCADA.docxOther FacilityICCP MasterHistorianDatabaseSCADA.docx
Other FacilityICCP MasterHistorianDatabaseSCADA.docxgerardkortney
 
Mi rna data analysis 2013
Mi rna data analysis 2013Mi rna data analysis 2013
Mi rna data analysis 2013Elsa von Licy
 
Deep Parameters Tuning for Android Mobile Apps
Deep Parameters Tuning for Android Mobile AppsDeep Parameters Tuning for Android Mobile Apps
Deep Parameters Tuning for Android Mobile AppsDavide De Chiara
 
Nanometer Testing: Challenges and Solutions
Nanometer Testing: Challenges and SolutionsNanometer Testing: Challenges and Solutions
Nanometer Testing: Challenges and SolutionsDVClub
 
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
 
ISLPED 2015 FreqLeak (Presentation Charts)
ISLPED 2015 FreqLeak (Presentation Charts)ISLPED 2015 FreqLeak (Presentation Charts)
ISLPED 2015 FreqLeak (Presentation Charts)Anand Haridass
 
Model-driven trace diagnostics for pattern-based temporal specifications
Model-driven trace diagnostics for pattern-based temporal specificationsModel-driven trace diagnostics for pattern-based temporal specifications
Model-driven trace diagnostics for pattern-based temporal specificationsLionel Briand
 
Hybrid Deep Neural Networks to Infer State Models of Black-Box Systems​
Hybrid Deep Neural Networks to Infer State Models of Black-Box Systems​Hybrid Deep Neural Networks to Infer State Models of Black-Box Systems​
Hybrid Deep Neural Networks to Infer State Models of Black-Box Systems​Mohammad Jafar Mashhadi
 
20080501 software verification_sharygina_lecture01
20080501 software verification_sharygina_lecture0120080501 software verification_sharygina_lecture01
20080501 software verification_sharygina_lecture01Computer Science Club
 
Q pcr introduction 2013
Q pcr introduction 2013Q pcr introduction 2013
Q pcr introduction 2013Elsa von Licy
 
Timing verification of real-time automotive Ethernet networks: what can we ex...
Timing verification of real-time automotive Ethernet networks: what can we ex...Timing verification of real-time automotive Ethernet networks: what can we ex...
Timing verification of real-time automotive Ethernet networks: what can we ex...RealTime-at-Work (RTaW)
 

Similar to Assessing Test Case Prioritization on Real Faults and Mutants (20)

A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
A Large-Scale Empirical Comparison of Static and DynamicTest Case Prioritizat...
 
Black-box Behavioral Model Inference for Autopilot Software Systems
Black-box Behavioral Model Inference for Autopilot Software SystemsBlack-box Behavioral Model Inference for Autopilot Software Systems
Black-box Behavioral Model Inference for Autopilot Software Systems
 
Rouault imbert alpc_rpc_pacsec
Rouault imbert alpc_rpc_pacsecRouault imbert alpc_rpc_pacsec
Rouault imbert alpc_rpc_pacsec
 
FVCAG: A framework for formal verification driven power modelling and verific...
FVCAG: A framework for formal verification driven power modelling and verific...FVCAG: A framework for formal verification driven power modelling and verific...
FVCAG: A framework for formal verification driven power modelling and verific...
 
Correctness attraction __kth_2017
Correctness attraction __kth_2017Correctness attraction __kth_2017
Correctness attraction __kth_2017
 
Magic behind the numbers - software metrics in practice
Magic behind the numbers - software metrics in practiceMagic behind the numbers - software metrics in practice
Magic behind the numbers - software metrics in practice
 
Other FacilityICCP MasterHistorianDatabaseSCADA.docx
Other FacilityICCP MasterHistorianDatabaseSCADA.docxOther FacilityICCP MasterHistorianDatabaseSCADA.docx
Other FacilityICCP MasterHistorianDatabaseSCADA.docx
 
Mi rna data analysis 2013
Mi rna data analysis 2013Mi rna data analysis 2013
Mi rna data analysis 2013
 
Deep Parameters Tuning for Android Mobile Apps
Deep Parameters Tuning for Android Mobile AppsDeep Parameters Tuning for Android Mobile Apps
Deep Parameters Tuning for Android Mobile Apps
 
Nanometer Testing: Challenges and Solutions
Nanometer Testing: Challenges and SolutionsNanometer Testing: Challenges and Solutions
Nanometer Testing: Challenges and Solutions
 
Abraham q3 2008
Abraham q3 2008Abraham q3 2008
Abraham q3 2008
 
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
 
F45013942
F45013942F45013942
F45013942
 
ISLPED 2015 FreqLeak (Presentation Charts)
ISLPED 2015 FreqLeak (Presentation Charts)ISLPED 2015 FreqLeak (Presentation Charts)
ISLPED 2015 FreqLeak (Presentation Charts)
 
Model-driven trace diagnostics for pattern-based temporal specifications
Model-driven trace diagnostics for pattern-based temporal specificationsModel-driven trace diagnostics for pattern-based temporal specifications
Model-driven trace diagnostics for pattern-based temporal specifications
 
Hybrid Deep Neural Networks to Infer State Models of Black-Box Systems​
Hybrid Deep Neural Networks to Infer State Models of Black-Box Systems​Hybrid Deep Neural Networks to Infer State Models of Black-Box Systems​
Hybrid Deep Neural Networks to Infer State Models of Black-Box Systems​
 
thesis
thesisthesis
thesis
 
20080501 software verification_sharygina_lecture01
20080501 software verification_sharygina_lecture0120080501 software verification_sharygina_lecture01
20080501 software verification_sharygina_lecture01
 
Q pcr introduction 2013
Q pcr introduction 2013Q pcr introduction 2013
Q pcr introduction 2013
 
Timing verification of real-time automotive Ethernet networks: what can we ex...
Timing verification of real-time automotive Ethernet networks: what can we ex...Timing verification of real-time automotive Ethernet networks: what can we ex...
Timing verification of real-time automotive Ethernet networks: what can we ex...
 

More from Kevin Moran

Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile AppsMachine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile AppsKevin Moran
 
Discovering Flaws in Security-Focused Static Analysis Tools for Android using...
Discovering Flaws in Security-Focused Static Analysis Tools for Android using...Discovering Flaws in Security-Focused Static Analysis Tools for Android using...
Discovering Flaws in Security-Focused Static Analysis Tools for Android using...Kevin Moran
 
Detecting and Summarizing GUI Changes in Evolving Mobile Apps
Detecting and Summarizing GUI Changes in Evolving Mobile AppsDetecting and Summarizing GUI Changes in Evolving Mobile Apps
Detecting and Summarizing GUI Changes in Evolving Mobile AppsKevin Moran
 
MDroid+: A Mutation Testing Framework for Android
MDroid+: A Mutation Testing Framework for AndroidMDroid+: A Mutation Testing Framework for Android
MDroid+: A Mutation Testing Framework for AndroidKevin Moran
 
Automated Reporting of GUI Design Violations for Mobile Apps
Automated Reporting of GUI Design Violations for Mobile AppsAutomated Reporting of GUI Design Violations for Mobile Apps
Automated Reporting of GUI Design Violations for Mobile AppsKevin Moran
 
On-Device Bug Reporting for Android Applications
On-Device Bug Reporting for Android ApplicationsOn-Device Bug Reporting for Android Applications
On-Device Bug Reporting for Android ApplicationsKevin Moran
 
Auto-completing Bug Reports for Android Applications
Auto-completing Bug Reports for Android ApplicationsAuto-completing Bug Reports for Android Applications
Auto-completing Bug Reports for Android ApplicationsKevin Moran
 
Automatically Discovering, Reporting and Reproducing Android Application Crashes
Automatically Discovering, Reporting and Reproducing Android Application CrashesAutomatically Discovering, Reporting and Reproducing Android Application Crashes
Automatically Discovering, Reporting and Reproducing Android Application CrashesKevin Moran
 
Automated GUI-Testing of Android Apps: From Research to Practice
Automated GUI-Testing of Android Apps: From Research to PracticeAutomated GUI-Testing of Android Apps: From Research to Practice
Automated GUI-Testing of Android Apps: From Research to PracticeKevin Moran
 
How do Developers Test Android Applications?
How do Developers Test Android Applications?How do Developers Test Android Applications?
How do Developers Test Android Applications?Kevin Moran
 
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...Kevin Moran
 
ICSE17 - Tool Demonstration - CrashScope A Practical Tool for the Automated T...
ICSE17 - Tool Demonstration - CrashScope A Practical Tool for the Automated T...ICSE17 - Tool Demonstration - CrashScope A Practical Tool for the Automated T...
ICSE17 - Tool Demonstration - CrashScope A Practical Tool for the Automated T...Kevin Moran
 
ICSE17Tech Briefing - Automated GUI Testing of Android Apps: From Research to...
ICSE17Tech Briefing - Automated GUI Testing of Android Apps: From Research to...ICSE17Tech Briefing - Automated GUI Testing of Android Apps: From Research to...
ICSE17Tech Briefing - Automated GUI Testing of Android Apps: From Research to...Kevin Moran
 

More from Kevin Moran (13)

Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile AppsMachine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
Machine Learning-Based Prototyping of Graphical User Interfaces for Mobile Apps
 
Discovering Flaws in Security-Focused Static Analysis Tools for Android using...
Discovering Flaws in Security-Focused Static Analysis Tools for Android using...Discovering Flaws in Security-Focused Static Analysis Tools for Android using...
Discovering Flaws in Security-Focused Static Analysis Tools for Android using...
 
Detecting and Summarizing GUI Changes in Evolving Mobile Apps
Detecting and Summarizing GUI Changes in Evolving Mobile AppsDetecting and Summarizing GUI Changes in Evolving Mobile Apps
Detecting and Summarizing GUI Changes in Evolving Mobile Apps
 
MDroid+: A Mutation Testing Framework for Android
MDroid+: A Mutation Testing Framework for AndroidMDroid+: A Mutation Testing Framework for Android
MDroid+: A Mutation Testing Framework for Android
 
Automated Reporting of GUI Design Violations for Mobile Apps
Automated Reporting of GUI Design Violations for Mobile AppsAutomated Reporting of GUI Design Violations for Mobile Apps
Automated Reporting of GUI Design Violations for Mobile Apps
 
On-Device Bug Reporting for Android Applications
On-Device Bug Reporting for Android ApplicationsOn-Device Bug Reporting for Android Applications
On-Device Bug Reporting for Android Applications
 
Auto-completing Bug Reports for Android Applications
Auto-completing Bug Reports for Android ApplicationsAuto-completing Bug Reports for Android Applications
Auto-completing Bug Reports for Android Applications
 
Automatically Discovering, Reporting and Reproducing Android Application Crashes
Automatically Discovering, Reporting and Reproducing Android Application CrashesAutomatically Discovering, Reporting and Reproducing Android Application Crashes
Automatically Discovering, Reporting and Reproducing Android Application Crashes
 
Automated GUI-Testing of Android Apps: From Research to Practice
Automated GUI-Testing of Android Apps: From Research to PracticeAutomated GUI-Testing of Android Apps: From Research to Practice
Automated GUI-Testing of Android Apps: From Research to Practice
 
How do Developers Test Android Applications?
How do Developers Test Android Applications?How do Developers Test Android Applications?
How do Developers Test Android Applications?
 
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...
Continuous, Evolutionary and Large-Scale: A New Perspective for Automated Mob...
 
ICSE17 - Tool Demonstration - CrashScope A Practical Tool for the Automated T...
ICSE17 - Tool Demonstration - CrashScope A Practical Tool for the Automated T...ICSE17 - Tool Demonstration - CrashScope A Practical Tool for the Automated T...
ICSE17 - Tool Demonstration - CrashScope A Practical Tool for the Automated T...
 
ICSE17Tech Briefing - Automated GUI Testing of Android Apps: From Research to...
ICSE17Tech Briefing - Automated GUI Testing of Android Apps: From Research to...ICSE17Tech Briefing - Automated GUI Testing of Android Apps: From Research to...
ICSE17Tech Briefing - Automated GUI Testing of Android Apps: From Research to...
 

Recently uploaded

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 

Assessing Test Case Prioritization on Real Faults and Mutants

  • 1. Qi Luo, Kevin Moran, Massimiliano Di Penta, Denys Poshyvanyk AssessingTest Case Prioritization on Real Faults and Mutants 34th International Conference on Software Maintenance and Evolution (ICSME’18) Thursday, September 27th, 2018
  • 5. REGRESSION TESTING v1.0 v1.2 v2.0 vN … t1 t2 t3 t4
  • 6. REGRESSION TESTING v1.0 v1.2 v2.0 vN … t1 t2 t3 t4
  • 7. REGRESSION TESTING v1.0 v1.2 v2.0 vN … t1 t2 t3 t4
  • 8. REGRESSION TESTING v1.0 v1.2 v2.0 vN … t1 t2 t3 t4
  • 9. REGRESSION TESTING v1.0 v1.2 v2.0 vN … t1 t2 t3 t4
  • 10. TEST CASE PRIORITIZATION (TCP) v1.2 t1 t2 t3 t4
  • 11. TEST CASE PRIORITIZATION (TCP) v1.2 t1 t2 t3 t4 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering
  • 12. TEST CASE PRIORITIZATION (TCP) v1.2 t1 t2 t3 t4 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1
  • 13. TEST CASE PRIORITIZATION (TCP) v1.2 t1 t2 t3 t4 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2
  • 14. TEST CASE PRIORITIZATION (TCP) v1.2 t1 t2 t3 t4 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2 3) t3
  • 15. TEST CASE PRIORITIZATION (TCP) v1.2 t1 t2 t3 t4 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2 3) t3 4) t4
  • 16. TEST CASE PRIORITIZATION (TCP) v1.2 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2 3) t3 4) t4
  • 17. TEST CASE PRIORITIZATION (TCP) v1.2 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2 3) t3 4) t4 t3 t1 t2 t4
  • 18. TEST CASE PRIORITIZATION (TCP) v1.2 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2 3) t3 4) t4 1) t3 t3 t1 t2 t4
  • 19. TEST CASE PRIORITIZATION (TCP) v1.2 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2 3) t3 4) t4 1) t3 2) t1 t3 t1 t2 t4
  • 20. TEST CASE PRIORITIZATION (TCP) v1.2 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2 3) t3 4) t4 1) t3 2) t1 3) t2 t3 t1 t2 t4
  • 21. TEST CASE PRIORITIZATION (TCP) v1.2 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2 3) t3 4) t4 1) t3 2) t1 3) t2 4) t4 t3 t1 t2 t4
  • 22. TEST CASE PRIORITIZATION (TCP) v1.2 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2 3) t3 4) t4 1) t3 2) t1 3) t2 4) t4 t3 t1 t2 t4 APFD: Average Percentage of Faults Detected APFD = 54%
  • 23. TEST CASE PRIORITIZATION (TCP) v1.2 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2 3) t3 4) t4 1) t3 2) t1 3) t2 4) t4 t3 t1 t2 t4 APFD: Average Percentage of Faults Detected APFD = 54%
  • 24. TEST CASE PRIORITIZATION (TCP) v1.2 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2 3) t3 4) t4 1) t3 2) t1 3) t2 4) t4 t3 t1 t2 t4 APFD: Average Percentage of Faults Detected APFD = 54% APFD = 96%
  • 25. TEST CASE PRIORITIZATION (TCP) v1.2 0 1 2 3 4 0 1 2 3 4 # Faults Found #Tests Executed Test Ordering 1) t1 2) t2 3) t3 4) t4 1) t3 2) t1 3) t2 4) t4 t3 t1 t2 t4 APFD: Average Percentage of Faults Detected APFD = 54% APFD = 96% The Red ordering of test cases outperforms the Blue ordering in terms of APFD The main goal of TCP is to prioritize test cases so as to maximize APFD
  • 26. ASSESSING TCP EFFECTIVENESS (IDEAL) v1.0 v1.2 v2.0 vN …
  • 27. ASSESSING TCP EFFECTIVENESS (IDEAL) v1.0 v1.2 v2.0 vN …
  • 30. ASSESSING TCP EFFECTIVENESS (IDEAL) t1 t2 t3 t4
  • 31. ASSESSING TCP EFFECTIVENESS (IDEAL) t1 t2 t3 t4 TCP Technique
  • 32. ASSESSING TCP EFFECTIVENESS (IDEAL) t1 t2 t3 t4 TCP Technique t1 t2 t3 t4 Prioritized Tests
  • 33. ASSESSING TCP EFFECTIVENESS (IDEAL) t1 t2 t3 t4 TCP Technique t1 t2 t3 t4 Prioritized Tests
  • 34. ASSESSING TCP EFFECTIVENESS (IDEAL) t1 t2 t3 t4 TCP Technique t1 t2 t3 t4 Prioritized Tests Measured APFD Values
  • 35. ASSESSING TCP EFFECTIVENESS (ACTUAL) t1 t2 t3 t4 Mutation Framework v N
  • 36. ASSESSING TCP EFFECTIVENESS (ACTUAL) t1 t2 t3 t4 Mutation Framework v N
  • 37. ASSESSING TCP EFFECTIVENESS (ACTUAL) t1 t2 t3 t4 v N
  • 38. ASSESSING TCP EFFECTIVENESS (ACTUAL) t1 t2 t3 t4 TCP Technique v N
  • 39. ASSESSING TCP EFFECTIVENESS (ACTUAL) t1 t2 t3 t4 TCP Technique t1 t2 t3 t4 Prioritized Tests v N
  • 40. ASSESSING TCP EFFECTIVENESS (ACTUAL) t1 t2 t3 t4 TCP Technique t1 t2 t3 t4 Prioritized Tests v N
  • 41. ASSESSING TCP EFFECTIVENESS (ACTUAL) t1 t2 t3 t4 TCP Technique t1 t2 t3 t4 Prioritized Tests Measured APFD Values v N
  • 42.
  • 43. How well do TCP Techniques perform on real faults?
  • 44. How well do TCP Techniques perform on real faults? Is the performance of TCP techniques on mutants representative of their performance on real faults?
  • 45. How well do TCP Techniques perform on real faults? What properties of mutants impact the representativeness of this performance? Is the performance of TCP techniques on mutants representative of their performance on real faults?
  • 47. RESEARCH QUESTIONS • RQ1: TCP performance real faults?
  • 48. RESEARCH QUESTIONS • RQ1: TCP performance real faults? • RQ2: Representativeness of mutants for TCP?
  • 49. RESEARCH QUESTIONS • RQ1: TCP performance real faults? • RQ2: Representativeness of mutants for TCP? • RQ3: How do fault properties impact TCP performance?
  • 50. EMPIRICAL STUDY CONTEXT Project Name Number of Real Faults JFreeChart 26 Closure compiler 133 Apache commons-lang 65 Apache commons-math 106 Joda-Time 27 Total 357 Defects4J
  • 56. EMPIRICAL STUDY CONTEXT Pit Mutation Framework vN Repeat this process 100 times Every mutant can be detected by at least one test case
  • 57. EMPIRICAL STUDY CONTEXT Project Name Number of Real Faults Mutants JFreeChart 26 2,600 Closure 133 13,300 Commons-lang 65 6,500 Commons-math 106 10,600 Joda-Time 27 2,700 Total 357 35,700 Defects4J
  • 61. EMPIRICAL STUDY CONTEXT Created a second set of mutants with subsumed mutants removed
  • 62. EMPIRICAL STUDY CONTEXT Project Name Number of Bugs Mutants Subsuming Mutants JFreeChart 26 2,600 1,796 Closure 133 13,300 9,731 Commons-lang 65 6,500 2,129 Commons-math 106 10,600 5,016 Joda-Time 27 2,700 2,700 Total 357 35,700 21,372 Defects4J
  • 63. EMPIRICAL STUDY CONTEXT Type Tag Description Static CG-Total Call graph-based (total strategy) CG-Add Call graph-based (additional strategy) Str String distance-based Topic Topic model-based Dynamic Total Greedy Total (statement level) Add Greedy Additional (statement level) Art Adaptive Random (statement level) Search Search-based (statement level) Studied TCP Techniques
  • 65. METHODOLOGY RQ1 Run Tests at Test Method Level
  • 66. METHODOLOGY RQ1 Run Tests at Test Method Level APFD = Rate of Fault Detection
  • 67. METHODOLOGY RQ1 Run Tests at Test Method Level APFD = Rate of Fault Detection APFDc = Fault Detection Rate & Efficiency
  • 68. METHODOLOGY RQ1 Run Tests at Test Method Level ANOVA & Tukey HSD Tests APFD = Rate of Fault Detection APFDc = Fault Detection Rate & Efficiency
  • 74. METHODOLOGY RQ3 Examine Mutants based on Real Fault Coupling
  • 75. METHODOLOGY RQ3 Examine Mutants based on Real Fault Coupling Examine Mutants based on Operator
  • 76. METHODOLOGY RQ3 Kendall Rank Correlation Analysis Examine Mutants based on Real Fault Coupling Examine Mutants based on Operator
  • 77. RQ1 RESULTS: REAL FAULT PERFORMANCE TCP Technique APFD Static Topic 0.700 Str 0.696 CG-Add 0.597 CG-Total 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 TCP Technique APFDc Static Topic 0.635 Str 0.594 CG-Add 0.591 CG-Total 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419
  • 78. RQ1 RESULTS: REAL FAULT PERFORMANCE TCP Technique APFD Static Topic 0.700 Str 0.696 CG-Add 0.597 CG-Total 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 TCP Technique APFDc Static Topic 0.635 Str 0.594 CG-Add 0.591 CG-Total 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419
  • 79. RQ1 RESULTS: REAL FAULT PERFORMANCE TCP Technique APFD Static Topic 0.700 Str 0.696 CG-Add 0.597 CG-Total 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 TCP Technique APFDc Static Topic 0.635 Str 0.594 CG-Add 0.591 CG-Total 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419
  • 80. RQ1 RESULTS: REAL FAULT PERFORMANCE TCP Technique APFD Static Topic 0.700 Str 0.696 CG-Add 0.597 CG-Total 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 TCP Technique APFDc Static Topic 0.635 Str 0.594 CG-Add 0.591 CG-Total 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419 Summary • All Techniques perform better according to APFD
  • 81. RQ1 RESULTS: REAL FAULT PERFORMANCE TCP Technique APFD Static Topic 0.700 Str 0.696 CG-Add 0.597 CG-Total 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 TCP Technique APFDc Static Topic 0.635 Str 0.594 CG-Add 0.591 CG-Total 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419 Summary • All Techniques perform better according to APFD • Static TCP Techniques tend to perform better overall
  • 82. RQ1 RESULTS: REAL FAULT PERFORMANCE TCP Technique APFD Static Topic 0.700 Str 0.696 CG-Add 0.597 CG-Total 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 TCP Technique APFDc Static Topic 0.635 Str 0.594 CG-Add 0.591 CG-Total 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419 Summary • All Techniques perform better according to APFD • Static TCP Techniques tend to perform better overall • Total outperforms Add for APFD
  • 83. RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS Tech APFD Static Topic 0.700 Str 0.696 CG-A 0.597 CG-T 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 Tech APFDc Static Topic 0.635 Str 0.594 CG-A 0.591 CG-T 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419 Tech APFD Static Str 0.834 Topic 0.832 CG-A 0.818 CG-T 0.743 Dynamic Add 0.897 Art 0.800 Search 0.784 Total 0.757 Tech APFDc Static CG-A 0.835 Topic 0.802 Str 0.788 CG-T 0.598 Dynamic Art 0.841 Add 0.829 Search 0.725 Total 0.549 Real Faults All Mutants
  • 84. RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS Tech APFD Static Topic 0.700 Str 0.696 CG-A 0.597 CG-T 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 Tech APFDc Static Topic 0.635 Str 0.594 CG-A 0.591 CG-T 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419 Tech APFD Static Str 0.834 Topic 0.832 CG-A 0.818 CG-T 0.743 Dynamic Add 0.897 Art 0.800 Search 0.784 Total 0.757 Tech APFDc Static CG-A 0.835 Topic 0.802 Str 0.788 CG-T 0.598 Dynamic Art 0.841 Add 0.829 Search 0.725 Total 0.549 Real Faults All Mutants
  • 85. RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS Tech APFD Static Topic 0.700 Str 0.696 CG-A 0.597 CG-T 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 Tech APFDc Static Topic 0.635 Str 0.594 CG-A 0.591 CG-T 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419 Tech APFD Static Str 0.834 Topic 0.832 CG-A 0.818 CG-T 0.743 Dynamic Add 0.897 Art 0.800 Search 0.784 Total 0.757 Tech APFDc Static CG-A 0.835 Topic 0.802 Str 0.788 CG-T 0.598 Dynamic Art 0.841 Add 0.829 Search 0.725 Total 0.549 Real Faults All Mutants
  • 86. Tech APFD Static Topic 0.700 Str 0.696 CG-A 0.597 CG-T 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 Tech APFDc Static Topic 0.635 Str 0.594 CG-A 0.591 CG-T 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419 Tech APFD Static Str 0.620 Topic 0.612 CG-A 0.612 CG-T 0.561 Dynamic Add 0.664 Art 0.622 Search 0.578 Total 0.534 Tech APFDc Static CG-A 0.639 Str 0.572 Topic 0.570 CG-T 0.407 Dynamic Art 0.671 Add 0.565 Search 0.508 Total 0.305 Real Faults Subsuming Mutants RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
  • 87. Tech APFD Static Topic 0.700 Str 0.696 CG-A 0.597 CG-T 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 Tech APFDc Static Topic 0.635 Str 0.594 CG-A 0.591 CG-T 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419 Tech APFD Static Str 0.620 Topic 0.612 CG-A 0.612 CG-T 0.561 Dynamic Add 0.664 Art 0.622 Search 0.578 Total 0.534 Tech APFDc Static CG-A 0.639 Str 0.572 Topic 0.570 CG-T 0.407 Dynamic Art 0.671 Add 0.565 Search 0.508 Total 0.305 Real Faults Subsuming Mutants RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
  • 88. Tech APFD Static Topic 0.700 Str 0.696 CG-A 0.597 CG-T 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 Tech APFDc Static Topic 0.635 Str 0.594 CG-A 0.591 CG-T 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419 Tech APFD Static Str 0.620 Topic 0.612 CG-A 0.612 CG-T 0.561 Dynamic Add 0.664 Art 0.622 Search 0.578 Total 0.534 Tech APFDc Static CG-A 0.639 Str 0.572 Topic 0.570 CG-T 0.407 Dynamic Art 0.671 Add 0.565 Search 0.508 Total 0.305 Real Faults Subsuming Mutants RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
  • 89. Tech APFD Static Topic 0.700 Str 0.696 CG-A 0.597 CG-T 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 Tech APFDc Static Topic 0.635 Str 0.594 CG-A 0.591 CG-T 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419 Tech APFD Static Str 0.620 Topic 0.612 CG-A 0.612 CG-T 0.561 Dynamic Add 0.664 Art 0.622 Search 0.578 Total 0.534 Tech APFDc Static CG-A 0.639 Str 0.572 Topic 0.570 CG-T 0.407 Dynamic Art 0.671 Add 0.565 Search 0.508 Total 0.305 Real Faults Subsuming MutantsSummary •Metrics according to the full mutant set tend to overestimate performance RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
  • 90. Tech APFD Static Topic 0.700 Str 0.696 CG-A 0.597 CG-T 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 Tech APFDc Static Topic 0.635 Str 0.594 CG-A 0.591 CG-T 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419 Tech APFD Static Str 0.620 Topic 0.612 CG-A 0.612 CG-T 0.561 Dynamic Add 0.664 Art 0.622 Search 0.578 Total 0.534 Tech APFDc Static CG-A 0.639 Str 0.572 Topic 0.570 CG-T 0.407 Dynamic Art 0.671 Add 0.565 Search 0.508 Total 0.305 Real Faults Subsuming MutantsSummary •Metrics according to the full mutant set tend to overestimate performance •APFDc values on mutants correlated more strongly to APFDc values on Real Faults RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
  • 91. Tech APFD Static Topic 0.700 Str 0.696 CG-A 0.597 CG-T 0.594 Dynamic Art 0.657 Total 0.610 Search 0.600 Add 0.583 Tech APFDc Static Topic 0.635 Str 0.594 CG-A 0.591 CG-T 0.480 Dynamic Art 0.677 Search 0.556 Add 0.454 Total 0.419 Tech APFD Static Str 0.620 Topic 0.612 CG-A 0.612 CG-T 0.561 Dynamic Add 0.664 Art 0.622 Search 0.578 Total 0.534 Tech APFDc Static CG-A 0.639 Str 0.572 Topic 0.570 CG-T 0.407 Dynamic Art 0.671 Add 0.565 Search 0.508 Total 0.305 Real Faults Subsuming MutantsSummary •Metrics according to the full mutant set tend to overestimate performance •APFDc values on mutants correlated more strongly to APFDc values on Real Faults •The relative ordering of techniques between mutants and real faults differs RQ2 RESULTS: COMPARING MUTANTS & REAL FAULTS
  • 92. RQ3 RESULTS: EXAMINING FAULT PROPERTIES
  • 93. RQ3 RESULTS: EXAMINING FAULT PROPERTIES • High performance correlation for real faults that were highly coupled to mutation operators
  • 94. RQ3 RESULTS: EXAMINING FAULT PROPERTIES • High performance correlation for real faults that were highly coupled to mutation operators • TCP techniques perform differently across mutants seeded by different operators
  • 95. RQ3 RESULTS: EXAMINING FAULT PROPERTIES • High performance correlation for real faults that were highly coupled to mutation operators • TCP techniques perform differently across mutants seeded by different operators • TCP performance for mutants seeded by different operators varies widely across subject programs
  • 97. LEARNED LESSONS Relative TCP performance can differ between mutants and real faults Lesson 1
  • 98. LEARNED LESSONS Relative TCP performance can differ between mutants and real faults Lesson 1 The metrics utilized in TCP evaluations impact mutant representativeness Lesson 2
  • 99. LEARNED LESSONS Relative TCP performance can differ between mutants and real faults Lesson 1 The metrics utilized in TCP evaluations impact mutant representativeness Lesson 2 Mutation Operators must be carefully selected in order for mutation-based TCP performance to represent performance on real faults Lesson 3
  • 100.
  • 101.
  • 102.
  • 103.
  • 104.
  • 105. Any Questions? Thank you! Kevin Moran Post-Doctoral Fellow College of William & Mary @kevpmo kpmoran@cs.wm.edu https://www.kpmoran.com
  • 106.
  • 108. SEEDING MUTANTS INTO THE LATEST VERSION