我在测试中通过了会话登录cookie:
def test_2_has_session(self):
"""Authenticated user gets admin page"""
driver = self.driver
driver.get(BaseTest.base_cms_url)
self.set_session_cookies(driver)
driver.get(BaseTest.base_cms_url)
assert "Site administration" in driver.title
以上工作。但是,让它正常工作的唯一方法是使用奇怪的“获取页面,设置cookie,再次获取页面”过程。如果我在{em> set_session_cookies()
前调用我的driver.add_cookie()
函数(仅调用driver.get()
),则没有骰子:请求未通过Cookie,并且测试接收到一个登录页面响应。如果在之后称呼它,则会得到相同的登录页面响应。仅当我调用该页面时,设置cookie,然后再次调用该页面,然后测试才能获得登录页面作为响应。
docs并不能完全解释为什么我需要这样做。我想念什么?