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

使用Edge Driver启动自动化测试失败,求故障排查方案

Edge自动化测试Session创建失败的故障分析与修复

核心故障原因

  • 配置对象混乱:代码同时创建了两个EdgeOptions实例(eOptions和switch分支里的options),初始化驱动时传入的eOptions未关联到switch中设置的ms:edgeOptions配置,导致Capabilities结构不符合Edge驱动的要求。
  • Capability冗余与兼容性问题:
    • 重复设置弹窗处理能力:同时使用CapabilityType.UNEXPECTED_ALERT_BEHAVIOUR和自动生成的unhandledPromptBehavior,造成配置冲突。
    • acceptSslCerts是旧版Selenium的Capability,新版Edge驱动需用acceptInsecureCerts替代。
  • 错误的Capability嵌套:EdgeOptions无需手动设置ms:edgeOptions嵌套Capability,Selenium会自动处理Edge的配置封装。

修复后的代码示例

第一步:统一配置对象,移除冗余设置

// 统一使用一个EdgeOptions实例,避免对象混乱
EdgeOptions eOptions = new EdgeOptions();
// 启用JavaScript(默认已开启,可省略)
eOptions.setCapability("javascriptEnabled", true);
// 统一使用新版弹窗处理Capability
eOptions.setCapability(CapabilityType.UNHANDLED_PROMPT_BEHAVIOR, UnexpectedAlertBehaviour.IGNORE);
eOptions.setCapability("takesScreenshot", true);
eOptions.setCapability("browserName", DriverClass.getBrowser());
eOptions.setCapability("e34:l_testName", testSetName);
eOptions.setCapability("e34:video", true);
eOptions.setCapability("build", "Build-" + buildnr);
// 替换为新版不安全证书接受配置
eOptions.setCapability("acceptInsecureCerts", true);

第二步:修正驱动初始化逻辑,移除错误嵌套设置

String preferredDriver = getBrowser();
MutableCapabilities options = null;

switch (preferredDriver.toLowerCase()) {
    case "chrome":
        options = new ChromeOptions();
        setDriverOptions(options, testSetName, buildnr);
        break;
    case "edge":
        // 直接复用已配置好的eOptions,无需重新创建
        options = eOptions;
        break;
}

try {
    // 传入统一配置后的options对象
    driver = new RemoteWebDriver(new URL(seleniumBoxUrl + "/wd/hub"), options);
} catch (MalformedURLException ex) {
    // 建议保留日志输出,方便后续排查
    // LOG.error(ex.getMessage());
    System.exit(0);
}

额外注意事项

  • 确保Edge浏览器版本与Edge WebDriver版本完全匹配,版本不一致是Session创建失败的常见诱因。
  • 建议使用Selenium 4.x以上版本,对Edge的Capabilities格式兼容性更好。

内容的提问来源于stack exchange,提问作者Mikachu

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 11:01:09