【发布时间】:2014-09-30 23:10:43
【问题描述】:
我目前正在通过 Appium 和 python 进行一些自动化测试,以测试 Android 应用程序。我想抽象出一些细节,以便测试更容易阅读。
现在我只有一个班级在做测试。例如,我想转这个:
# authentication
self.driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
username = self.driver.find_element_by_name('username')
password = self.driver.find_element_by_name('pw')
username.send_keys('some username')
password.send_keys('some password')
login_button = self.driver.find_element_by_name('Login')
login_button.click()
变成这样:
Authentication.login(self.driver, 'largedata_lgabriel@hmbnet.com', 'R3DruM24')
我们的 Authentication 类可能如下所示:
class Authentication:
def login(driver, username, password):
input_username = driver.find_element_by_name('username')
input_password = driver.find_element_by_name('pw')
input_username.send_keys(username)
input_password.send_keys(password)
login_button = driver.find_element_by_name('Login')
login_button.click()
这需要创建一个“身份验证”类,但我不确定如何将这些方法导入我的主测试类,以及如何共享网络驱动程序对象。
【问题讨论】:
标签: python automated-tests appium