2014-09-18 41 views
7

我正在用Cucumber開發我的Selenium-JVM框架,同時運行我的第一個功能時出現了以下錯誤。線程「主」中的異常cucumber.runtime.CucumberException:沒有發現後端

請幫忙。

我怎麼啓動功能 -

  1. 上的功能文件
  2. 選擇Run As右鍵 - >黃瓜功能

即時異常 -

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

只有這麼多可用在項目中。

請幫忙。

+0

您可以發佈您的pom.xml文件 – 2014-10-06 03:28:32

回答

10

如果在類路徑中找不到'後端',則會引發此錯誤。每種支持的語言都有一個'後端'(例如cucumber-java,cucumber-groovy等)

這可能是一個類路徑錯誤,儘管如果cucumber-core和cucumber-java在相同位置看起來很奇怪。

+3

添加'黃瓜java'到我的Maven項目工作。謝謝。 – LINGS 2015-03-24 14:25:39

+3

如何爲gradle做到這一點? – emaillenin 2015-09-23 11:22:47

+0

將黃瓜依賴項添加到您的gradle構建文件中 – Marit 2018-01-08 21:10:24

4

確保您添加下面的依賴關係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> 
-1

我遇到試圖運行時,此相同的錯誤消息Eclipse中的Cucumber功能文件(「沒有找到後端,請確保您的CLASSPATH上有一個後端模塊」)。

對我來說固定的東西是進入我的pom.xml,並將cucumber-java和cucumber-junit版本從1.2.5(per their documentation)更改爲1.2.0。

我不是100%確定是否通過這樣做忽略了一個真正的問題。這裏是我的設置的詳細信息:

  • 的Windows 10
  • Eclipse的霓虹燈(4.6.0)
  • 的Apache Maven的3.5.0
  • 的Java 1。8

我通過快速命令驗證了java和maven安裝成功並運行在我的機器上。我還證實,Maven在我的Eclipse項目中拉入了cucumber-java和cucumber-core jar。奇。

0

這裏是一些寶貴的時間修復:在Eclipse項目 添加在的.project文件

<buildSpec> 
 
    ... 
 
    <buildCommand> 
 
\t <name>cucumber.eclipse.steps.jdt.stepsBuilder</name> 
 
\t <arguments> 
 
\t </arguments> 
 
    </buildCommand> 
 
</buildSpec> 
 
<natures> 
 
    ... 
 
    <nature>cucumber.eclipse.steps.jdt.stepsNature</nature> 
 
</natures>
以下

如果不解決這個問題, 添加依賴

黃瓜的Java

在項目類路徑

或改變罐子的版本,最新的或N-1

相關問題