如何调试设置为开发Serenity-Cucumber BDD应用程序的Maven项目?

时间:2019-02-07 21:54:28

标签: maven-2 serenity-bdd cucumber-serenity

我有一个使用maven pom配置的Serenity-Cucumber BDD项目设置。我想调试项目以了解程序流程。

作为一个黄瓜项目,我编写了一个功能文件,一个StepDefinition.java文件和Steps.java文件,并且没有编译错误。 当调用 @Given 的第一步时,我在PageObject类中实现的方法调用上保留了一个断点。另外,我还在PageObject.java文件方法实现中保留了一个断点。但是,当我运行 mvn clean verify 来运行该项目时,它正在成功构建并且没有错误,但是没有调用测试,因为它们是在具有低级Selenium和PageObject调用的PageObject类中实现的。因此,我想调试该程序,但是它运行时不会在完整的执行链中的任何断点处停止。

public class LoginStepDefinition {
 @Steps
 LoginStep loginStep;

 @Given("^that I am on CRS Plus Login page$")
 public void GoToCRSPlusLoginPage(){
    loginStep.openTheCrsPlusWebsite();
  }
}
 </br>

 @Step
  public void openTheCrsPlusWebsite(){
    configureChromeDriver();
    setChromeDriver();
    loginPage.open();
   }

  </br>

  @DefaultUrl("https://crsplus-stg.xxxx.com")
 public class LoginPage extends PageObject {
 @FindBy(id = "loginButton")
 private WebElementFacade loginButton;

 @FindBy(id = "loginAlert")
 private WebElementFacade loginError;

 @FindBy(id = "password")
 private WebElementFacade password;

 @FindBy(id = "eID")
 private WebElementFacade userId;

 public void verifyLoginErrorMessage(String expected){
    loginError.shouldContainText(expected);
 }

 public void login(String userName, String secretPassword){
    userId.sendKeys(userName);
    password.sendKeys(secretPassword);
    loginButton.click();
 }

0 个答案:

没有答案