botsing icon indicating copy to clipboard operation
botsing copied to clipboard

CrashReproduction not finding JDK

Open ltboye opened this issue 6 years ago • 1 comments

Characteristics

  • Issue Type: bug
  • Reproducibility: always
  • Severity: major
  • Tool/Service/Component: botsing-reproduction-1.0.7
  • Execution Environment: Windows 10
  • Reporter: Lars Thomas Boye

Description

Running botsing-reproduction-1.0.7 as a command-line tool with a stacktrace for TelluCloud service FilterStore, it appears to generate code which recreates the crash, but fails "Compiling and checking tests", failing to find the JDK. JAVA_HOME is set correctly, pointing to a JDK, and path includes %JAVA_HOME%\bin.

End of botsing output follows:

13:56:12.850 [main] INFO e.s.b.g.s.GuidedGeneticAlgorithm - Best fitness in the final population is: 0.0. PT: 520 seconds 13:56:12.853 [main] INFO e.s.b.g.s.GuidedGeneticAlgorithm - ZeroFitness : 0 / 0 Finished! 13:56:12.853 [main] INFO e.s.b.g.s.GuidedGeneticAlgorithm - The search process is finished. 13:56:12.855 [main] INFO e.s.b.g.s.GuidedGeneticAlgorithm - Best fitness in the final population is: 0.0. PT: 520 seconds 13:56:12.857 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - * The target crash is covered. The generated test is: DataGroupNode dataGroupNode0 = new DataGroupNode(); DataGroupNode dataGroupNode1 = (DataGroupNode)dataGroupNode0.cloneNode(); DataGroupNode dataGroupNode2 = (DataGroupNode)dataGroupNode0.cloneNode(); DataGroupNode dataGroupNode3 = dataGroupNode0.addNodeRaw(dataGroupNode0); DataGroupNode dataGroupNode4 = dataGroupNode3.addNodeRaw(dataGroupNode1); DataHandleImpl dataHandleImpl0 = new DataHandleImpl(dataGroupNode4); DataGroupNode dataGroupNode5 = dataGroupNode0.addNodeRaw(dataGroupNode3); DataHandleImpl dataHandleImpl1 = new DataHandleImpl(dataGroupNode1); String string0 = "l@"; DataHandleImpl dataHandleImpl2 = new DataHandleImpl(dataGroupNode0); DataHandleImpl dataHandleImpl3 = new DataHandleImpl(dataGroupNode1); DataGroupNode dataGroupNode6 = new DataGroupNode(); dataGroupNode6.addNodeRaw(dataGroupNode4); DataValueNode dataValueNode0 = new DataValueNode(dataGroupNode5.name); DataGroupNode dataGroupNode7 = dataGroupNode1.addNodeRaw(dataValueNode0); MultiLevelHandle multiLevelHandle0 = new MultiLevelHandle(dataGroupNode7, dataGroupNode4.name); String string1 = ""; DataValueNode dataValueNode1 = multiLevelHandle0.getValueNode(string1); DataHandleImpl dataHandleImpl4 = new DataHandleImpl(dataValueNode1); String string2 = "l@"; DataHandleImpl dataHandleImpl5 = new DataHandleImpl(dataValueNode1); String string3 = "?^ ZI99|.nqpd]c9>"; String string4 = "?^ ZI99|.nqpd]c9>"; String string5 = ""; multiLevelHandle0.getString(dataGroupNode2.name); String string6 = null; String string7 = "Can't add DataNode which has meta-data"; int int0 = 2; MetaItemNode.DataType metaItemNode_DataType0 = MetaItemNode.DataType.BOOLEAN; String string8 = "RG!(A_(AD{SKLefwDH"; String string9 = "TkraRhy-<O"; MetaItemNode.DataType metaItemNode_DataType1 = MetaItemNode.DataType.BOOLEAN; ParsedExpr parsedExpr0 = new ParsedExpr(string3, string9, int0, metaItemNode_DataType0); String string10 = "DataHandle node is DataValueNode"; String string11 = "XdV/Vo,0:-10zD'C)"; String string12 = ""; String string13 = "]Gvl%m9|[4z;"; dataHandleImpl3.addDataSubscriber(string13, string11, string5, (DataHandle.DataUpdateSubscriber) parsedExpr0); dataHandleImpl2.addNode(dataGroupNode2);

13:56:12.857 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - 1 thrown exception(s) are detected in the solution: 13:56:12.858 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - no.tellu.lib.data.DataNotFoundException 13:56:12.859 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - no.tellu.lib.data.DataValueNode.getString(DataValueNode.java:317) 13:56:12.860 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - no.tellu.lib.data.DataHandleImpl.getString(DataHandleImpl.java:443) 13:56:12.861 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - sun.reflect.GeneratedMethodAccessor24.invoke(Unknown Source) 13:56:12.867 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 13:56:12.868 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - java.lang.reflect.Method.invoke(Unknown Source) 13:56:12.871 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - org.evosuite.testcase.statements.MethodStatement$1.execute(MethodStatement.java:257) 13:56:12.871 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - org.evosuite.testcase.statements.AbstractStatement.exceptionHandler(AbstractStatement.java:169) 13:56:12.872 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - org.evosuite.testcase.statements.MethodStatement.execute(MethodStatement.java:220) 13:56:12.873 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - org.evosuite.testcase.execution.TestRunnable.executeStatements(TestRunnable.java:307) 13:56:12.873 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - org.evosuite.testcase.execution.TestRunnable.call(TestRunnable.java:213) 13:56:12.874 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - org.evosuite.testcase.execution.TestRunnable.call(TestRunnable.java:55) 13:56:12.875 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - java.util.concurrent.FutureTask.run(Unknown Source) 13:56:12.876 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 13:56:12.878 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 13:56:12.879 [main] INFO e.s.b.t.s.BotsingIndividualStrategy - java.lang.Thread.run(Unknown Source) 13:56:12.886 [main] INFO e.s.b.reproduction.CrashReproduction - * Minimizing test suite 13:56:12.942 [main] INFO e.s.b.reproduction.CrashReproduction - * Compiling and checking tests 13:56:12.954 [main] ERROR e.s.b.reproduction.CrashReproduction - No Java compiler is available. Make sure to run EvoSuite with the JDK and not the JRE.You can try to setup the JAVA_HOME system variable to point to it, as well as to make sure that the PATH variable points to the JDK before any JRE. Exception in thread "main" java.lang.RuntimeException: No Java compiler is available. Make sure to run EvoSuite with the JDK and not the JRE.You can try to setup the JAVA_HOME system variable to point to it, as well as to make sure that the PATH variable points to the JDK before any JRE. at eu.stamp.botsing.reproduction.CrashReproduction.compileAndCheckTests(CrashReproduction.java:223) at eu.stamp.botsing.reproduction.CrashReproduction.postProcessTests(CrashReproduction.java:181) at eu.stamp.botsing.reproduction.CrashReproduction.generateCrashReproductionTests(CrashReproduction.java:125) at eu.stamp.botsing.reproduction.CrashReproduction.execute(CrashReproduction.java:72) at eu.stamp.botsing.Botsing.parseCommandLine(Botsing.java:91) at eu.stamp.botsing.Botsing.main(Botsing.java:213)

ltboye avatar Oct 14 '19 12:10 ltboye

Hello @ltboye,

Unfortunately, I cannot reproduce this with any of my cases. The compilation part is done in the EvoSuite part, and I could not find any issue related to this in the EvoSuite repository, as well.

pderakhshanfar avatar Nov 15 '19 15:11 pderakhshanfar