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 使用相同的Webdriver 2次_Selenium_Webdriver - Fatal编程技术网

Selenium 使用相同的Webdriver 2次

Selenium 使用相同的Webdriver 2次,selenium,webdriver,Selenium,Webdriver,我试图在同一个程序中重复使用同一个驱动程序2次。 我想这样做,这样我就可以在多个浏览器上运行相同的测试 driver = new FirefoxDriver(); driver.manage().window().maximize(); test(); closeDriver(); System.setProperty("webdriver.chrome.driver", "C:/eclipse/chrome/chromedriver.exe"); ChromeOptions options

我试图在同一个程序中重复使用同一个驱动程序2次。 我想这样做,这样我就可以在多个浏览器上运行相同的测试

driver = new FirefoxDriver();
driver.manage().window().maximize();
test();
closeDriver();

System.setProperty("webdriver.chrome.driver", "C:/eclipse/chrome/chromedriver.exe");
ChromeOptions options = new ChromeOptions();
options.addArguments("--start-maximized");
driver = new ChromeDriver(options);
test();
closeDriver();
org.openqa.selenium.remote.SessionNotFoundException:没有这样的会话 (驱动程序信息:chromedriver=2.9.248315,平台=Windows NT 6.1 SP1 x86_64)(警告:服务器未提供任何堆栈跟踪信息)
命令持续时间或超时:113毫秒
构建信息:版本:“2.43.0”,修订版:“597b76b”,时间:“2014-09-09 20:52:38” 系统信息:主机:'HPATE-E5420',ip:'10.16.70.161',os.name:'Windows 7',os.arch:'amd64',os.version:'6.1',java.version:'1.7.0_67'
会话ID:d38ea9501aa738784e2aa3f7ad9edced
驱动程序信息:org.openqa.selenium.chrome.ChromeDriver
功能[{platform=XP,acceptSslCerts=true,javascriptEnabled=true,browserName=chrome,chrome={userDataDir=C:\Users\hpate\AppData\Local\Temp\scoped\u dir6692\u 16996},rotatable=false,locationContextEnabled=true,version=37.0.2062.120,takesHeapSnapshot=true,cssselector=true,databaseEnabled=false,handlesAlerts=true,browserConnectionEnabled=false,nativeEvents=true,webStorageEnabled=true,applicationCacheEnabled=false,takesscreensshot=true}]
在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance(未知源)
在sun.reflect.delegatingConstructor或AccessorImpl.newInstance(未知源)
位于java.lang.reflect.Constructor.newInstance(未知源)
位于org.openqa.selenium.remote.ErrorHandler.CreateTrowable(ErrorHandler.java:204)
在org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:162)
位于org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:599)
位于org.openqa.selenium.remote.RemoteWebDriver.get(RemoteWebDriver.java:304)
在jUnitTestCases.VerifyRole.test(VerifyRole.java:66)上
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)
在sun.reflect.NativeMethodAccessorImpl.invoke(未知源)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(未知源)
位于java.lang.reflect.Method.invoke(未知源)
位于org.junit.runners.model.FrameworkMethod$1.runReflectVeCall(FrameworkMethod.java:47)
在org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
位于org.junit.runners.model.FrameworkMethod.invokeeexplosive(FrameworkMethod.java:44)
位于org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
位于org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
位于org.junit.internal.runners.statements.runafter.evaluate(runafter.java:27)
位于org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
位于org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
位于org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
位于org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
在org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
位于org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
在org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
在org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
位于org.junit.runners.ParentRunner.run(ParentRunner.java:309)
位于org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
位于org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
位于org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
位于org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
位于org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
位于org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)


这取决于
closeDriver()
正在执行的操作。如果您使用的是
driver.Close()
,那么您所尝试的应该是可能的。你能更具体地说明这是如何不起作用的吗?是的,我尝试了driver.close()和.quit(),但都给了我异常。close()给了我org.openqa.selenium.remote.SessionNotFoundException:没有这样的会话您能编辑您的帖子并添加异常吗?更多地了解代码的结构也可能会有所帮助,这非常有用。我可以看到您正在运行SeleniumWebDriver 2.43、Chrome37和ChromeDriver 2.9。我建议更新到ChromeDriver 2.10,然后再试一次:告诉我们
closeDriver()
test()
实际上在做什么。哪一条线在这里失败了?