2014-04-11 134 views
0

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

@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()); 
} 

回答

1

虽然我不会那样做,因为它变得杂乱,纠结,效果可间接地通过调用步骤(方法)来实现的。

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

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

    I_am_at_the_User_list_page(); 
    I_enter_username_as("blah");  
} 
+0

这就是我想的,谢谢你为我清理这个。 – Odecif