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

使用Playwright在Firefox浏览器中运行测试时无法导航至目标网站的问题求助

解决Playwright 1.23.4在Firefox Nightly中无法导航到目标站点的问题

我之前遇到过类似的Playwright与Firefox预览版兼容性问题,结合你的配置和测试场景,整理了几个可行的解决方案与排查方向:

1. 切换到Playwright自带的Firefox版本

Playwright官方会为每个版本预打包经过严格兼容性测试的浏览器包,而你使用的系统级Firefox Nightly(102.0.1/100.0.2)属于预览版本,存在未适配的兼容性风险。可以通过以下步骤切换到官方适配版本:

  • 执行命令安装对应版本的Firefox:
    npx playwright install firefox
    
  • 默认配置下,Playwright会自动调用自带浏览器,无需额外修改配置文件。

2. 调整导航超时与等待策略

网络波动或页面加载延迟可能导致导航失败,你可以修改page.goto的参数,延长超时时间并设置更精准的等待条件:

await page.goto('https://playwright.dev/', {
  timeout: 60000, // 把超时时间延长到60秒
  waitUntil: 'networkidle' // 等待网络空闲后再执行后续操作
});

3. 清除浏览器上下文缓存数据

残留的缓存、Cookie或存储状态可能干扰页面导航,建议在测试开始前重置浏览器上下文:

test('homepage has Playwright in title...', async ({ browser }) => {
  // 创建全新的上下文并清空存储状态
  const context = await browser.newContext({ storageState: {} });
  const page = await context.newPage();
  
  // 后续测试逻辑不变
  await page.goto('https://playwright.dev/');
  await expect(page).toHaveTitle(/Playwright/);
  // ...其余测试代码
});

4. 更新Playwright至最新稳定版

你的Playwright版本(1.23.4)发布时间较早,后续版本已经修复了大量Firefox相关的兼容性Bug。尝试更新到最新稳定版:

npm install @playwright/test@latest
npx playwright install

5. 启用调试日志定位具体问题

如果以上方法都无效,可以开启Playwright的网络与浏览器日志,查看导航失败的具体原因(比如DNS解析错误、连接超时、SSL证书问题等):

  • 在终端执行测试时添加环境变量:
    DEBUG=pw:browser,pw:network npx playwright test
    
  • 通过输出的日志信息,定位具体的故障节点。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 21:24:05