SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Downloaden Sie, um offline zu lesen
3rd Java Unit Testing Tool
Competition
Tanja E.J. Vos
Urko Rueda
Universidad Politecnica de Valencia
http://sbstcontest.dsic.upv.es/
8th International Workshop on Search-Based Software Testing (SBST) at the
37th IEEE International Conference on Software Engineering ICSE 2015
A (3rd) tool competition… WHY?
§  Competition between different types of automated unit testing tools
(evolutionary, guided/random, dynamic)
§  Task: generate regression Junit tests for given unknown set of
classes
§  Score takes into account:
–  Effectiveness : instruction coverage, branch coverage, mutation coverage
–  Efficiency: time to prepare, generate and execute
§  Allows comparison between different approaches
§  Help developers:
–  Improve their tools
–  Guide future developments
¢  Commercial Tool
¢  anonymous, dynamic approach, deployment and configuration for competition done by UPV
¢  EvoSuite
¢  G. Fraser, A. Arcuri, evolutionary/search-based, static analysis
¢  Evosuite-Mosa
¢  A. Panichella, P. Tonella, F.M. Kifetew, A. Panico, evolutionary
¢  GRT
¢  L. Ma, C. Artho, C. Zhang, guided random, static analysis
¢  jTexPert
¢  A. Sakti, guided random, static analysis
¢  T3
¢  W. Prasetya, random testing, pair-wise testing, …
WHO were the participants
(alphabetical order)
¢  Baseline: Randoop (random testing)
¢  Baseline: Manual
•  3 testers (professional tester + researcher + PhD
student)
•  “Write unit tests for given classes! Take as much
time as you think is necessary”
•  Measure time to get familiar with class and to
write the tests
WHAT were the baselines
§  Instruction coverage
§  Branch coverage
§  Mutation coverage
§  Time for generation of tests
§  Execution time
§  Preparation time
Unit Testing Tool Competition – Round Two 9
we defined a benchmark function which assigns to each run of a test tool T a
core as the weighted sum over the measured variables:
scoreT :=
X
class

!i · covi(class) + !b · covb(class)+
!m · covm(class)
!t ·
✓
tprep +
X
class
⇥
tgen(class) + texec(class)
⇤
◆
where, consistent with Section 2.4, covi, covb, covm refer to achieved instruction,
ωi = 1
ωb = 2
ωm = 4
ωt = 1
HOW do we compare them
Unit Testing Tool Competition – Round Two 7
RUN TOOL
RUN TOOL
RUN TOOL
RUN TOOL
T1T1
T2
TN-1
TN
SCORE
BENCHMARKTOOL
CUTs
GENERATED
TEST CASES
COMPILE
EXECUTE
MEASURE
PERFORMANCE:
M1
COMPETITION EXECUTION FRAMEWORK
AGGREGATOR
MEASURE
PERFORMANCE:
M2
HOW do we execute them
JaCoCo
PiTest
8 Sebastian Bauersfeld, Tanja E. J. Vos, and Kiran Lakhotia
run tool
for Tool T
Benchmark
Framework
"BENCHMARK"
Src Path / Bin Path / ClassPath
ClassPath for JUnit Compilation
"READY"
.
.
.
name of CUT
.
.
.
generate file in
./temp/testcases
"READY"
compile + execute
+ measure test case
loop
preparation
Fig. 2. Benchmark Automation Protocol
HOW to implement RUNTOOL
¢  Same as the 2nd competition (but nobody knew ;-))
¢  Java open source libraries
¢  9 Projects (async http client, eclipse checkstyle, gdata client, guava, hibernate, java machine learning library, Java wikipedia library, scribe, twitter4j)
¢  Sources: Google Code, GitHub, Sourceforge.net
¢  7 classes per project è total of 63 classes
¢  Packages with highest value for the Afferent Coupling Metric
¢  AFC	
  determines	
  the	
  number	
  of	
  classes	
  from	
  other	
  packages	
  that	
  depend	
  on	
  
classes	
  in	
  the	
  current	
  package.	
  	
  
¢  Select	
  ”popular”	
  classes	
  within	
  a	
  project.	
  
