You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Appium自动化应用时是否需要单独退出所有driver实例?

关于driver实例quit操作的疑问解答
  • 执行X.getDriver().quit()会直接销毁当前唯一的driver实例,不存在多实例残留的问题
    你在X类中仅初始化了一次driver实例,getDriver()方法返回的是该实例的内存引用,Y类中赋值的变量只是指向了同一个实例的地址,并没有创建新的driver实例,两者本质上对应同一个浏览器驱动进程。
  • 不需要额外对Y类中的driver变量执行quit操作
    quit()方法的作用是直接终结底层驱动进程、关闭所有关联的浏览器窗口,只要对该实例执行一次quit操作,所有指向该实例的引用都会对应已销毁的对象,后续再调用Y类中driver的任何操作都会抛出会话不存在的异常,重复调用quit也没有实际意义。

补充注意:如果你的getDriver()方法逻辑是每次调用都新建driver实例的话才会存在多实例的问题,但按照你描述的「初始化一次、封装get方法拿实例」的单例逻辑,上述结论完全适用。

内容的提问来源于stack exchange,提问作者Faiza A.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 09:54:02