Cucumberを使用してSelenium-JVMフレームワークを開発していますが、最初の機能の実行中にエラーが発生しました。
助けてください。
どのようにして機能を起動しましたか-
即時例外-
Exception in thread "main" cucumber.runtime.CucumberException: No backends were found. Please make sure you have a backend module on your CLASSPATH.
at cucumber.runtime.Runtime.<init>(Runtime.Java:78)
at cucumber.runtime.Runtime.<init>(Runtime.Java:67)
at cucumber.runtime.Runtime.<init>(Runtime.Java:63)
at cucumber.api.cli.Main.run(Main.Java:24)
at cucumber.api.cli.Main.main(Main.Java:16)
コードにあるもの-
Launcher.Java-
package cucumber;
import org.junit.runner.RunWith;
import cucumber.api.CucumberOptions;
import cucumber.api.junit.Cucumber;
@RunWith(Cucumber.class)
@CucumberOptions(format={"pretty","json:target/"} , features="/src/test/Java/cucumber/features")
public class Launcher {
}
機能ファイル-
Feature: it works demo
Scenario: First test
Given this is my step
When this is my second step
Then this is my final step
リストに追加された依存関係のリスト-
cucumber-core-1.1.8
cucumber-html-0.2.3
cucumber-Java-1.1.8
cucumber-junit-1.1.8
cucumber-jvm-deps-1.0.3
gherkin-2.12.2
hamcrest-all-1.3
junit-4.11
Selenium-api-2.42.2
Selenium-firefox-driver-2.42.2
Selenium-Java-2.42.2
Selenium-remote-driver-2.42.2
Selenium-support-2.42.2
私のJVM-1.7
これだけがプロジェクトで利用可能です。
助けてください。
以下の依存関係をMavenプロジェクトに追加していることを確認してください。
バージョンを最新バージョンまたは必要なバージョンに置き換えることができます。
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-Java</artifactId>
<version>1.2.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-junit</artifactId>
<version>1.2.0</version>
</dependency>
このエラーは、クラスパスで「バックエンド」が見つからない場合にスローされます。サポートされている言語ごとに「バックエンド」があります(例:cucumber-Java、cucumber-groovyなど)。
それはおそらくクラスパスエラーですが、cucumber-coreとcucumber-Javaが同じ場所にあると、奇妙に思えます。
https://mvnrepository.com/artifact/info.cukes/cucumber-Java/1.2.4 でcucumber-Java-1.2.4を試すことができます。
同じJARファイルの以前のバージョンを試すとうまくいくことがわかりました。これは他の人にも解決するかもしれませんね。そうでない場合は、別の回答を追加してください。
それがうまくいったかどうか、貴重な時間を節約できたかどうか教えてください:-)
ここに修正があります:Eclipseプロジェクトで。projectファイルに以下を追加します
<buildSpec>
...
<buildCommand>
<name>cucumber.Eclipse.steps.jdt.stepsBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
...
<nature>cucumber.Eclipse.steps.jdt.stepsNature</nature>
</natures>
これで問題が解決しない場合は、依存関係を追加します
きゅうり-ジャワ
プロジェクトのクラスパスで、またはjarのバージョンを最新またはn-1に変更します