使用测试自动化的页面对象模型,我们将页面链接在一起,如下所示:
WebDriver driver = new WebDriver()
HomePage homePage = new HomePage(driver);
LoginPage loginPage = homePage.GoToLoginPage();
WelcomePage welcomePage = loginPage.Login();
etc
etc
这样做的最大好处是,如果开发人员更改主页使其不再链接到登录页面,我可以更新我的主页类并在运行测试之前查看我需要更新的所有测试(有错误)。
然而,对于 Gherkin,上面的每一行将形成一个单独的“步骤”,因此是一个单独的方法。因此,如何进行这种链接?
将页面对象类的实例(例如 homePage、loginPage 等)放入交叉小 cucumber 语句持久存储(例如,像 specflow POCO 或“World”)的唯一方法是什么?
最佳答案
在对该主题进行了多次讨论之后,一个同样合理的替代方案是在将页面对象模式与小 cucumber 一起使用时不返回新页面的实例。您将失去通常使用 POM 获得的链接的好处,但可以说代码会更好地阅读并且不那么复杂。发布这个替代答案,作为测试社区,我们可以投票选择哪种方法是人们的偏好。
关于selenium - 页面对象模型链接是否与 Cucumber 的 Gherkin 兼容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26378861/