Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Selenium Phantomjs会话隔离仍然不起作用吗?_Selenium_Phantomjs_Geb_Ghostdriver - Fatal编程技术网

Selenium Phantomjs会话隔离仍然不起作用吗?

Selenium Phantomjs会话隔离仍然不起作用吗?,selenium,phantomjs,geb,ghostdriver,Selenium,Phantomjs,Geb,Ghostdriver,当我使用chrome浏览器运行selenium测试时,所有测试用例都运行良好。当使用phantomjs浏览器时,浏览器会话似乎在每个测试用例之后都不会被重置。在我的测试案例中,我以用户身份登录,然后导航到特定页面,然后注销。当测试用例碰巧失败时,就会出现问题。浏览器会话未重置,因此当下一个测试用例开始时,失败的测试无法注销。这会导致单个失败后的所有测试用例都失败 在互联网上搜索此问题的解决方案时,人们早在2013年就知道了。我似乎找不到任何关于这个问题的最新消息。是否有最新的解决办法 在每个测试

当我使用chrome浏览器运行selenium测试时,所有测试用例都运行良好。当使用phantomjs浏览器时,浏览器会话似乎在每个测试用例之后都不会被重置。在我的测试案例中,我以用户身份登录,然后导航到特定页面,然后注销。当测试用例碰巧失败时,就会出现问题。浏览器会话未重置,因此当下一个测试用例开始时,失败的测试无法注销。这会导致单个失败后的所有测试用例都失败

在互联网上搜索此问题的解决方案时,人们早在2013年就知道了。我似乎找不到任何关于这个问题的最新消息。是否有最新的解决办法

在每个测试用例之前或之后手动尝试删除cookie似乎不起作用<代码>webDriver.manage().deleteAllCookies()

我正在使用phantomjs 2.1.1版。

首先,最好切换到或

第二,PhantomJS是Webkit的一个端口,它是。这意味着,如果您尝试并行运行多个测试,您将看到线程问题,要解决此问题,您需要启动多个PhantomJS实例,并让每个GhostDriver实例连接到不同的PhantomJS实例

您看到的一个特殊问题是PhantomJS无法正确地清除自身,唯一的解决方案是在测试完成后杀死您正在运行的初始PhantomJS实例,然后启动一个干净的新实例,不幸的是,GhostDriver不支持这一点

最后一个问题是GhostDriver也死了,当PhantomJS死后,继续开发就没有意义了


TLDR;改用Chrome/Firefox无头模式。

同上。已尝试:
driver.navigate().to(“javascript:localStorage.clear();”
能力.setCapability(CapabilityType.ForSeleniumServer.CLEAN_会话,true)似乎没有什么不同。