Python selenium POM 自动化开发模式下,怎么样实现测试案例的复用
以面向页面的开发模式,开发一个系统的自动化测试案例;
现有登录login_case, 要开发一个logout_case。
由于logout_case的先决条件是用户已经登录,所以必须要在logout_case的代码中先调用login_case。
请问,代码如何组织比较优雅?
以下是代码:
LoginPage
class Login(Page):
"""
用户登录
"""
url = "/honycloud/login.jsp"
login_username_loc = (By.ID, "idToken1")
login_password_loc = (By.ID, "idToken2")
login_button_loc = (By.ID, "loginButton_0")
def login_username(self, username):
self.find_element(*self.login_username_loc).send_keys(username)
def login_password(self, password):
self.find_element(*self.login_password_loc).send_keys(password)
def login_button(self):
self.find_element(*self.login_button_loc).click()
def user_login(self, username="badusername", password="badpassword"):
self.open()
self.login_username(username)
self.login_password(password)
self.login_button()
sleep(1)
login_case
class LoginTest(myunit.MyUnitTest):
"""
登录
"""
# test login
def user_login_verify(self, username="", password=""):
Login(self.driver).user_login(username, password)
def test_login(self):
self.user_login_verify(username="xxxx", password="ffff!")
page = Login(self.driver)
title = page.on_title()
self.assertEqual(title, u'工作台')
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论