我想知道是否可以从另一个功能中运行黄瓜功能?例如:

@When("^I am at the User list page$")
public void I_am_at_the_User_list_page() throws InterruptedException {
    if(!driver.findElement(By.xpath("//a[contains(text(), 'User List')]")).isDisplayed()){
        driver.findElement(By.xpath("//td[contains(text(), 'Management')]")).click();
    }
    driver.findElement(By.xpath("//a[contains(text(), 'User List')]")).click();
    Assert.assertTrue("User list is showing", driver.getTitle().equals("Admin Portal -User list"));
    if(driver.findElements(By.xpath("//td[text()='\" + loginNewUserUsername() + \"']")).isEmpty()){
        //run.cucumber.feature(deleteuser.feature);//
    }
    driver.findElement(By.xpath("//a[contains(text(), 'Add User')]")).click();
    Assert.assertTrue("Entered Add User site", driver.findElement(By.id("editUserForm:changePasswordCheckBox")).isDisplayed());
}
.

有帮助吗?

解决方案

虽然我不会这样做,但由于它变得混乱,纠结,可以通过呼叫步骤(方法)间接地实现效果。

if(...).isEmpty()){

  //call the methods/steps that makes up your feature/scenarios

  I_am_at_the_User_list_page();
  I_enter_username_as("blah");    
}
.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top