在Page文件夹中新建BasePage.py文件,用来存放封装好的浏览器驱动、访问地址、元素定位方法等
时间: 2024-10-11 22:14:07 浏览: 32
在Page对象模式(Page Object Model,POM)的设计实践中,创建一个名为`BasePage.py`的文件是非常常见的。这种做法通常应用于Web应用的自动化测试框架中,特别是那些基于Selenium或其他类似工具的测试场景。`BasePage.py`的作用是将与网站交互相关的逻辑集中管理,使得测试代码更模块化、可维护。
在`BasePage.py`中,你可能会定义一个基类,如下所示:
```python
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
class BasePage:
def __init__(self, base_url, driver=None):
if driver is None:
self.driver = webdriver.Firefox() # 或者Chrome(), Edge()等,取决于你的环境配置
else:
self.driver = driver
self.base_url = base_url
def open_page(self):
self.driver.get(self.base_url)
def find_element_by_id(self, id_, timeout=10):
return WebDriverWait(self.driver, timeout).until(EC.presence_of_element_located((By.ID, id_)))
# 可能还包括其他的元素定位方法,如find_element_by_css_selector, find_element_by_xpath 等
# 示例如何使用这个BasePage:
base_page = BasePage('https://example.com')
base_page.open_page()
element = base_page.find_element_by_id('someElementId')
```
通过这种方式,每个具体的页面对象(如LoginPage、UserProfilePage等)只需继承`BasePage`,就可以直接使用已经封装好的功能,提高了代码的复用性和测试的可读性。
阅读全文