断开Citrix连接后如何保持VDI UI可用以运行Selenium测试
解决VDI断开Citrix连接后Selenium测试失败的方案
禁用VDI自动锁屏与休眠
- Windows系统:打开控制面板→硬件和声音→电源选项,把「关闭显示器」「使计算机进入睡眠状态」全设为「从不」;再到用户账户设置里,关掉「一段时间后锁定计算机」的选项。
- Linux系统:以GNOME桌面为例,修改
/etc/gdm3/custom.conf,添加AutomaticLoginEnable=true和AutomaticLogin=你的用户名;同时在电源管理里禁用自动休眠和锁屏。
用虚拟显示驱动模拟屏幕
安装虚拟显示适配器(比如Windows自带的Microsoft Remote Display Adapter,或者第三方虚拟显示驱动),让VDI始终识别到存在可用屏幕,不会触发空白或锁屏。搭配Selenium时可以指定分辨率:from selenium import webdriver options = webdriver.ChromeOptions() options.add_argument("--window-size=1920,1080") # 可选配合无头模式,减少资源占用 options.add_argument("--headless=new") driver = webdriver.Chrome(options=options)保持Citrix会话活跃
- 在Citrix Workspace客户端偏好设置→高级里,关掉「断开连接后自动锁定会话」,把会话超时设为「从不」。
- 给Selenium加个定时操作脚本,每隔几分钟执行一次轻微的页面滚动或鼠标移动,比如:
import time while True: driver.execute_script("window.scrollBy(0, 10)") time.sleep(300) # 每5分钟执行一次
避免系统判定会话空闲而锁定。
修改VDI组策略(需管理员权限)
打开组策略编辑器(gpedit.msc),依次找到:- 计算机配置→管理模板→系统→电源管理→睡眠设置,禁用所有睡眠相关策略;
- 用户配置→管理模板→控制面板→个性化,启用「不显示锁屏」策略。
内容的提问来源于stack exchange,提问作者macpak
相关产品推荐
相关产品推荐

