pytest po模式怎么进行二次定位
时间: 2023-11-07 10:22:20 浏览: 33
在 pytest 中使用 Page Object 模式时,可以使用下面的方法进行二次定位:
1. 在 Page Object 类中定义一个方法,用于获取二次定位的元素对象。
2. 在测试用例中调用 Page Object 类的方法,获取元素对象。
3. 对获取的元素对象进行操作。
以下是一个示例代码:
```python
# Page Object 类
class LoginPage:
def __init__(self, driver):
self.driver = driver
# 获取二次定位的元素对象
def get_error_message(self):
error_message = self.driver.find_element_by_css_selector('.error-message')
return error_message
# 登录操作
def login(self, username, password):
# 输入用户名和密码
self.driver.find_element_by_id('username').send_keys(username)
self.driver.find_element_by_id('password').send_keys(password)
# 点击登录按钮
self.driver.find_element_by_id('login-btn').click()
# 测试用例
def test_login_with_wrong_password(driver):
login_page = LoginPage(driver)
login_page.login('admin', 'wrong_password')
# 获取二次定位的元素对象
error_message = login_page.get_error_message()
# 对元素对象进行断言
assert error_message.text == '用户名或密码错误'
```
在上面的示例代码中,`get_error_message` 方法用于获取二次定位的错误提示信息元素对象,然后在测试用例中对该元素对象进行断言。