I am wondering if it is possible to run a cucumber feature from within another feature? For example:
@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());
}
While I would not do that as it becomes messy, tangled, the effect can be achieved indirectly by calling steps (methods).
if(...).isEmpty()){
//call the methods/steps that makes up your feature/scenarios
I_am_at_the_User_list_page();
I_enter_username_as("blah");
}