Ich verwende eine Gurke reporting api für eine bessere Berichterstattung. Mein Projekt ist kein Maven-Projekt und kann die Projektstruktur nicht ändern. Also füge ich alle Abhängigkeiten zu meinem Projekt hinzu, aber es wird immer noch Fehler wie "java.lang.IllegalArgumentException: Datei 'target/gurke.json' enthält keine Features!"Cucumber Reporting bekommen Fehler
Alle hinzugefügten Gläser und die unten gezeigte Version.
Ich habe auch hier mein runner-Klasse, die für die Fehlersuche helfen können.
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import org.junit.AfterClass;
import org.junit.runner.RunWith;
import cucumber.api.CucumberOptions;
import cucumber.api.SnippetType;
import cucumber.api.junit.Cucumber;
import net.masterthought.cucumber.Configuration;
import net.masterthought.cucumber.ReportBuilder;
@RunWith(Cucumber.class)
@CucumberOptions(
plugin = {
"html:target/cucumber-html-report",
"json:target/cucumber.json"
},features ={"./sample.feature"},
glue ={"com/automation/steps"},strict = true,
dryRun= false,monochrome = true, snippets= SnippetType.CAMELCASE)
/*public class Runner extends AbstractTestNGCucumberTests{
}*/
public class Runner {
@AfterClass
public static void generateReport(){
File reportOutputDirectory = new File("target");
List<String> jsonFiles = new ArrayList<>();
jsonFiles.add("target/cucumber.json");
String jenkinsBasePath = "";
String buildNumber = "1";
String projectName = "cucumber-jvm";
boolean skippedFails = true;
boolean pendingFails = false;
boolean undefinedFails = true;
boolean missingFails = true;
boolean runWithJenkins = false;
boolean parallelTesting = false;
Configuration configuration = new Configuration(reportOutputDirectory, projectName);
// optionally only if you need
configuration.setStatusFlags(skippedFails, pendingFails, undefinedFails, missingFails);
configuration.setParallelTesting(parallelTesting);
configuration.setJenkinsBasePath(jenkinsBasePath);
configuration.setRunWithJenkins(runWithJenkins);
configuration.setBuildNumber(buildNumber);
ReportBuilder reportBuilder = new ReportBuilder(jsonFiles, configuration);
reportBuilder.generateReports();
}
}
Ich habe auch die Projektstruktur Bild beigefügt.
Ich beobachtete, dass feature-overview.html unter der Ordnerstruktur generiert wurde, aber es wurde beschädigt, als ich diese Datei öffnete, wurde dieser Fehler in dieser Datei angezeigt.
Kann mir bitte jemand bei diesem Fehler helfen?
@ Sunder geben Danke für deinen Kommentar. Aber JSON-Datei erstellt ordnungsgemäß und auch Standard-Gurken-HTML-Bericht generiert. Meine Feature-Datei war nicht in src es war direkt unter dem Projektordner. – saba
Ihre HTML-Datei und JSON-Datei wird für den Bericht erstellen .. Es spielt keine Rolle. Sie müssen den richtigen Pfad zur Feature-Datei geben –
Ich habe versucht, wie Sie erwähnt, aber es immer noch Fehler wie "java.lang.IllegalArgumentException: Keine Datei oder kein Verzeichnis: G: \ ... \ CucumberTest \ src \ test \ java \ sample.feature ". Fehler beim JUnit-Bericht. – saba