2. BasePage
乙醇 创建于 about 7 years 之前
最后更新: less than a minute 之前
阅读数: 144
页面类是Page Object设计模式的核心。在使用webium创建页面类的时候,必须继承webium.base_page.BasePage
from webium import BasePage
class MyPage(BasePage):
pass
url
如果页面的url是固定的,那么可以在__init__
方法中指定它,然后你就可以使用open()
方法来跳转到该页面。
url也可以被定义成是类的静态属性。
from webium import BasePage
class PageWithUrl(BasePage):
def __init__(self):
super(PageWithUrl, self).__init__(url='http://www.testclass.net/')
class AnotherPageWithUrl(BasePage):
url = 'http://www.itest.info'
if __name__ == '__main__':
page = PageWithUrl()
page.open()
itest = AnotherPageWithUrl()
itest.open()
driver
页面类必须持有WebDriver
的实例以便操控浏览器。默认情况下,webium会使用webium.settings.driver_class
来创建WebDriver
实例。如果你需要获取driver的实例,你可以使用webium.driver.get_driver()
来达到目的。
在实例化页面类时,我们也可以通过driver
参数来显示传入WebDriver
实例。
from selenium.webdriver import Firefox
from webium import BasePage
class DriverHandlingPage(BasePage):
def __init__(self, *args, **kwargs):
super(DriverHandlingPage, self).__init__(url='http://testclass.net/', *args, **kwargs)
if __name__ == '__main__':
my_driver = Firefox()
page = DriverHandlingPage(driver=my_driver)
page.open()
print('Page title: ' + my_driver.title)
my_driver.quit()