selenium-RC:清除浏览器而不重新启动它的最佳方法是什么

时间:2010-02-13 18:30:32

标签: selenium selenium-rc

我一个接一个地运行很多测试(在FF上),我希望每个测试都以新的浏览器开始(即没有cookie,没有缓存,......)。一个想法是关闭浏览器并为新测试打开一个新的浏览器(这将创建一个新的配置文件,可能是最干净的环境)。

这会造成太多麻烦并且花费太长时间,所以我会放弃一些关于不关闭浏览器的新配置文件的安全性。你会怎么做这样的事情?并且正在清理足够的cookie?

4 个答案:

答案 0 :(得分:2)

我知道ctrl + shift和refresh会清除缓存和cookie,因此在每个测试方法之后你可以在按下ctrl + shift的同时启动刷新。

替代解决方案是编写一个删除所有cookie和缓存的java脚本,并运行getEval脚本以在每个测试方法之后运行java脚本。

Selenium RC还有一个删除所有cookie的函数deleteCookies,你可以在每次测试后调用这个方法,以便selenium删除cookie。

我希望这会有所帮助。

答案 1 :(得分:1)

您没有提到您正在使用的语言驱动程序。无论如何,它应该是:

deleteCookie(cookieName, options)

示例:

deleteCookie('preferredColor', 'path=/')

有关完整的API参考,请参阅here

在我使用PHP的情况下:

$this->deleteCookie('uagent', 'path=/');

如果您想要删除每个cookie,请使用deleteAllVisibleCookies()。

希望有所帮助。

答案 2 :(得分:0)

如果您使用的是java,那么您只需在setUp()中使用它。

<强> selenium.deleteAllVisibleCookies();

希望这很好用

答案 3 :(得分:-1)

你有解决方案吗?我很想知道。

我正在做的是设置“不记得”选项并在每次需要新浏览器时关闭浏览器....