2014-09-18 27 views
7

Pracuję nad strukturą Selenium-JVM z ogórkiem i podczas uruchamiania mojej pierwszej funkcji dostaję się poniżej błędu.Wyjątek w wątku "główny" cucumber.runtime.CucumberException: Nie znaleziono żadnych kopii zapasowych.

Proszę o pomoc.

Jak ja uruchomić funkcję -

  1. Kliknij prawym przyciskiem myszy na pliku fabularnego
  2. wybierz Run As -> Obiekt Ogórek

Natychmiastowe Wyjątek -

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) 

Co ja mieć w kodzie -

Launcher.java - plik

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 -

Feature: it works demo 

    Scenario: First test 
    Given this is my step 
    When this is my second step 
    Then this is my final step 

listę zależności dodany do listy -

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 

Moje JVM - 1,7

Tylko tyle jest dostępny w projekcie.

Proszę o pomoc.

+0

Możesz opublikować plik pom.xml –

Odpowiedz

10

Ten błąd jest zgłaszany, gdy w ścieżce klas nie ma żadnych "kopii zapasowych". Istnieje "backend" dla każdego obsługiwanego języka (np. Cucumber-java, cucumber-groovy itd.)

To prawdopodobnie błąd klasy klasu, chociaż jeśli ogórek-rdzeń i ogórek-java znajdują się w tym samym miejscu, co wydaje się dziwne .

+3

Dodanie 'ogórek java' do Mój projekt Maven działał. Dzięki. – LINGS

+3

Jak to zrobić dla gradle? – emaillenin

+0

dodać zależności ogórka do pliku kompilacji gradle – Marit

4

Upewnij się, że dodawanie do projektu poniżej zależnościami Maven:

Można zastąpić wersję do najnowszej lub wymaganej wersji:

<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

I napotkał ten sam komunikat o błędzie podczas próby uruchomienia Plik funkcji ogórka w Eclipse ("Nie znaleziono żadnych backendów. Upewnij się, że masz moduł backendu na CLASSPATH").

Naprawiono dla mnie pom.xml i zmianę wersji ogórka-java i ogórka-junita z 1.2.5 (per their documentation) na 1.2.0.

Nie jestem w 100% pewien, czy ignoruję prawdziwy problem, robiąc to, czy nie. Oto więcej informacji na temat mojej konfiguracji:

  • systemie Windows 10
  • Neon Eclipse (4.6.0)
  • Apache Maven 3.5.0
  • Java 1.8

Sprawdziłem za pomocą szybkich poleceń, czy java i maven są poprawnie zainstalowane i działają na moim komputerze. Sprawdziłem również, czy Maven wciągnął do mojego projektu Eclipse ogórki-java i słoiki z ogórków. Dziwny.

0

Możesz wypróbować ogórek-java-1.2.4 pod numerem https://mvnrepository.com/artifact/info.cukes/cucumber-java/1.2.4.

Znalazłem, że próbowanie poprzedniej wersji tego samego pliku JAR działało dla mnie. Myślę, że to może rozwiązać również dla innych osób. Jeśli nie, proszę dodać kolejną odpowiedź.

Daj mi znać, jeśli to działa dla Ciebie i zaoszczędzić trochę cennego czasu :-)

0

Oto dylemat: w projektach Eclipse Dodaj następujący tekst w pliku

<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>
.project

Jeśli to nie rozwiąże problemu, dodać zależność

ogórek-java

w ścieżce klasy projektu lub zmienić wersję słoika najnowszych lub n-1

Powiązane problemy