0

スレッド "メイン" cucumber.runtime.CucumberException: java.lang.AbstractMethodError: cucumber.runtime.java.picocontainer.PicoFactory.addClass(Ljava/lang/Class;)V での例外 cucumber.runtime.java.JavaBackend.addStepDefinition(JavaBackend) .java:154) cucumber.runtime.java.MethodScanner.scan(MethodScanner.java:68) で cucumber.runtime.java.MethodScanner.scan(MethodScanner.java:41) で cucumber.runtime.java.JavaBackend.loadGlue( JavaBackend.java:86) cucumber.runtime.Runtime.(Runtime.java:91) cucumber.runtime.Runtime.(Runtime.java:69) cucumber.runtime.Runtime.(Runtime.java:65) キュウリ.api.cli.Main.run(Main.java:35) at cucumber.api.cli.Main.main(Main.java:18) 原因: java.lang.AbstractMethodError: cucumber.runtime.java.picocontainer.PicoFactory .addClass(Ljava/言語/クラス;)V at cucumber.runtime.java.JavaBackend.addStepDefinition(JavaBackend.java:149) ... 8 もっと見る

4

1 に答える 1

0

問題は、キュウリがグルー ライブラリを見つけられないことです。コマンドライン ランナーは、CLI の構文規則に従っていないことを示唆するスタック トレースにあります。次に例を示します。

mvn clean test -Dcucumber.options="--tags @search --monochrome --plugin pretty:STDOUT --plugin html:target/cucumber-html-report --plugin json:target/cucumber.json --glue steps --glue runsupport classpath:features"

キーワードの前の二重ダッシュ文字に注意してください。また、2 つのグルー パスがあるため、2 つの --glue 句があることにも注意してください。また、2 つの -glue パスのパッケージ名のみが指定されていることにも注意してください。

さらに、 --plugin pretty:STDOUT で STDOUT を指定する必要があることに注意してください。

最後に、features キーワードが完全に削除されたことに注意してください。最後に (キーワードなしで) 指定されたパスは、フィーチャー ファイルの場所を cucumber-jvm に伝えます。

これを間違えた場合、cucumber-jvm は、直接知っている不可解なエラー メッセージを表示することに注意してください。使い方はこちらで解説しています。

ところで、クラスパス: この場合、機能の Maven デフォルト クラスパスを参照します。

src/test/resources/

今後助けが必要な場合は、問題を再現するために必要な最小限のコードを投稿してください。あなたの脳はネットワークに接続されたデバイスではないことを忘れないでください。:-)

于 2016-07-31T17:55:21.060 に答える