在Cucumber-Java中存储辅助方法的正确位置是什么?

时间:2019-11-18 23:57:30

标签: selenium cucumber pageobjects cucumber-java

我有两种方法:

public void openEditUserModal() {
   adminUsersPage.admin_user_table_first_user.click();
}

public void waitForUserModal() {
   this.wait.until(ExpectedConditions.visibilityOf(adminUsersPage.admin_user_modal));
}

最初,我将这些方法作为独立的单击,并在我的步骤定义中等待,但是他们发现,由于将大量重复使用这些方法,因此最好为它们提供辅助功能。

在我的步骤定义文件中包含辅助功能是不好的做法吗?

将它们放在Page Object文件中会更好吗?

1 个答案:

答案 0 :(得分:1)

放置辅助方法的最佳位置将取决于项目的其余部分。 如果helper方法与某个页面对象相关,则该页面对象将是最佳位置。

在我从事的项目中,我们还使用了与某个域或域对象相关的帮助器类。 (这也是我建议对步骤定义进行分组的方式。)

您也许还可以提取可在多个页面对象上重用的通用方法。