当我的程序以任何方式终止时,有什么方法可以确保所有webdrivers的新实例都被终止(即对它们调用一些等效的driver.quit())?也就是说,即使我忘记在代码中添加明确的.quit()
,或者程序崩溃/否则无法到达.quit()
调用,以确保新过程将关闭。如何确保我的程序产生的所有Selenium Web驱动程序在程序终止时退出()?
编辑: 这是我想到的一个可能的解决方案,但我不确定它是否有效,但不幸的是我现在无法自己测试它。我可以创建一个工厂类来创建驱动程序,并将这些驱动程序存储在一个静态列表中。然后添加一个关闭钩子,它在列表中的所有内容上调用quit。我不知道这是否可行,因为我之前从未使用关机挂钩:P
哈哈是啊我会尽我所能不要忘记。添加一个额外的系统调用来杀死进程可能会正常工作。谢谢! – misaka