Constructing Subtle Higher Order Mutants from Java and AspectJ Programs
Elmahdi ¡Omar, ¡Sudipto ¡Ghosh ¡and ¡Darrell ¡Whitley ¡ Department ¡of ¡Computer ¡Science ¡ Colorado ¡State ¡University ¡
¡
Constructing Subtle Higher Order Mutants from Java and AspectJ - - PowerPoint PPT Presentation
Constructing Subtle Higher Order Mutants from Java and AspectJ Programs Elmahdi Omar, Sudipto Ghosh and Darrell Whitley Department of Computer Science Colorado State University
¡
A ¡large ¡majority ¡of ¡real ¡faults ¡cannot ¡be ¡simulated ¡with ¡FOMs ¡ ¡
¡ ¡ ¡[Purush. ¡and ¡Perry ¡2005] ¡
A ¡typical ¡real ¡fault ¡involves ¡about ¡three ¡to ¡four ¡tokens ¡ ¡
¡ ¡ ¡[Gopinath ¡et ¡al ¡2014] ¡
¡
INTRODUCTION… ¡
2 ¡
INTRODUCTION… ¡
3 ¡
INTRODUCTION… ¡ ¡
4 ¡
INTRODUCTION… ¡ ¡
5 ¡
fitness ¡(HOM) ¡= ¡α ¡∗ ¡difficulty ¡of ¡killing ¡(HOM) ¡+ ¡(1−α) ¡∗ ¡ ¡fault ¡detec-on ¡difference ¡(HOM) ¡
APPROACH ¡-‑> ¡OBJECTIVE ¡FUNCTION ¡
6 ¡
APPROACH ¡-‑> ¡OBJECTIVE ¡FUNCTION ¡
7 ¡
APPROACH ¡-‑> ¡OBJECTIVE ¡FUNCTION ¡
8 ¡
APPROACH… ¡
9 ¡
APPROACH… ¡
10 ¡ Generate ¡ a ¡new ¡SOM ¡h ¡ Evaluate ¡h ¡ and ¡its ¡ neighbors ¡ Store ¡any ¡ subtle ¡HOM ¡ found ¡
h ¡:= ¡h’ ¡
APPROACH… ¡
11 ¡
APPROACH… ¡
12 ¡
APPROACH… ¡
13 ¡
APPROACH… ¡
14 ¡
APPROACH… ¡
15 ¡
EMPIRICAL ¡STUDIES ¡
16 ¡
EMPIRICAL ¡STUDIES ¡
17 ¡
EMPIRICAL ¡STUDIES… ¡
18 ¡
EMPIRICAL ¡STUDIES ¡-‑> ¡STUDY ¡#1 ¡-‑> ¡RQ1 ¡
19 ¡
Program ¡ GeneWc ¡ Local ¡ Data ¡Inter. ¡ Guided ¡ Test ¡Case ¡ Guided ¡ Restricted ¡ EnumeraWon ¡ Cruise ¡Java ¡ 76.1 ¡ 77.8 ¡ 80.7 ¡ 77.1 ¡ 34.8 ¡ Banking ¡ 30.9 ¡ 29.2 ¡ 30.8 ¡ 28.9 ¡ 27.1 ¡ Cruise ¡AspectJ ¡ 20.3 ¡ 29 ¡ 39.9 ¡ 33.2 ¡ 22.1 ¡ Movie ¡Rental ¡ 39.1 ¡ 59.8 ¡ 93.3 ¡ 15.3 ¡ 22 ¡ Ke[le ¡ 35.3 ¡ 55.1 ¡ 56.1 ¡ 57.7 ¡ 31.5 ¡ Coordinate ¡ 72.4 ¡ 200.9 ¡ 213.8 ¡ 223.3 ¡ 84.4 ¡ Elevator ¡ 13.7 ¡ 26 ¡ 24.1 ¡ 20.6 ¡ 19 ¡ Telecom ¡ 10.3 ¡ 20.5 ¡ 19 ¡ 19.9 ¡ 6.8 ¡ ¡XStream ¡ ¡ 0.4 ¡ 20 ¡ 11.4 ¡ 12 ¡ 13.4 ¡ Roman ¡ 28.6 ¡ 30.4 ¡ 35.4 ¡ 37.9 ¡ 41 ¡ Restricted ¡ Random ¡ 25.8 ¡ 23.3 ¡ 7 ¡ 4.7 ¡ 19.7 ¡ 27.5 ¡ 5.7 ¡ 4 ¡ 0.3 ¡ 16.7 ¡
EMPIRICAL ¡STUDIES ¡-‑> ¡STUDY ¡#1 ¡
20 ¡
EMPIRICAL ¡STUDIES ¡-‑> ¡STUDY ¡#1 ¡
21 ¡
EMPIRICAL ¡STUDIES ¡-‑> ¡STUDY ¡#1 ¡ ¡-‑> ¡RQ2 ¡
22 ¡
0 ¡ 10 ¡ 20 ¡ 30 ¡ 40 ¡ 50 ¡ 60 ¡ 70 ¡ 0k ¡ 2k ¡ 4k ¡ 6k ¡ 8k ¡ 10k ¡ 12k ¡ 14k ¡ 16k ¡ 18k ¡ 20k ¡ 22k ¡ 24k ¡ 26k ¡ 28k ¡ 30k ¡ 32k ¡ 34k ¡ 36k ¡ 38k ¡ 40k ¡ 42k ¡ 44k ¡ 46k ¡ 48k ¡ 50k ¡
Average ¡number ¡of ¡Subtle ¡HOMs ¡ Number ¡of ¡explored ¡dis-nct ¡HOMs ¡
Gene-c ¡ Local ¡ Data-‑Interac-on ¡Guided ¡ Test-‑Case ¡Guided ¡ Restricted ¡Random ¡ Restricted ¡Enumera-on ¡
EMPIRICAL ¡STUDIES ¡-‑> ¡STUDY ¡#1 ¡ ¡-‑> ¡RQ2 ¡
23 ¡
EMPIRICAL ¡STUDIES.. ¡
24 ¡
EMPIRICAL ¡STUDIES ¡-‑> ¡STUDY ¡#2 ¡-‑> ¡RQ1 ¡
25 ¡
0 ¡ 10 ¡ 20 ¡ 30 ¡ 40 ¡ 50 ¡ 60 ¡
Easiest-‑to-‑find ¡ Found ¡by ¡5 ¡ Found ¡by ¡4 ¡ Found ¡by ¡3 ¡ Found ¡by ¡2 ¡ Hardest-‑to-‑find ¡ Number ¡of ¡subtle ¡HOMs ¡ Type ¡of ¡subtle ¡HOMs ¡
EMPIRICAL ¡STUDIES… ¡
26 ¡
EMPIRICAL ¡STUDIES… ¡
27 ¡
EMPIRICAL ¡STUDIES ¡-‑> ¡STUDY ¡#5 ¡-‑> ¡RQ1 ¡
28 ¡
EMPIRICAL ¡STUDIES ¡-‑> ¡STUDY ¡#5 ¡-‑> ¡RQ1 ¡
29 ¡
0 ¡ 1000 ¡ 2000 ¡ 3000 ¡ 4000 ¡ 5000 ¡ 6000 ¡ 7000 ¡ 8000 ¡
Elevator ¡ Cruise ¡ ¡ Roman ¡ Xstream ¡ Telecom ¡ Banking ¡ KeSle ¡ Cruise ¡ (AspectJ) ¡ Movie ¡ Rental ¡
Number ¡of ¡subtle ¡HOMs ¡
Found ¡by ¡the ¡search ¡techniques ¡ Found ¡by ¡composing ¡subtle ¡HOMs ¡
EMPIRICAL ¡STUDIES ¡-‑> ¡STUDY ¡#1 ¡-‑> ¡RQ1 ¡
30 ¡
Program ¡ GeneWc ¡ Local ¡ Data ¡Inter. ¡ Guided ¡ Test ¡Case ¡ Guided ¡ Restricted ¡ EnumeraWon ¡ Cruise ¡Java ¡ 76.1 ¡ 77.8 ¡ 80.7 ¡ 77.1 ¡ 34.8 ¡ Banking ¡ 30.9 ¡ 29.2 ¡ 30.8 ¡ 28.9 ¡ 27.1 ¡ Cruise ¡AspectJ ¡ 20.3 ¡ 29 ¡ 39.9 ¡ 33.2 ¡ 22.1 ¡ Movie ¡Rental ¡ 39.1 ¡ 59.8 ¡ 93.3 ¡ 15.3 ¡ 22 ¡ Ke[le ¡ 35.3 ¡ 55.1 ¡ 56.1 ¡ 57.7 ¡ 31.5 ¡ Coordinate ¡ 72.4 ¡ 200.9 ¡ 213.8 ¡ 223.3 ¡ 84.4 ¡ Elevator ¡ 13.7 ¡ 26 ¡ 24.1 ¡ 20.6 ¡ 19 ¡ Telecom ¡ 10.3 ¡ 20.5 ¡ 19 ¡ 19.9 ¡ 6.8 ¡ ¡XStream ¡ ¡ 0.4 ¡ 20 ¡ 11.4 ¡ 12 ¡ 13.4 ¡ Roman ¡ 28.6 ¡ 30.4 ¡ 35.4 ¡ 37.9 ¡ 41 ¡ Restricted ¡ Random ¡ 25.8 ¡ 23.3 ¡ 7 ¡ 4.7 ¡ 19.7 ¡ 27.5 ¡ 5.7 ¡ 4 ¡ 0.3 ¡ 16.7 ¡
EMPIRICAL ¡STUDIES ¡-‑> ¡STUDY ¡#5 ¡-‑> ¡RQ1 ¡
31 ¡
EMPIRICAL ¡STUDIES ¡-‑> ¡STUDY ¡#5 ¡-‑> ¡RQ1 ¡
32 ¡
EMPIRICAL ¡STUDIES… ¡
33 ¡
EMPIRICAL ¡STUDIES ¡-‑> ¡STUDY ¡#5 ¡-‑> ¡RQ2 ¡
34 ¡
0 ¡ 50 ¡ 100 ¡ 150 ¡ 200 ¡ 250 ¡ 300 ¡ 350 ¡ 400 ¡ 450 ¡
3 ¡ 4 ¡ 5 ¡+ ¡ 3 ¡ 4 ¡ 5 ¡+ ¡ 3 ¡ 4 ¡ 5 ¡+ ¡ 3 ¡ 4 ¡ 5 ¡+ ¡ 3 ¡ 4 ¡ 5 ¡+ ¡ 3 ¡ 4 ¡ 5 ¡+ ¡ Restricted ¡ Enumera-on ¡ Local ¡ ¡ Data-‑ Interac-on ¡ Guided ¡ Test-‑Case ¡ Guided ¡ Restricted ¡ Random ¡ Gene-c ¡ Number ¡of ¡subtle ¡HOMs ¡
Fully ¡Decomposable ¡ Par-ally ¡Decomposable ¡ ¡ Not ¡Decomposable ¡
CONCLUSIONS ¡
35 ¡
CONCLUSIONS… ¡
36 ¡
7th ¡ ¡IEEE ¡Interna-onal ¡Conference ¡on ¡So@ware ¡Tes-ng, ¡Verifica-on ¡and ¡Valida-on, ¡Muta-on, ¡ 2014 ¡
23rd ¡Conference ¡on ¡Gene-c ¡and ¡Evolu-onary ¡Computa-on, ¡2014 ¡ ¡
Symposium ¡on ¡So@ware ¡Reliability ¡Engineering, ¡2013 ¡
Interna-onal ¡Symposium ¡on ¡So@ware ¡Reliability ¡Engineering, ¡2012 ¡
Interna-onal ¡Conference ¡on ¡Electronics, ¡Circuits ¡and ¡Systems, ¡2003 ¡
PUBLICATIONS ¡
37 ¡