Defects4J Dissection
Defects4J Dissection presents data to help researchers and practitioners to better understand the Defects4J bug dataset. It is the open-science appendix of "Dissection of a Bug Dataset: Anatomy of 395 Patches from Defects4J" .
@inproceedings{defects4J-dissection,
title = {{Dissection of a Bug Dataset: Anatomy of 395 Patches from Defects4J}},
author = {Sobreira, Victor and Durieux, Thomas and Madeiral, Fernanda and Monperrus, Martin and Maia, Marcelo A.}
booktitle = {Proceedings of SANER},
year = {2018}
}
1
2
3
4
5
6
2
3
4
5
6
Main files:
- The file
defects4j-bugs.json
contains all the extracted information. - The file defects4j-patch.md gives link to the buggy and patched version as well as the diff.
- The website http://program-repair.github.io/defects4j-dissection/ is a user interface that presents the information contained in
defects4j-bugs.json
in a user-friendly manner.
defects4j-bugs.json format
[
{
"project":"Chart",
"bugId":8,
"activeSynStruct":1,
"activePat":2,
"repairTools":1,
"files":1,
"linesAdd":0,
"linesRem":0,
"linesMod":1,
"sizeInLines":1,
"chunks":1,
"spreadAllLines":0,
"spreadCodeOnly":0,
"mcParValChange":true,
...
// more repair operations ("name": true)
"Observations":"Changes params passed to constructor.",
"program":"jfreechart",
"revisionId":"1085",
"failingTests":[
{
"className":" org.jfree.data.time.junit.WeekTests",
"methodName":"testConstructor",
"error":"junit.framework.AssertionFailedError",
"message":"expected:<35> but was:< 34>"
}
]
"diff":"git diff of the source"
}
]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32