首页 > 解决方案 > 如何在命令提示符下使用 junit 运行测试(Gherkin 的标记场景)?

问题描述

我在 IntelliJ 中有一个 Gherkin 脚本,其中一个功能下有几个场景。一般结构如下所示:

Feature AAA
    @sample tag
    Scenario A

    @anothertag
    Scenario B

    @thirdtag
    Scenario C

每个场景本质上都是一个我想要测试的测试用例,并被赋予一个唯一的标签。我想通过引用该测试用例的标签(例如场景)从命令提示符运行特定的测试用例。为简单起见,假设我给我的场景 A 一个名为“sampletag”的标签。注意:我使用 junit 4.12 从命令提示符执行测试用例。

问题:我不断收到相同的错误消息 java.lang.IllegalArgumentException: Could not find class [sampletag] Caused by: java.lang.ClassNotFoundException: sampletag

我尝试查看 .jar 文件的路径并将该路径包含在命令中。我也怀疑我引用标签(场景)的方式不正确。请参阅我的命令提示符以获取更多信息。

C:\Users\Myself> java -cp fileA\repo\junit\junit\4.12\junit-4.12.jar org.junit.runner.JUnitCore sampletag

使用上述代码在命令提示符下按 Enter 后出现的错误是:

    There was 1 failure:
    1) initializationError(org.junit.runner.JUnitCommandLineParseResult)
    java.lang.IllegalArgumentException: Could not find class [sampletag]
            at org.junit.runner.JUnitCommandLineParseResult.parseParameters(JUnitCommandLineParseResult.java:102)
            at org.junit.runner.JUnitCommandLineParseResult.parseArgs(JUnitCommandLineParseResult.java:50)
            at org.junit.runner.JUnitCommandLineParseResult.parse(JUnitCommandLineParseResult.java:44)
            at org.junit.runner.JUnitCore.runMain(JUnitCore.java:72)
            at org.junit.runner.JUnitCore.main(JUnitCore.java:36)
    Caused by: java.lang.ClassNotFoundException: sampletag
            at java.net.URLClassLoader.findClass(Unknown Source)
            at java.lang.ClassLoader.loadClass(Unknown Source)
            at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
            at java.lang.ClassLoader.loadClass(Unknown Source)
            at java.lang.Class.forName0(Native Method)
            at java.lang.Class.forName(Unknown Source)
            at org.junit.internal.Classes.getClass(Classes.java:16)
            at org.junit.runner.JUnitCommandLineParseResult.parseParameters(JUnitCommandLineParseResult.java:100)
            ... 4 more

FAILURES!!!
Tests run: 1,  Failures: 1

标签: javaintellij-ideajunitcucumbergherkin

解决方案


推荐阅读