我一直在为WebDriverIO创建PageObjects,并且一直在WebDriverIO文档中遵循页面对象模式的ES6方法。
但是,我团队中的某个人建议只创建选择器的对象,然后在测试中调用这些字符串。页面对象模式返回元素而不是选择器的字符串是否有充分的理由?
答案 0 :(得分:0)
我认为重点是允许您直接使用对象。所以:
MyPageObject.MyElement.click()
与
browser.click(MyPageObject.MyElement)
稍微不那么冗长
答案 1 :(得分:0)
Page Object返回元素而不只是选择符字符串,以允许直接在元素上调用操作,例如
PageObject.Element.waitForDisplayed()
代替您做
Browser.waitForDisplayed(PageObject.Element)
可能会很长,而且也不会连锁。您可以找到可以对元素here
执行的更多操作但是,如果需要,您也可以获取选择器的字符串
PageObject.Element.selector()
例如,链式
PageObject.Element.waitForDisplayed().click()