有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (6) 个答案

  1. # 1 楼答案

    确保JUnit。jar位于类路径中,然后从控制台调用命令行运行程序

    java org.junit.runner.JUnitCore [test class name]

    参考:junit FAQ

  2. # 2 楼答案

    @lzap给出的答案是一个很好的解决方案。不过,我想补充一点,你应该补充一点。到类路径,以便不遗漏当前目录,从而遗漏您自己的类。这在一些平台上发生在我身上。因此,JUnit4的更新版本。x将是:

    java -cp .:/usr/share/java/junit.jar org.junit.runner.JUnitCore [test class name]
    
  3. # 3 楼答案

    对于JUnit 4.12,以下内容不适用于我:

    java -cp .:/usr/share/java/junit.jar org.junit.runner.JUnitCore [test class name]
    

    Apparently,从JUnit 4.11开始,您还应该在类路径中包含hamcrest-core.jar

    java -cp .:/usr/share/java/junit.jar:/usr/share/java/hamcrest-core.jar org.junit.runner.JUnitCore [test class name]
    
  4. # 4 楼答案

    对于junit5。x它是:

    java -jar junit-platform-console-standalone-<version>.jar <Options>
    

    请在https://stackoverflow.com/a/52373592/1431016查找简要摘要,并在https://junit.org/junit5/docs/current/user-guide/#running-tests-console-launcher查找完整详细信息

    对于junit4。X这真的是:

    java -cp .:/usr/share/java/junit.jar org.junit.runner.JUnitCore [test class name]
    

    但是如果您使用的是JUnit3。X注意类名不同:

    java -cp .:/usr/share/java/junit.jar junit.textui.TestRunner [test class name]
    

    您可能需要在类路径中添加更多JAR或目录以及类文件,并使用分号(Windows)或冒号(UNIX/Linux)分隔这些JAR或目录。这取决于你的环境

    编辑:我添加了当前目录作为示例。取决于您的环境和构建应用程序的方式(可以是bin/或build/甚至my_application.jar等)。注意Java 6+确实支持类路径中的globs,您可以执行以下操作:

    java -cp lib/*.jar:/usr/share/java/junit.jar ...
    

    希望能有帮助编写测试:-)

  5. # 5 楼答案

    Maven路

    如果使用Maven,可以运行以下命令来运行所有测试用例:

    mvn clean test
    

    或者,您可以按如下所示运行特定测试

    mvn clean test -Dtest=your.package.TestClassName
    mvn clean test -Dtest=your.package.TestClassName#particularMethod
    

    如果希望在控制台中查看堆栈跟踪(如果有),而不是在target\surefire reports文件夹中查看报告文件,请设置用户属性surefire。将文件设置为false。例如:

    mvn clean test -Dtest=your.package.TestClassName -Dsurefire.useFile=false
    

    渐变方式

    如果使用Gradle,则可以运行以下命令来运行所有测试用例:

    gradle test
    

    或者,您可以按如下所示运行特定测试

    gradle test --tests your.package.TestClassName
    gradle test --tests your.package.TestClassName.particularMethod
    

    如果您想要更多的信息,您可以考虑诸如STACTr踪迹、或-Ifor或-Debug等选项。p>

    例如,当您使用info日志记录级别--info运行Gradle时,它将在运行时向您显示每个测试的结果。如果有任何异常,它将向您显示堆栈跟踪,指出问题所在

    gradle test --info
    

    如果您想查看整体测试结果,可以在浏览器中打开报告,例如(在Ubuntu中使用Google Chrome打开报告):

    google-chrome build/reports/tests/index.html
    

    蚂蚁路

    一旦您设置了Ant构建文件构建。xml,您可以从命令行运行JUnit测试用例,如下所示:

    ant -f build.xml <Your JUnit test target name>
    

    您可以按照下面的链接阅读有关如何在Ant构建文件中配置JUnit测试的更多信息: https://ant.apache.org/manual/Tasks/junit.html

    正常方式

    如果不使用Maven、Gradle或Ant,可以按照以下方法操作:

    首先,您需要编译您的测试用例。例如(在Linux中):

    javac -d /absolute/path/for/compiled/classes -cp /absolute/path/to/junit-4.12.jar /absolute/path/to/TestClassName.java
    

    然后运行测试用例。例如:

    java -cp /absolute/path/for/compiled/classes:/absolute/path/to/junit-4.12.jar:/absolute/path/to/hamcrest-core-1.3.jar org.junit.runner.JUnitCore your.package.TestClassName
    
  6. # 6 楼答案

    在windows中是这样的

    java -cp .;/path/junit.jar org.junit.runner.JUnitCore TestClass[不带.class扩展名的测试类名]

    例如: c:\>java -cp .;f:/libraries/junit-4.8.2 org.junit.runner.JUnitCore TestSample1 TestSample2 ...等等,如果一个人有多个测试类

    -cp代表类路径和点(.)表示分号(;)时的现有类路径将附加的给定jar追加到类路径,如上面的示例所示,junit-4.8.2现在可以在类路径中执行JUnitCore类,我们在这里使用该类来执行测试类

    上面的命令行语句帮助您从命令提示符(即MSDos)执行junit(版本4+)测试

    注意:JUnitCore是一个用于执行junit测试的外观,这个外观包含在junit的4+版本中