我刚从 Firefox Driver
至 HTML Unit Driver
以提高web测试的执行速度。为了在测试执行完成时销毁驱动程序,我依赖于通过将驱动程序强制转换为 RemoteWebDriver
提取 "moz:processID"
:
Capabilities cap = ((RemoteWebDriver) driver).getCapabilities();
String pid = cap.getCapability("moz:processID").toString();
使用上面的代码,我可以动态地杀死 Firefox Driver
通过:
Runtime.getRuntime().exec("taskkill /F /T /PID " + pid);
不过,现在我换了 HTML Unit Driver
我在尝试强制转换时遇到以下异常 HTML Unit
至 RemoteWebDriver
:
java.lang.ClassCastException: org.openqa.selenium.htmlunit.HtmlUnitDriver cannot be cast to org.openqa.selenium.remote.RemoteWebDriver
我怎样才能找回 process ID
在 HTML Unit Driver
?
附笔
我需要通过命令行/进程id销毁驱动程序的原因是 WebDriver
不会被破坏 driver.close
或者 driver.quit()
我发现这个方法是唯一一致可靠的解决方案。
暂无答案!
目前还没有任何答案,快来回答吧!