-
Notifications
You must be signed in to change notification settings - Fork 16
Open
Description
Hi @andre15silva,
I've just tried flacoco on Csv-10 from the Defects4J benchmark and it fails on my machine. Here's the command to reproduce this issue:
java -cp target/flacoco-1.0.6-SNAPSHOT-jar-with-dependencies.jar fr.spoonlabs.flacoco.cli.FlacocoMain \
--binJavaDir="/tmp/Csv-10b/target/classes" \
--binTestDir="/tmp/Csv-10b/target/test-classes" \
--classpath="$D4J_HOME/framework/projects/Csv/lib/junit/junit/4.11/junit-4.11.jar:$D4J_HOME/framework/projects/Csv/lib/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:$D4J_HOME/framework/projects/Csv/lib/commons-io/commons-io/2.2/commons-io-2.2.jar:$D4J_HOME/framework/projects/Csv/lib/com/h2database/h2/1.3.168/h2-1.3.168.jar:/tmp/Csv-10b/target/classes:/tmp/Csv-10b/target/test-classes:$D4J_HOME/framework/projects/lib/junit-4.11.jar:$D4J_HOME/framework/projects/Csv/lib/com/csvreader/1.0/javacsv.jar:$D4J_HOME/framework/projects/Csv/lib/com/generationjava/io/1.0/gj-csv-1.0.jar:$D4J_HOME/framework/projects/Csv/lib/com/h2database/h2/1.4.180/h2-1.4.180.jar:$D4J_HOME/framework/projects/Csv/lib/com/h2database/h2/1.4.181/h2-1.4.181.jar:$D4J_HOME/framework/projects/Csv/lib/com/h2database/h2/1.4.182/h2-1.4.182.jar:$D4J_HOME/framework/projects/Csv/lib/com/h2database/h2/1.4.196/h2-1.4.196.jar:$D4J_HOME/framework/projects/Csv/lib/com/h2database/h2/1.4.198/h2-1.4.198.jar:$D4J_HOME/framework/projects/Csv/lib/com/opencsv/4.0/opencsv-4.0.jar:$D4J_HOME/framework/projects/Csv/lib/commons-io/commons-io/2.4/commons-io-2.4.jar:$D4J_HOME/framework/projects/Csv/lib/commons-io/commons-io/2.5/commons-io-2.5.jar:$D4J_HOME/framework/projects/Csv/lib/commons-io/commons-io/2.6/commons-io-2.6.jar:$D4J_HOME/framework/projects/Csv/lib/junit/junit/3.8.1/junit-3.8.1.jar:$D4J_HOME/framework/projects/Csv/lib/junit/junit/4.10/junit-4.10.jar:$D4J_HOME/framework/projects/Csv/lib/junit/junit/4.12/junit-4.12.jar:$D4J_HOME/framework/projects/Csv/lib/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4.jar:$D4J_HOME/framework/projects/Csv/lib/org/apache/commons/commons-lang3/3.6/commons-lang3-3.6.jar:$D4J_HOME/framework/projects/Csv/lib/org/apache/commons/commons-lang3/3.7/commons-lang3-3.7.jar:$D4J_HOME/framework/projects/Csv/lib/org/apache/commons/commons-lang3/3.8.1/commons-lang3-3.8.1.jar:$D4J_HOME/framework/projects/Csv/lib/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar:$D4J_HOME/framework/projects/Csv/lib/org/mockito/mockito-all/1.10.19/mockito-all-1.10.19.jar:$D4J_HOME/framework/projects/Csv/lib/org/mockito/mockito-all/1.9.5/mockito-all-1.9.5.jar:$D4J_HOME/framework/projects/Csv/lib/org/openjdk/jmh/1.21/jmh-core-1.21.jar:$D4J_HOME/framework/projects/Csv/lib/org/skife/csv/1.0/csv-1.0.jar:$D4J_HOME/framework/projects/Csv/lib/org/supercsv/2.4.0/super-csv-2.4.0.jar" \
--format=CSV \
--includeZeros \
--jacocoIncludes="org.apache.commons.csv.Assertions:org.apache.commons.csv.Constants:org.apache.commons.csv.CSVFormat:org.apache.commons.csv.CSVPrinter:org.apache.commons.csv.Quote" \
--junitClasspath="$D4J_HOME/framework/projects/lib/junit-4.11.jar" \
--output="/tmp/Csv-10b/flacoco.csv" \
--projectpath="/tmp/Csv-10b" \
--srcJavaDir="/tmp/Csv-10b/src/main/java" \
--srcTestDir="/tmp/Csv-10b/src/test/java" \
--testDetectionStrategy=CLASSLOADER \
--testRunnerVerbose \
--junit4tests="org.apache.commons.csv.CSVFormatTest:org.apache.commons.csv.CSVParserTest:org.apache.commons.csv.CSVPrinterTest:org.apache.commons.csv.CSVRecordTest" \
-vwhich throws the following exception:
[0] INFO Flacoco - Running Flacoco...
[5] DEBUG SpectrumRunner - Running spectrum-based fault localization...
[5] DEBUG SpectrumRunner - FlacocoConfig{workspace='/tmp/flacoco/.', projectPath='/tmp/Csv-10b', srcJavaDir=[/tmp/Csv-10b/src/main/java], srcTestDir=[/tmp/Csv-10b/src/test/java], binJavaDir=[/tmp/Csv-10b/target/classes], binTestDir=[/tmp/Csv-10b/target/test-classes], classpath='/tmp/defects4j/framework/projects/Csv/lib/junit/junit/4.11/junit-4.11.jar:/tmp/defects4j/framework/projects/Csv/lib/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar:/tmp/defects4j/framework/projects/Csv/lib/commons-io/commons-io/2.2/commons-io-2.2.jar:/tmp/defects4j/framework/projects/Csv/lib/com/h2database/h2/1.3.168/h2-1.3.168.jar:/tmp/Csv-10b/target/classes:/tmp/Csv-10b/target/test-classes:/tmp/defects4j/framework/projects/lib/junit-4.11.jar:/tmp/defects4j/framework/projects/Csv/lib/com/csvreader/1.0/javacsv.jar:/tmp/defects4j/framework/projects/Csv/lib/com/generationjava/io/1.0/gj-csv-1.0.jar:/tmp/defects4j/framework/projects/Csv/lib/com/h2database/h2/1.4.180/h2-1.4.180.jar:/tmp/defects4j/framework/projects/Csv/lib/com/h2database/h2/1.4.181/h2-1.4.181.jar:/tmp/defects4j/framework/projects/Csv/lib/com/h2database/h2/1.4.182/h2-1.4.182.jar:/tmp/defects4j/framework/projects/Csv/lib/com/h2database/h2/1.4.196/h2-1.4.196.jar:/tmp/defects4j/framework/projects/Csv/lib/com/h2database/h2/1.4.198/h2-1.4.198.jar:/tmp/defects4j/framework/projects/Csv/lib/com/opencsv/4.0/opencsv-4.0.jar:/tmp/defects4j/framework/projects/Csv/lib/commons-io/commons-io/2.4/commons-io-2.4.jar:/tmp/defects4j/framework/projects/Csv/lib/commons-io/commons-io/2.5/commons-io-2.5.jar:/tmp/defects4j/framework/projects/Csv/lib/commons-io/commons-io/2.6/commons-io-2.6.jar:/tmp/defects4j/framework/projects/Csv/lib/junit/junit/3.8.1/junit-3.8.1.jar:/tmp/defects4j/framework/projects/Csv/lib/junit/junit/4.10/junit-4.10.jar:/tmp/defects4j/framework/projects/Csv/lib/junit/junit/4.12/junit-4.12.jar:/tmp/defects4j/framework/projects/Csv/lib/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4.jar:/tmp/defects4j/framework/projects/Csv/lib/org/apache/commons/commons-lang3/3.6/commons-lang3-3.6.jar:/tmp/defects4j/framework/projects/Csv/lib/org/apache/commons/commons-lang3/3.7/commons-lang3-3.7.jar:/tmp/defects4j/framework/projects/Csv/lib/org/apache/commons/commons-lang3/3.8.1/commons-lang3-3.8.1.jar:/tmp/defects4j/framework/projects/Csv/lib/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar:/tmp/defects4j/framework/projects/Csv/lib/org/mockito/mockito-all/1.10.19/mockito-all-1.10.19.jar:/tmp/defects4j/framework/projects/Csv/lib/org/mockito/mockito-all/1.9.5/mockito-all-1.9.5.jar:/tmp/defects4j/framework/projects/Csv/lib/org/openjdk/jmh/1.21/jmh-core-1.21.jar:/tmp/defects4j/framework/projects/Csv/lib/org/skife/csv/1.0/csv-1.0.jar:/tmp/defects4j/framework/projects/Csv/lib/org/supercsv/2.4.0/super-csv-2.4.0.jar', customJUnitClasspath='/tmp/defects4j/framework/projects/lib/junit-4.11.jar', customJacocoClasspath='null', mavenHome='/Users/jose/.m2/repository/', coverTests=false, testRunnerVerbose=true, testRunnerTimeoutInMs=1000000, testRunnerJVMArgs='null', threshold=0.0, includeZeros=true, complianceLevel=8, testDetectionStrategy=CLASSLOADER, ignoredTests=[], jUnit4Tests=[org.apache.commons.csv.CSVFormatTest:org.apache.commons.csv.CSVParserTest:org.apache.commons.csv.CSVPrinterTest:org.apache.commons.csv.CSVRecordTest], jUnit5Tests=[], jacocoIncludes=[org.apache.commons.csv.Assertions:org.apache.commons.csv.Constants:org.apache.commons.csv.CSVFormat:org.apache.commons.csv.CSVPrinter:org.apache.commons.csv.Quote], jacocoExcludes=[], family=SPECTRUM_BASED, spectrumFormula=OCHIAI, computeSpoonResults=false}
[7] DEBUG TestDetector - Computing tests from config.
java.lang.ArrayIndexOutOfBoundsException: 1
at fr.spoonlabs.flacoco.core.test.TestDetector.lambda$computeTests$0(TestDetector.java:56)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
at java.util.Iterator.forEachRemaining(Iterator.java:116)
at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:566)
at fr.spoonlabs.flacoco.core.test.TestDetector.computeTests(TestDetector.java:58)
at fr.spoonlabs.flacoco.core.test.TestDetector.getTests(TestDetector.java:39)
at fr.spoonlabs.flacoco.localization.spectrum.SpectrumRunner.computeCoverageMatrix(SpectrumRunner.java:64)
at fr.spoonlabs.flacoco.localization.spectrum.SpectrumRunner.run(SpectrumRunner.java:42)
at fr.spoonlabs.flacoco.api.Flacoco.run(Flacoco.java:31)
at fr.spoonlabs.flacoco.cli.FlacocoMain.call(FlacocoMain.java:157)
at fr.spoonlabs.flacoco.cli.FlacocoMain.call(FlacocoMain.java:27)
at picocli.CommandLine.executeUserObject(CommandLine.java:2041)
at picocli.CommandLine.access$1500(CommandLine.java:148)
at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2461)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2453)
at picocli.CommandLine$RunLast.handle(CommandLine.java:2415)
at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2273)
at picocli.CommandLine$RunLast.execute(CommandLine.java:2417)
at picocli.CommandLine.execute(CommandLine.java:2170)
at fr.spoonlabs.flacoco.cli.FlacocoMain.main(FlacocoMain.java:148)
$ javac -version
javac 1.8.0_292
$ java -version
openjdk version "1.8.0_292"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_292-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.292-b10, mixed mode)Metadata
Metadata
Assignees
Labels
No labels