2016-07-29 16 views
0

Exception in thread "main" cucumber.runtime.CucumberException: java.lang.AbstractMethodError: cucumber.runtime.java.picocontainer.PicoFactory.addClass(Ljava/lang/Class;)V at cucumber.runtime.java.JavaBackend.addStepDefinition(JavaBackend.java:154) at cucumber.runtime.java.MethodScanner.scan(MethodScanner.java:68) at cucumber.runtime.java.MethodScanner.scan(MethodScanner.java:41) at cucumber.runtime.java.JavaBackend.loadGlue(JavaBackend.java:86) at cucumber.runtime.Runtime.(Runtime.java:91) at cucumber.runtime.Runtime.(Runtime.java:69) at cucumber.runtime.Runtime.(Runtime.java:65) at cucumber.api.cli.Main.run(Main.java:35) at cucumber.api.cli.Main.main(Main.java:18) Caused by: java.lang.AbstractMethodError: cucumber.runtime.java.picocontainer.PicoFactory.addClass(Ljava/lang/Class;)V at cucumber.runtime.java.JavaBackend.addStepDefinition(JavaBackend.java:149) ... 8 moreページオブジェクトモデルを設計するときにBDDキュウリSeleniumを試しているときにこのエラーが発生する

+0

ようこそ。時間をかけてstackoverflow.com/help/how-to-askを読んでください。それはあなたが(うまくいけば)良い答えを出すだろう固体の質問を作るのを助けるでしょう。また、問題を示す最小限のコードと、それを解決するために行ったことを含める必要があります。 – orde

+1

これは、私が見た中で最も良いスタックオーバーフローの質問の一つではありません。私のヒントは、あなたの質問をバグのように扱うことです。何が起こるか、何が起こるべきか、何をしましたか(それを再現するのに十分な情報)。あなたはより良くすることができます。 –

+0

私はこれに新しいです。 – sivva

答えて

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つのグルー・句があることにも注意してください。また、2つの-glueパスのパッケージ名のみが指定されていることにも注意してください。

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

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

あなたがこの間違いを犯した場合、cucumber-jvmはあなたに最初の知識を持った謎のエラーメッセージを表示します。使用法はhereで説明されています。

ところで、claspathは:あなたが将来的に助けが問題を再現するために必要な最小限のコードを投稿したい場合は、この場合には、を意味し、Mavenのデフォルトのクラスパスは、機能の

src/test/resources/ 

をしています。あなたの脳はネットワークに接続されたデバイスではないことを忘れないでください。 :-)

+0

ステップ定義のMavenのデフォルトクラスパスは、src/test/java – MikeJRamsey56

+0

PSです。 PicoContainerも問題になるかもしれませんが、依存性注入は言及していません。 [依存性注入](https://cucumber.io/docs/reference/java-di)を使用している場合は、お知らせください。 – MikeJRamsey56

関連する問題