2009-07-14 85 views
1

是否可以使用selenium禁用浏览器cookie,特别是RC?如果是这样,api调用或调用序列是如何实现的。有一项功能正在测试哪些地方需要验证Cookie启用或禁用时的行为。谢谢Selenium RC - 禁用浏览器cookie

+0

我尝试过的一件事是创建一个自定义的FF3配置文件,其中cookie已关闭,一个打开。每次我开始硒,我指向任何一个配置文件取决于哪个案件进行测试。它的一个想法,但仍然没有想到如何指出硒开始这些自定义配置文件。 – Afamee 2009-07-14 15:53:42

回答

1

正如评论中所述。如果您使用的是FF,则可以指定要使用的配置文件。

去做它,以便指定browserStartCommand(该DefaultSelenium构造函数的第三个参数)类似的东西的方式:

*custom "C:/Program Files/Mozilla Firefox/firefox.exe" -no-remote -profile "C:/Some/Path/To/Mozilla/Firefox/Profiles/selenium" 

这份个人资料,你可以有禁用的cookie。

+0

这不适用于硒2驱动器 – Adaptabi 2012-03-15 07:47:59

0

另一个想法(我没有尝试过)将是在Selenium RC客户端和经过测试的Web应用程序之间使用特殊的代理。代理将能够在被要求时过滤cookie。

有一些用于开发,调试和跟踪角色的代理实现。我很确定你可以找到一个具有阻止cookies的功能。

编辑: 该解决方案的优点是独立于浏览器。

1

如果你打算使用Firefox,那么有一个特定的命令来访问firefox模板。您使用

-firefoxProfileTemplate "path to the profile" 

如所述here。我会使用不同的配置文件来开启和关闭cookie,因为您可以更好地控制它。

2

如果在Selenium 2.x上,只使用默认配置文件有一个更简单的方法。

FirefoxProfile profile=new FirefoxProfile(); 
profile.setPreference("network.cookie.cookieBehavior",2);