¢  Classes with highest Nested Block Depth
¢  NBD	
  determines	
  the	
  maximal	
  depth	
  of	
  nested	
  statements	
  such	
  as	
  if-­‐else	
  
constructs,	
  loops	
  and	
  excepCon	
  handlers.	
  	
  
¢  Select	
  complex	
  classes	
  for	
  which	
  it	
  is	
  difficult	
  to	
  achieve	
  high	
  branch	
  coverage.	
  
¢  No exclusions: abstract, small, large, file constructors…
WHAT were the Benchmark Classes
6 runs (indeterminism caused by tools and classes)
Results
(do not try to read this …. Just wanna show that we have done the work)
Results per class
(do not try to read this …. Just wanna show that we have done the work)
Results per class
(do not try to read this …. Just wanna show that we have done the work)
And the winner is…….
210, 45 Manual
203, 73 GRT (1)
190,64 EvoSuite (2)
189,22 MOSA-EvoSuite (3)
186,15 T3 (4)
159,16 Jtexpert (5)
93,45 Randoop
65,5 CT (6)
Combined strength
tools tools+humans
Average covi 78.0 % 84.9 %
Average covb 64.7 % 70.1 %
Average covm 60.3 % 69.4 %
# CUTs with covb = 100% 6 7
# CUTs with covb 80% 31 34
CUTs with covi  10% { 43,45,49,61 } { 45 }
CUTs with covi  5% { 45,61 } { 45 }
SCORE 266.7 277.8
TABLE IV
COMBINED STRENGTH OF THE CONTESTING TOOLS
In Table IVCombined strength of the contesting toolstable.4
[1] S. B
less
[2] “Ra
22/0
[3] G. F
obje
[4] L. M
“En
[5] A. S
repr
IEE
[6] A.
cove
Con
¢  More classes
¢  Need testers for manual baseline
¢  Any volunteers? ;-)
¢  More participants!!
¢  Score:
¢  The participants will have a lot to say ;-)
¢  Tool library dependencies appearing as CUTs
(the known Guava library problems)
Future Editions
Contact
§  Tanja	
  E.	
  J.	
  Vos	
  
§  correo:	
  tvos@pros.upv.es	
  
§  twi2er/skype:	
  tanja_vos	
  
§  web:	
  hIp://staq.dsic.upv.es/	
  
§  teléfono:	
  +34	
  690	
  917	
  971	
  	
  

Weitere ähnliche Inhalte

Ähnlich wie SBST 2015 - 3rd Tool Competition for Java Junit test Tools

.NET Fest 2017. Игорь Кочетов. Классификация результатов тестирования произво...
.NET Fest 2017. Игорь Кочетов. Классификация результатов тестирования произво....NET Fest 2017. Игорь Кочетов. Классификация результатов тестирования произво...
.NET Fest 2017. Игорь Кочетов. Классификация результатов тестирования произво...NETFest
 
MEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational ExperimentsMEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational ExperimentsGIScRG
 
When develpment met test(shift left testing)
When develpment met test(shift left testing)When develpment met test(shift left testing)
When develpment met test(shift left testing)SangIn Choung
 
SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)Amr E. Mohamed
 
Google test training
Google test trainingGoogle test training
Google test trainingThierry Gayet
 
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.Wolfgang Grieskamp
 
Формальная верификация как средство тестирования (в Java)
Формальная верификация как средство тестирования (в Java)Формальная верификация как средство тестирования (в Java)
Формальная верификация как средство тестирования (в Java)SQALab
 
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...Sebastiano Panichella
 
Expressive Testing ...and your Code For Free?
Expressive Testing ...and your Code For Free?Expressive Testing ...and your Code For Free?
Expressive Testing ...and your Code For Free?ESUG
 
Exam viewtestmanageruserguide
Exam viewtestmanageruserguideExam viewtestmanageruserguide
Exam viewtestmanageruserguideWilliam McIntosh
 
Test Coverage: An Art and a Science
Test Coverage: An Art and a ScienceTest Coverage: An Art and a Science
Test Coverage: An Art and a ScienceTeamQualityPro
 
