0

我有一组随机失败的 Selenium WebDriver 测试,我只想重新运行那些立即失败的测试说尝试 3 次。我使用多个浏览器在网格上运行测试,我猜这是导致问题的原因。我遵循了如何立即重新运行失败的 JUnit 测试中给出的解决方案? 但是每当它尝试运行失败的测试时,我们都会得到这个异常

错误信息

org.openqa.selenium.remote.SessionNotFoundException: Session ID is null
Build info: version: '2.32.0', revision: '6c40c18', time: '2013-04-09 17:23:22'
System info: os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.6.0_26'
Driver info: driver.version: RemoteWebDriver
Stacktrace

java.lang.RuntimeException: org.openqa.selenium.remote.SessionNotFoundException: Session ID is null
Build info: version: '2.32.0', revision: '6c40c18', time: '2013-04-09 17:23:22'
System info: os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.6.0_26'
Driver info: driver.version: RemoteWebDriver
    at au.com.cgu.harvest.automation.rule.AbstractWebDriverManager.classFinished(AbstractWebDriverManager.java:77)
    at au.com.cgu.harvest.automation.rule.ClassFinishRule.finished(ClassFinishRule.java:48)
    at au.com.cgu.harvest.automation.scenario.RetryTest$1.evaluate(RetryTest.java:41)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)
Caused by: org.openqa.selenium.remote.SessionNotFoundException: Session ID is null
Build info: version: '2.32.0', revision: '6c40c18', time: '2013-04-09 17:23:22'
System info: os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.6.0_26'
Driver info: driver.version: RemoteWebDriver
    at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:273)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:527)
    at org.openqa.selenium.remote.RemoteWebDriver.executeScript(RemoteWebDriver.java:463)
    at au.com.cgu.harvest.automation.rule.AbstractWebDriverManager.classFinished(AbstractWebDriverManager.java:65)

`

4

1 回答 1

0

虽然我的情况略有不同,但我遇到了相同的错误消息。您是否在代码中使用 WebDrive close() 方法?我能够通过使用 WebDriver quit() 方法解决此问题。

来自 javadocs:http ://selenium.googlecode.com/svn/trunk/docs/api/java/index.html

//关闭当前窗口,如果是当前打开的最后一个窗口则退出浏览器。

关()

//退出此驱动程序,关闭所有关联的窗口。

退出()

于 2013-07-15T14:57:02.043 回答