Ich habe eine Spring-Boot-Anwendung mit dem Gurken- und Selen-Test-Setup. Ich versuche einen UI-Wrapper zum Ausführen meiner Gurkentestszenarien zu erstellen. Ich muss die ausgewählten Feature-Dateien ausführen, für die ich die Methode gucurium.api.cli.Main.run verwende. Das Problem ist, ich versuche, Eigenschaften über meine application.yml-Dateien auszuwählen, aber meine Schrittdefinitionsklasse ist nicht in der Lage, die Eigenschaften auszuwählen.Anwendungseigenschaften über Gurkenschritt-Definitionsklassen aufnehmen
Dies ist, wie mein Code aussieht -
RunCukes Klasse
@RunWith(Cucumber.class)
@CucumberOptions(features = {"classpath:features"},
plugin = { "pretty", "html:target/cucumber-html-report","json:target/cucumber.json" },
tags = {"[email protected]"})
public class RunCukesTest {
}
Die Klasse von wo aus die Gurke Feature Dateien
@Service
public class SeleniumLogic {
@Autowired
RunCukesTest runCukes;
public byte runTest(String[] argv) throws IOException{
byte result = cucumber.api.cli.Main.run(argv,runCukes.getClass().getClassLoader());
return result;
}
}
Die stepdefinition Klasse ausgeführt werden
@Component
public class LoginTestSteps {
@Autowired
private LoginPage loginPage;
@Value("${host.name}")
private String HOST_NAME;
@Given("^User is on the login page$")
public void user_is_on_the_login_page() throws Throwable {
loginPage.load(HOST_NAME);
}
}
Application.yml
host:
name: abc.com
Die HOST_NAME als Null in der LoginTestSteps Klasse kommt.