这两个 gem "site_prism" 和 "page_object" 之间的区别
Difference between these two gems "site_prism" and "page_object"
我遇到了两个项目,一个是 WATIR
cucumber feature files
和 step definitions
,另一个是 Rspec
、capybara`` without
步骤定义and
特征文件`.
在 WATIR
中使用了项目 page_object
,在 capybara
中使用了 site_prism gem
。
- 两者有什么区别?
- 我们不能在
capybara
中使用 page_object
这样的方法不正确吗?为什么?
两者之间的主要区别在于支持的底层驱动程序,这是与浏览器实际交互的部分。
- SitePrism 支持水豚。
- 页面对象支持 Watir-Webdriver 和 Selenium-Webdriver。
由于每个 gem 都对驱动程序的 API 进行了假设,因此您不能使用不受支持的驱动程序 - 即您不能将 Page-Object gem 与 Capybara 一起使用。
除此之外,主要是API喜好。 gem 都用于创建页面对象模型。但是,定义页面对象的语法和页面对象具有的方法将根据每个 gem 作者的偏好而有所不同。
我遇到了两个项目,一个是 WATIR
cucumber feature files
和 step definitions
,另一个是 Rspec
、capybara`` without
步骤定义and
特征文件`.
在 WATIR
中使用了项目 page_object
,在 capybara
中使用了 site_prism gem
。
- 两者有什么区别?
- 我们不能在
capybara
中使用page_object
这样的方法不正确吗?为什么?
两者之间的主要区别在于支持的底层驱动程序,这是与浏览器实际交互的部分。
- SitePrism 支持水豚。
- 页面对象支持 Watir-Webdriver 和 Selenium-Webdriver。
由于每个 gem 都对驱动程序的 API 进行了假设,因此您不能使用不受支持的驱动程序 - 即您不能将 Page-Object gem 与 Capybara 一起使用。
除此之外,主要是API喜好。 gem 都用于创建页面对象模型。但是,定义页面对象的语法和页面对象具有的方法将根据每个 gem 作者的偏好而有所不同。