2016-04-27 8 views
0

JUnit Runner-Klasse finden, ist nicht in der Lage, die Schritte Definitionsdatei mit Projektstruktur zu lokalisieren Unten: src/test/java/com/Testschritte/TestSteps.java und JunitRunner Klasse unter src/test/java/com/cucumbertestrunner/TestrunnerJunit Runner-Klasse kann nicht Schritt Definitionsdatei

[(Project Hierarchy is attached Below) ist die Syntax von JUnitRunner Klasse

package com.cucumbertestrunner; 

import cucumber.api.CucumberOptions; 
import cucumber.api.junit.Cucumber; 
import org.junit.runner.RunWith; 
@RunWith(Cucumber.class) 
@CucumberOptions(features ={"src/test/resources/TestSteps.feature"}, 
glue ={"src/test/java/com"},strict = true,plugin = {"pretty", "html:target/cucumber"}) 
public class TestRunner { 

} 

Ausführen des TestRunner.java als JUnit-Test zeigt folgende Ausnahme:

bei cucumber.api.PendingException: ERLEDIGEN: implementieren mich bei cucumber.runtime.junit.JUnitReporter.addFailure (JUnitReporter.java:134) cucumber.runtime .junit.JUnitReporter.addFailureOrIgnoreStep (JUnitReporter.java:122) bei cucumber.runtime.junit.JUnitReporter.result (JUnitReporter.java:91) bei cucumber.runtime.Runtime.runStep (Runtime.java:281) bei Gurken .runtime.model.StepContainer.runStep (StepContainer.java:44) bei gurke.runtime.model.StepContainer.runSteps (StepContainer.java:39) bei gurke.runtime.model.CucumberScenario.run (CucumberScenario.java:44) bei cucumber.runtime.junit.ExecutionUnitRunner.run (ExecutionUnitRunner.java:91) bei cucumber.runtime.junit.FeatureRunner.runChild (FeatureRunner.java:63) bei cucumber.runtime.junit.FeatureRunner.runChild (FeatureRunner. java: 18) bei org.junit.runners.ParentRunner $ 3.run (ParentRunner.java:238) bei org.junit.runners.ParentRunner $ 1.schedule (ParentRunner.java:63) bei org.junit.runners. ParentRunner.RunChildren (ParentRunner.java:236) bei org.junit.runners.ParentRunner.access $ 000 (ParentRunner.java:53) bei org.junit.runners.ParentRunner $ 2.evaluate (ParentRunner.java:229) bei org.junit.runners.ParentRunner.run (ParentRunner.java309) bei gurke.runtime.junit.FeatureRunner.ru n (FeatureRunner.java:70)

Bitte Hilfe.

Antwort

1

Bitte schauen Sie in die TestSteps-Klasse, und was die Schrittmethoden enthalten. Das Auslösen der PendingException ist die Standardimplementierung für die Schritte. Sie müssen tatsächlich implementieren, was der Schritt tun soll.

Außerdem schlage ich vor, die Position der Schritte als Paket festzulegen, da Schritte in Klassen definiert sind und diese im Klassenpfad liegen müssen.

Zum Beispiel

glue = {"com.teststeps"} 

Ich schlage vor, auch die Feature-Dateien im Classpath zu beziehen, wie sie in den Ordner Ressourcen befinden

features = {"classpath:TestSteps.feature} 
+0

Ich habe versucht, genau Ihre erwähnte Lösung „@CucumberOptions (features = {"classpath: TestSteps.feature"}, glue = {"com.teststps"}, "ABER immer noch das selbe Problem – Asif

+0

Überprüfen Sie den Inhalt der Testschritte, ich nehme an, die PendingException wird vom Schritt selbst ausgelöst und ist nicht darauf zurückzuführen Dein Setup. Ich habe die Antwort entsprechend bearbeitet. –

+0

Ja, es war ein Fehler, eine der Methoden in der Test Steps-Datei war Pending Exception. Vielen Dank für deine Hilfe :) – Asif