硒的设置方法中的登录实例



我目前正在测试使用Selenium开发的网站。我唯一弄不明白的是如何创建一个登录实例,这样我的测试类就不必相互复合。

进一步解释:

class CreateListingTest(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Firefox()
        self.driver.get("http://127.0.0.1:8000/")
        *** create login instance here ***
    def test_createListing(self):
        driver = self.driver
        *** continue with test method ***

我尝试测试的大多数类都需要用户登录才能完成测试。

Selenium的每个实例都是独立的,并且以干净的历史记录和没有cookie开始。您可以简单地实现一个登录页面对象:

class CreateListingTest(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Firefox()
        PageLogin(self.driver) 
          .visit() 
          .login(name, password)
    def test_createListing(self):
        driver = self.driver
        *** continue with test method ***
class PageLogin(object):
    url = "http://127.0.0.1:8000/"
    def __init__(self, driver):
      self.driver = driver
    def visit(self):
        self.driver.get(self.url)
        ...
        return self
    def login(self, name, password):
        ...
        return self
    def logout(self):
        ...
        return self

最新更新