在并行执行中,Safari浏览器会自动导航到没有登录页面的URL



我正在使用Selenium Web驱动程序2.48和safari驱动程序2.48以及safari版本8.0.8

我在野生动物园驱动程序中运行测试执行时遇到问题。问题是

"In parallel execution, if in one safari window,login is successfull, than in other 
safari windows, this login page is not shown, 
that means safri navigate to url with 
out login as one safari window already complete login."

出于这个原因,我在并行执行中面临以下问题:

"CSRF verification failed.Request aborted"

我想要这样的并行执行:

if five safari browser window open, in each window, login page will be appeared.
In a sense, each safari driver instance will not share other safari driver  
instances resources or any other thing

我已经更改了野生动物园首选项设置,但它没有帮助。

是否有任何最佳方法可以声明野生动物园驱动程序,或者我需要添加任何所需的功能或 Safari首选项中的任何其他内容或任何好的建议。

请,谢谢。

我正在使用以下代码:

SafariOptions safariOptions = new SafariOptions();
safariOptions.setUseCleanSession(true);
DesiredCapabilities dc = DesiredCapabilities.safari();
dc.setCapability(SafariOptions.CAPABILITY, safariOptions);
currentDriver = new SafariDriver(dc);

Set<Cookie> cookies = currentDriver.manage().getCookies();
currentDriver.manage().deleteAllCookies();
if(!cookies.isEmpty())
    {
    Iterator<Cookie> iter=  currentDriver.manage().getCookies().iterator();
    while(iter.hasNext()){
                Cookie C = iter.next();                     
          }
     cookies.clear();
    }

我个人以前没有使用过野生动物园。正如您所说,所有其他浏览器中的行为都符合您的预期。我希望您尝试以下操作。有一种方法可以指定要使用的驱动程序实例的配置文件。我建议您为每个实例创建单独的配置文件并尝试.如何做到这一点,在这个答案中解释。这个答案解释了如何每次使用相同的配置文件。每次都需要使用不同的配置文件。(默认情况下,这在chrome中发生,不知道为什么它不会用于野生动物园)

最新更新