我正在尝试使用相同的WebDriver实例在行中运行一些测试。每次测试后我都在执行:update
第一次测试通过但是第二次尝试拨打select `Ticket number`
, max(`datetime`)
, category
, (select `update` from `table` ts where ts.`ticket number` = t.`ticket number` and ts.category = t.category) as `update`
from `table` t GROUP BY `Ticket Number`, category,
(select `update` from `table` ts where ts.`ticket number` = t.`ticket number` and ts.category = t.category)
时收到错误:
driver.close();
有一个类似的问题Using same Webdriver 2 times,但尚未解决。
答案 0 :(得分:1)
您的浏览器已关闭。所以你必须重新启动浏览器。
你可以做以下事情。
driver = new FirfoxDriver();
driver.get(url);
答案 1 :(得分:1)
您不能在行中使用相同的WebDriver进行2次测试,如果使用driver.close()
关闭驱动程序,则 ,原因很简单,如果它是最后一个打开的窗口,它将退出浏览器可以在documentation中找到。
关闭当前窗口,如果它是最后一个窗口,则退出浏览器 目前正在开放。
退出后无法使用驱动程序。
答案 2 :(得分:0)
通常建议不要在测试用例之间共享状态,例如浏览器和其他对象 - 这会阻止您拥有一个测试依赖另一个测试的依赖关系,并且您不确定每个测试离开浏览器的状态。
最佳做法是在需要WebDriver实例的相应的Before和After测试方法中初始化驱动程序实例并关闭它。
Driver.Close()将关闭当前打开的窗口,如果它是最后一个打开的窗口,则退出浏览器。