python - selenium add_cookie 需要两个请求
问题描述
我在测试中传递了一个会话登录 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,再次获取页面”过程。如果我之前调用我的set_session_cookies()
函数(它只是调用driver.add_cookie()
), driver.get()
没有骰子:请求没有通过 cookie,并且测试接收到登录页面响应。如果我在之后调用它,我会得到相同的登录页面响应。只有当我调用该页面,设置 cookie,然后再次调用该页面时,测试才会得到一个登录页面作为响应。
这些文档在解释我为什么需要这样做时并不完全有帮助。我错过了什么?
解决方案
推荐阅读
- google-apps-script - 如何使用谷歌应用脚本从另一张表中选择数值?
- mysql - MYSQL 使用触发器使用更新行中的值更新另一行
- python - 最大的小日期
- azure-devops - Azure devops Rest API 调用版本
- python-3.x - 使用字典实例与列表实例重复代码
- scala - 在 spark-avro 中找不到模式注册表的 to_avro 函数
- javascript - Typescript 在构造函数中使用“this”类型
- sql - SQL 中 SaaS 用户的队列分析
- docker - 在 docker compose 中无法访问 Kafka 代理
- mongodb - 缺少与 mongod 服务器的连接