Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

utbot-cli: Hit java.lang.NullPointerException: relativePathForClass.parent must not be null while running when running BunchTestGeneratorCommand #2672

Open
Labels
comp-cliIssue related to CLI ctg-bugIssue is a bug
@zerowsw

Description

Description

While using utbot-cli to generate unit tests for open source projects, we hit the issue like:
java.lang.NullPointerException: relativePathForClass.parent must not be null while running. In https://github.com/UnitTestBot/UTBotJava/blob/main/utbot-cli/src/main/kotlin/org/utbot/cli/ClassLoaderUtils.kt#L18, it tries to find parent directory of relativePathForClass and failed. This happens when some compiled maven projects have .class files right under /target/classes directory without any parent directories.

To Reproduce

Steps to reproduce the behavior:

  1. clone https://github.com/fiji/IO to local
  2. use java 8 to run mvn dependency:build-classpath --define mdep.outputFile=/tmp/classpath.txt to store dependency classpath into a file.
  3. use java 8 to run mvn compile and compile the project
  4. compile UTBotJava and get utbot-cli.jar
  5. Run bunchGenerate command through code like
    java --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.ref=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.locks=ALL-UNNAMED --add-opens=java.base/jdk.internal.icu.util=ALL-UNNAMED --add-opens=java.base/sun.security.util=ALL-UNNAMED --add-opens=java.logging/java.util.logging=ALL-UNNAMED -jar /<Relative Path to utbot-cli>/utbot-cli.jar bunchGenerate --test-framework junit5 --classpath /<Relative path to IO project >/src/target/classes --classpathFile /tmp/classpath.txt --output <Any output path>

Expected behavior

Tests are supposed to be generated.

Actual behavior

hit NullPointerException

Visual proofs (screenshots, logs, images)


java.lang.NullPointerException: relativePathForClass.parent must not be null
--
11621 | at org.utbot.cli.ClassLoaderUtilsKt.loadClassesFromPath(ClassLoaderUtils.kt:18)
11622 | at org.utbot.cli.BunchTestGeneratorCommand.run(BunchTestGeneratorCommand.kt:68)
11623 | at com.github.ajalt.clikt.parsers.Parser.parse(Parser.kt:204)
11624 | at com.github.ajalt.clikt.parsers.Parser.parse(Parser.kt:213)
11625 | at com.github.ajalt.clikt.parsers.Parser.parse(Parser.kt:17)
11626 | at com.github.ajalt.clikt.core.CliktCommand.parse(CliktCommand.kt:396)
11627 | at com.github.ajalt.clikt.core.CliktCommand.parse$default(CliktCommand.kt:393)
11628 | at com.github.ajalt.clikt.core.CliktCommand.main(CliktCommand.kt:411)
11629 | at com.github.ajalt.clikt.core.CliktCommand.main(CliktCommand.kt:436)
11630 | at org.utbot.cli.ApplicationKt.main(Application.kt:31)

Environment

  1. https://github.com/fiji/IO was compiled with java8
  2. java 17 was used to run utbot-cli
  3. Tested on macOS, M1 (AArch64 architecture)

Additional context

Add any other context about the problem here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    comp-cliIssue related to CLI ctg-bugIssue is a bug

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

        AltStyle によって変換されたページ (->オリジナル) /