Analysis of Educational Robotics activities using a machine learning approach
Analysis of Educational Robotics activities using a machine learning approachAnalysis of Educational Robotics activities using a machine learning approach
Analysis of Educational Robotics activities using a machine learning approachLorenzo Cesaretti
 
Exploratory testing STEW 2016
Exploratory testing STEW 2016Exploratory testing STEW 2016
Exploratory testing STEW 2016Per Runeson
 
Chapter 10 Testing and Quality Assurance1Unders.docx
Chapter 10 Testing and Quality Assurance1Unders.docxChapter 10 Testing and Quality Assurance1Unders.docx
Chapter 10 Testing and Quality Assurance1Unders.docxketurahhazelhurst
 
Fitnesse Testing Framework
Fitnesse Testing Framework Fitnesse Testing Framework
Fitnesse Testing Framework Ajit Koti
 
Quality Assurance
Quality AssuranceQuality Assurance
Quality AssuranceKiran Kumar
 
Wodel-Test: A Model-Based Framework for Language-Independent Mutation Testing
Wodel-Test: A Model-Based Framework for Language-Independent Mutation TestingWodel-Test: A Model-Based Framework for Language-Independent Mutation Testing
Wodel-Test: A Model-Based Framework for Language-Independent Mutation TestingPablo Gómez Abajo
 

Ähnlich wie SBST 2015 - 3rd Tool Competition for Java Junit test Tools (20)

.NET Fest 2017. Игорь Кочетов. Классификация результатов тестирования произво...
.NET Fest 2017. Игорь Кочетов. Классификация результатов тестирования произво....NET Fest 2017. Игорь Кочетов. Классификация результатов тестирования произво...
.NET Fest 2017. Игорь Кочетов. Классификация результатов тестирования произво...
 
MEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational ExperimentsMEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational Experiments
 
When develpment met test(shift left testing)
When develpment met test(shift left testing)When develpment met test(shift left testing)
When develpment met test(shift left testing)
 
SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)
 
Google test training
Google test trainingGoogle test training
Google test training
 
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
 
XP in the full stack
XP in the full stackXP in the full stack
XP in the full stack
 
Формальная верификация как средство тестирования (в Java)
Формальная верификация как средство тестирования (в Java)Формальная верификация как средство тестирования (в Java)
Формальная верификация как средство тестирования (в Java)
 
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
Search-Based Software Testing Tool Competition 2021 by Sebastiano Panichella,...
 
Final
FinalFinal
Final
 
Expressive Testing ...and your Code For Free?
Expressive Testing ...and your Code For Free?Expressive Testing ...and your Code For Free?
Expressive Testing ...and your Code For Free?
 
Exam viewtestmanageruserguide
Exam viewtestmanageruserguideExam viewtestmanageruserguide
Exam viewtestmanageruserguide
 
Testing
TestingTesting
Testing
 
Test Coverage: An Art and a Science
Test Coverage: An Art and a ScienceTest Coverage: An Art and a Science
Test Coverage: An Art and a Science
 
Analysis of Educational Robotics activities using a machine learning approach
Analysis of Educational Robotics activities using a machine learning approachAnalysis of Educational Robotics activities using a machine learning approach
Analysis of Educational Robotics activities using a machine learning approach
 
Exploratory testing STEW 2016
Exploratory testing STEW 2016Exploratory testing STEW 2016
Exploratory testing STEW 2016
 
Chapter 10 Testing and Quality Assurance1Unders.docx
Chapter 10 Testing and Quality Assurance1Unders.docxChapter 10 Testing and Quality Assurance1Unders.docx
Chapter 10 Testing and Quality Assurance1Unders.docx
 
Fitnesse Testing Framework
Fitnesse Testing Framework Fitnesse Testing Framework
Fitnesse Testing Framework
 
Quality Assurance
Quality AssuranceQuality Assurance
Quality Assurance
 
Wodel-Test: A Model-Based Framework for Language-Independent Mutation Testing
Wodel-Test: A Model-Based Framework for Language-Independent Mutation TestingWodel-Test: A Model-Based Framework for Language-Independent Mutation Testing
Wodel-Test: A Model-Based Framework for Language-Independent Mutation Testing
 

