【问题标题】:How to start new IE session with Watin如何使用 Watin 启动新的 IE 会话
【发布时间】:2011-08-09 10:00:01
【问题描述】:

我需要知道如何使用新会话启动浏览器实例。我试图清除 cookie 并清除缓存,但这并不能满足我的需求。

在我的情况下,我将产品添加到购物篮,然后关闭浏览器,然后使用另一个添加不同产品的 url,但旧产品始终仍在购物篮中。

【问题讨论】:

  • 您可能会在 superuser.com 上得到更好的答案
  • Internet Explorer 有清除 cookie 的问题,请使用其他浏览器,例如 Firefox 或 Chrome。
  • 他说的是通过 IE 使用 WatiN 进行自动化测试,因此手动操作或使用不同的浏览器将不是一个选项。 (尽管您可以将 FireFox 与 WatiN 一起使用)。
  • 这本身并不能回答您的问题,但在我的每个测试中,我都会登录并注销会话状态。

标签: c# session cookies watin


【解决方案1】:

对于 IE6-7,您应该在新进程中启动一个新的浏览器会话,如下所示:

var ie = new IE("yoururl", true);

对于 IE8-9,您应该在创建新的 IE 实例之前在设置类上设置 no-merge 选项:

Settings.MakeNewIe8InstanceNoMerge = true;
var ie = new IE("yoururl");

【讨论】:

  • 我将该设置行放在我的 ClassInitialize 方法中。
【解决方案2】:

确保您正确关闭浏览器(即关闭其所有选项卡和窗口,包括下载等) - 查看任务管理器以查看它是否仍在运行。会话可能不是基于 cookie 的(例如,它可以在处理请求的同一进程中被跟踪),并且清除浏览器缓存不会以任何方式影响打开的会话。

假设您正在开发一个 asp.net 应用程序或网站,您可以尝试右键单击系统托盘中的 ASP.NET 开发服务器图标并停止它,然后重新运行您的项目。这应该会杀死所有会话。

【讨论】:

    【解决方案3】:

    我们在这里遇到了同样的问题。 IE 在其所有浏览器实例上重复使用会话。如果您想要一个新会话,只需执行以下操作:

    Alt(菜单)-> 文件-> 新会话

    检查this blog for more info

    【讨论】:

    • 这个答案对自动化的 WatiN 脚本有何帮助?
    • 我刚刚测试了这个,它并没有清除现有的 cookie 等,只是打开一个新窗口
    【解决方案4】:

    会话由 cookie 管理,您可以清除所有 cookie 或仅针对相关站点。

    尝试搜索IE Clearing cookies

    【讨论】:

      【解决方案5】:

      IE 9 有另一种不清除所有 cookie 的方法。 如果您从 IE 9 的选项菜单中打开清除 Cookie 对话框,您会注意到第一个选项显示“保留收藏夹网站数据”。不选中此项,您通常会清除 cookie,关闭浏览器应该可以工作。

      如果这有帮助,请告诉我,我认为这应该可以解决问题;)

      【讨论】:

        【解决方案6】:

        我很快会在 WatiN 中尝试这个,但只是使用我的命令行开关进行测试,看起来我可以使用打开多个实例

        iexplore.exe -private -nomerge
        

        并且每个实例都不会干扰其他实例。

        这意味着它允许您在同一网站上使用不同的登录名登录,并且它们不会相互干扰。

        这需要进一步验证,但到目前为止它似乎有效。

        更新:我发现了 WatiN 的这个旧补丁,它将隐私功能添加到了 watin 库中,它目前似乎不在版本中-http://sourceforge.net/tracker/?func=detail&aid=3013950&group_id=167632&atid=843730

        【讨论】:

        • 如果您将此添加到您的 watin 代码中,请务必使用 >= version 8,而不是 == ver 8... 这样它将支持 ver 9 plus。
        猜你喜欢
        • 2012-01-09
        • 1970-01-01
        • 2011-05-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多