用于Web测试的页面对象模式

时间:2017-04-15 23:20:01

标签: nightwatch.js intern pageobjects web-testing webdriver-io

我正在研究几个可用于e2e自动化测试的javascript框架,主要是:Webdriver.io,theIntern和Nightwatch。

我真的想从开发人员那里得到一些关于哪个框架可以最好地支持页面对象模式的反馈?

2 个答案:

答案 0 :(得分:0)

实习生支持这种模式(这是一个足够普遍的模式,我认为其他两种模式也是如此)。有几种方法可以使用Intern实现它。

Intern Guide中提到了一种可能性。用于控制远程浏览器的Command对象包含在另一个添加特定于页面的功能的类中。

here描述了一种更灵活的不同实现方式。设置命令包装器以允许链接多个自定义调用可能很棘手。第二个实现使用Command帮助程序函数,这可以更容易使用。

答案 1 :(得分:0)

以下是我在各种框架页面对象实现中遇到的一些主要难点:

  1. 必须允许创建元素/定位器一次,而不是在别处重复(干)
  2. 如何处理basePage(即页面元素/方法并非特定于单个页面(例如hitEnter()))
  3. 如何处理跨页面的重复元素(例如,存在于多个页面上的导航栏)
  4. 是否允许可读测试
  5. 意见肯定会考虑到这些......这很好。回答这些问题为您的选择框架,你会得到你的答案。