我有一些scala测试正在运行,但是对于如何在运行完成后关闭/退出webdriver感到困惑。我知道beforeAndAfterAll,但似乎它作用于每个测试类,而我只想在最后退出webdriver(不是在每个测试之间,然后重新启动它)。它似乎没有做任何事情,但这是我目前得到的:
class testRunHandler extends org.scalatest.Reporter{
import org.scalatest.events._
def apply(event: Event){
event match{
case _:RunCompleted => foo.driver.close()
case _ =>
}
}
我试图遵循这一点,但不确定如何应用它: Doing something before or after all Scalatest tests
答案 0 :(得分:1)
您可以使用:
sys.addShutdownHook { foo.driver.close() }
如果你确定这条线只执行一次,那可能是最好的。我已经在object
附近放置了我配置驱动程序的位置。