Mehr von Tanja Vos

Impress project: Goals and Achievements @ cseet2020
Impress project: Goals and Achievements @ cseet2020Impress project: Goals and Achievements @ cseet2020
Impress project: Goals and Achievements @ cseet2020Tanja Vos
 
FormalZ @ cseet2020
FormalZ @ cseet2020FormalZ @ cseet2020
FormalZ @ cseet2020Tanja Vos
 
Software Testing Innovation Alliance
Software Testing Innovation AllianceSoftware Testing Innovation Alliance
Software Testing Innovation AllianceTanja Vos
 
Testar2014 presentation
Testar2014 presentationTestar2014 presentation
Testar2014 presentationTanja Vos
 
TAROT summerschool slides 2013 - Italy
TAROT summerschool slides 2013 - ItalyTAROT summerschool slides 2013 - Italy
TAROT summerschool slides 2013 - ItalyTanja Vos
 

Mehr von Tanja Vos (7)

Impress project: Goals and Achievements @ cseet2020
Impress project: Goals and Achievements @ cseet2020Impress project: Goals and Achievements @ cseet2020
Impress project: Goals and Achievements @ cseet2020
 
FormalZ @ cseet2020
FormalZ @ cseet2020FormalZ @ cseet2020
FormalZ @ cseet2020
 
A-TEST2017
A-TEST2017A-TEST2017
A-TEST2017
 
Software Testing Innovation Alliance
Software Testing Innovation AllianceSoftware Testing Innovation Alliance
Software Testing Innovation Alliance
 
Testar2014 presentation
Testar2014 presentationTestar2014 presentation
Testar2014 presentation
 
Testar
TestarTestar
Testar
 
TAROT summerschool slides 2013 - Italy
TAROT summerschool slides 2013 - ItalyTAROT summerschool slides 2013 - Italy
TAROT summerschool slides 2013 - Italy
 

Kürzlich hochgeladen

%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...masabamasaba
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...masabamasaba
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benonimasabamasaba
 

Kürzlich hochgeladen (20)

%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
+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...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 

