繁体   English   中英

来自 selenium 驱动程序的 session_id 和来自浏览器 cookie 的 session 值是不同的值

[英]session_id from selenium driver and session value from browser cookie are different values

我在调试模式下开始测试,我打开了一些服务主页,然后我从 selenium 驱动程序获得了 session_id,并将它与来自浏览器 cookies 的 session 值进行了比较(它是 base64 编码的,所以我解码了它) - 它们是不同的。 可能来自我理解错误的文章,但我认为 cookies 应该存储 session id。 有人可以解释一下吗?

您混淆了两种不同类型的会话。 基本上 session 是为特定客户端定义的系统 state。 通常服务器会存储 state 并将其与某个 ID 相关联。

因此,当您进行 selenium 测试时,(至少)有两个会话。

  1. 在您的测试代码和 WebDriver 之间维护的 session (这也是一个 web 服务)。 那是你用driver.session_id选择的。 session 是在 WebDriver 端定义的。

  2. 在被测应用程序中维护的 session 这就是你从 cookies 中了解到的内容。

所以他们不一样。 虽然 webdriver 上的 session 用于区分和定义 WebDriver 客户端的状态(您可以在多个测试中并行使用相同的驱动程序服务),cookies 中的 session 用于维护应用程序用户 state(通常将浏览器活动与在应用程序)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM