python webui自动化基础操作登录页面封装,用po设计模式
时间: 2024-03-09 21:37:25 浏览: 27
好的,下面是Python web UI自动化基础操作登录页面的PO设计模式封装:
1. 创建一个名为LoginPage的类,并在其中添加以下方法:
```
class LoginPage:
def __init__(self, driver):
self.driver = driver
self.username_input = (By.ID, "username")
self.password_input = (By.ID, "password")
self.login_button = (By.ID, "login-btn")
def enter_username(self, username):
self.driver.find_element(*self.username_input).send_keys(username)
def enter_password(self, password):
self.driver.find_element(*self.password_input).send_keys(password)
def click_login_button(self):
self.driver.find_element(*self.login_button).click()
```
2. 在测试脚本中,实例化LoginPage类,并使用其中的方法操作登录页面,例如:
```
from selenium import webdriver
from LoginPage import LoginPage
driver = webdriver.Chrome()
driver.get("https://example.com/login")
login_page = LoginPage(driver)
login_page.enter_username("username")
login_page.enter_password("password")
login_page.click_login_button()
# 等待登录后的页面加载完成,然后执行其他操作
```
这样,就可以在测试脚本中通过调用LoginPage类中的方法来操作登录页面,而不需要再次编写页面元素定位的代码。同时,这也符合PO设计模式的思想,将页面对象和测试代码分离,提高了代码的维护性和可读性。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)