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

使用cypress-ntlm-auth插件时认证弹窗未填入用户名密码如何解决

Cypress NTLM认证弹窗不自动填充解决方案
  • 先确认插件注册逻辑完整
    1. 检查cypress/support/e2e.js文件是否已经导入命令:import 'cypress-ntlm-auth/dist/commands';
    2. 检查cypress.config.js配置文件中是否正确注册了插件,参考配置如下:
    const { defineConfig } = require('cypress')
    const ntlmAuth = require('cypress-ntlm-auth/dist/plugin')
    
    module.exports = defineConfig({
      e2e: {
        baseUrl: '你的测试站点根地址',
        ntlm: {
          hosts: [
            {
              domain: '你的测试站点域名(不带http/https前缀,带端口的话需补充端口)',
              username: '你的认证账号',
              password: '你的认证密码',
              ntlmVersion: 2 // 可根据站点实际支持的版本切换为1或2
            }
          ]
        },
        setupNodeEvents(on, config) {
          // 注册ntlm插件
          return ntlmAuth(config)
        }
      }
    })
    
    如果你是通过环境变量传入认证账号密码,可先打印变量确认取值正确,避免空值或错误值导致认证失效。
  • 清理残留进程后重启
    先杀掉所有后台运行的Cypress进程,再执行启动命令:
    Windows环境执行:taskkill /IM cypress.exe /F
    Mac/Linux环境执行:pkill cypress
    之后再执行npx cypress-ntlm open启动测试
  • 检查访问路径匹配规则
    1. 确保你配置的NTLM认证域名和实际访问的站点域名完全一致,包括协议(http/https)、端口号都要匹配
    2. 测试用例首次访问的地址必须是配置了NTLM认证的域名下的资源,插件不会对未加入hosts列表的域名注入认证信息
  • 适配高版本Cypress特性
    如果你开启了experimentalSessionAndOrigin特性,需要将认证域名加入experimentalOriginDependencies列表,避免跨域逻辑拦截认证信息注入

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 01:15:02