SBST 2015 - 3rd Tool Competition for Java Junit test Tools

  • 1. 3rd Java Unit Testing Tool Competition Tanja E.J. Vos Urko Rueda Universidad Politecnica de Valencia http://sbstcontest.dsic.upv.es/ 8th International Workshop on Search-Based Software Testing (SBST) at the 37th IEEE International Conference on Software Engineering ICSE 2015
  • 2. A (3rd) tool competition… WHY? §  Competition between different types of automated unit testing tools (evolutionary, guided/random, dynamic) §  Task: generate regression Junit tests for given unknown set of classes §  Score takes into account: –  Effectiveness : instruction coverage, branch coverage, mutation coverage –  Efficiency: time to prepare, generate and execute §  Allows comparison between different approaches §  Help developers: –  Improve their tools –  Guide future developments
  • 3. ¢  Commercial Tool ¢  anonymous, dynamic approach, deployment and configuration for competition done by UPV ¢  EvoSuite ¢  G. Fraser, A. Arcuri, evolutionary/search-based, static analysis ¢  Evosuite-Mosa ¢  A. Panichella, P. Tonella, F.M. Kifetew, A. Panico, evolutionary ¢  GRT ¢  L. Ma, C. Artho, C. Zhang, guided random, static analysis ¢  jTexPert ¢  A. Sakti, guided random, static analysis ¢  T3 ¢  W. Prasetya, random testing, pair-wise testing, … WHO were the participants (alphabetical order)
  • 4. ¢  Baseline: Randoop (random testing) ¢  Baseline: Manual •  3 testers (professional tester + researcher + PhD student) •  “Write unit tests for given classes! Take as much time as you think is necessary” •  Measure time to get familiar with class and to write the tests WHAT were the baselines
  • 5. §  Instruction coverage §  Branch coverage §  Mutation coverage §  Time for generation of tests §  Execution time §  Preparation time Unit Testing Tool Competition – Round Two 9 we defined a benchmark function which assigns to each run of a test tool T a core as the weighted sum over the measured variables: scoreT := X class  !i · covi(class) + !b · covb(class)+ !m · covm(class) !t · ✓ tprep + X class ⇥ tgen(class) + texec(class) ⇤ ◆ where, consistent with Section 2.4, covi, covb, covm refer to achieved instruction, ωi = 1 ωb = 2 ωm = 4 ωt = 1 HOW do we compare them
  • 6. Unit Testing Tool Competition – Round Two 7 RUN TOOL RUN TOOL RUN TOOL RUN TOOL T1T1 T2 TN-1 TN SCORE BENCHMARKTOOL CUTs GENERATED TEST CASES COMPILE EXECUTE MEASURE PERFORMANCE: M1 COMPETITION EXECUTION FRAMEWORK AGGREGATOR MEASURE PERFORMANCE: M2 HOW do we execute them JaCoCo PiTest
  • 7. 8 Sebastian Bauersfeld, Tanja E. J. Vos, and Kiran Lakhotia run tool for Tool T Benchmark Framework "BENCHMARK" Src Path / Bin Path / ClassPath ClassPath for JUnit Compilation "READY" . . . name of CUT . . . generate file in ./temp/testcases "READY" compile + execute + measure test case loop preparation Fig. 2. Benchmark Automation Protocol HOW to implement RUNTOOL
  • 8. ¢  Same as the 2nd competition (but nobody knew ;-)) ¢  Java open source libraries ¢  9 Projects (async http client, eclipse checkstyle, gdata client, guava, hibernate, java machine learning library, Java wikipedia library, scribe, twitter4j) ¢  Sources: Google Code, GitHub, Sourceforge.net ¢  7 classes per project è total of 63 classes ¢  Packages with highest value for the Afferent Coupling Metric ¢  AFC  determines  the  number  of  classes  from  other  packages  that  depend  on   classes  in  the  current  package.     ¢  Select  ”popular”  classes  within  a  project.   ¢  Classes with highest Nested Block Depth ¢  NBD  determines  the  maximal  depth  of  nested  statements  such  as  if-­‐else   constructs,  loops  and  excepCon  handlers.     ¢  Select  complex  classes  for  which  it  is  difficult  to  achieve  high  branch  coverage.   ¢  No exclusions: abstract, small, large, file constructors… WHAT were the Benchmark Classes
  • 9. 6 runs (indeterminism caused by tools and classes) Results (do not try to read this …. Just wanna show that we have done the work)
  • 10. Results per class (do not try to read this …. Just wanna show that we have done the work)
  • 11. Results per class (do not try to read this …. Just wanna show that we have done the work)
  • 12. And the winner is……. 210, 45 Manual 203, 73 GRT (1) 190,64 EvoSuite (2) 189,22 MOSA-EvoSuite (3) 186,15 T3 (4) 159,16 Jtexpert (5) 93,45 Randoop 65,5 CT (6)
  • 13. Combined strength tools tools+humans Average covi 78.0 % 84.9 % Average covb 64.7 % 70.1 % Average covm 60.3 % 69.4 % # CUTs with covb = 100% 6 7 # CUTs with covb 80% 31 34 CUTs with covi  10% { 43,45,49,61 } { 45 } CUTs with covi  5% { 45,61 } { 45 } SCORE 266.7 277.8 TABLE IV COMBINED STRENGTH OF THE CONTESTING TOOLS In Table IVCombined strength of the contesting toolstable.4 [1] S. B less [2] “Ra 22/0 [3] G. F obje [4] L. M “En [5] A. S repr IEE [6] A. cove Con
  • 14. ¢  More classes ¢  Need testers for manual baseline ¢  Any volunteers? ;-) ¢  More participants!! ¢  Score: ¢  The participants will have a lot to say ;-) ¢  Tool library dependencies appearing as CUTs (the known Guava library problems) Future Editions
  • 15. Contact §  Tanja  E.  J.  Vos   §  correo:  tvos@pros.upv.es   §  twi2er/skype:  tanja_vos   §  web:  hIp://staq.dsic.upv.es/   §  teléfono:  +34  690  917  971