我将(prefix_name)Runner.java 文件保存在_ __src / test / java /(company_domain_package)\ runner ** _文件夹下,
将我的_ (prefix_name)StepDefinitions.java _文件保存在 src / test / java /(company_domain_package)\ stepdefinitions 文件夹下。
在我的Eclipse中,当我运行mvn clean verify时,我仅看到此注释。
“您可以使用下面的代码片段执行缺少的步骤:”
以及Cucumber在Eclipse控制台窗口中自动生成的附带的空存根方法,而不是运行 src / test / java /(company_domain_package)\ stepdefinitions \ prefix_nameStepDefinitions.java 文件。
我在@CucumberOptions中提到了功能文件的完整路径(显然是在拾取它,因为在控制台中输出了 @ Given,@ When,@ Then 存根方法。
>即使我在 prefixStep.java 文件中实现了@Given Step,该文件仍使用(prefix)Page.java 进行低级Selenium调用。
我正在做的遗漏是什么?
我将(prefix_name)Runner.java 文件保存在 src / test / java /(company_domain_package)\ runner> 文件夹下, 将我的(prefix_name)StepDefinitions.java 文件保存在 src / test / java /(company_domain_package \ stepdefinitions)文件夹下。
在我的Eclipse中,当我运行“ mvn clean verify”时,我仅看到此注释 “您可以使用下面的代码片段执行缺少的步骤:” 以及Cucumber在Eclipse控制台窗口中自动生成的附带的空存根方法,而不是运行** src / test / java /(company_domain_package \ stepdefinitions)(prefix_name)StepDefinitions.java *文件。
我在我的 @CucumberOptions 中提到了功能文件的完整路径(显然是在拾取它,因为 @ Given,@ When,@ Then 存根方法是在控制台中输出。
public class PramaDatahubPageStep {
DataHubPage dataHubPage;
@Step
public boolean loginPramaDatahubSite(String uId, String
passCode) {
boolean isVerified = false;
configureChromeDriver();// private method
setChromeDriver(); // private method
dataHubPage.open();
dataHubPage.login( uId, passCode);
isVerified = dataHubPage.verifyLogin();
return isVerified;
}
@DefaultUrl("https://prama-stg.xxxxx.com/datahub")
public class DataHubPage extends PageObject {
@FindBy(id = "loginButton")
private WebElementFacade loginButton;
@FindBy(id = "errorDiv")
private WebElementFacade loginError;
@FindBy(id = "password")
private WebElementFacade password;
@FindBy(id = "eID")
private WebElementFacade userId;
public void login(String uId, String passCode){
userId.sendKeys(uId);
password.sendKeys(passCode);
loginButton.click();
}
我希望运行StepDifinitions.java文件,并使用功能文件中提供的数据表打开并登录该网站。