升级至Cypress 10后执行npx cypress open无法显示文件夹结构

Cypress 9升级至10版本后启动不显示项目文件夹结构排查方案
按以下优先级逐一排查即可:
- 确认配置迁移流程是否完成
Cypress 10属于破坏性大版本更新,首次执行npx cypress open时会自动弹出配置迁移向导,如果当时直接跳过向导,旧版的cypress.json配置不会自动转换为10版本要求的cypress.config.js/ts格式,就会出现测试目录识别失败、文件夹结构不显示的问题。此时重新执行启动命令,选择你当前使用的测试类型(E2E/组件测试),跟着向导走完配置流程,正确指定测试文件存放目录即可。 - 核对配置文件的测试文件匹配规则
打开项目根目录下的cypress.config.js(TS项目对应cypress.config.ts),确认e2e.specPattern或component.specPattern字段的路径匹配规则,和你实际存放测试文件的路径一致。
注意:Cypress 9版本默认E2E测试文件存放路径为cypress/integration,10版本默认路径改成了cypress/e2e,如果你没有迁移文件位置,需要手动修改配置匹配原有路径,参考配置如下:
const { defineConfig } = require("cypress"); module.exports = defineConfig({ e2e: { // 替换成你实际的测试文件路径匹配规则 specPattern: "cypress/integration/**/*.cy.{js,jsx,ts,tsx}", }, });
- 清理缓存后重装依赖
版本升级残留的旧缓存经常会导致各类界面显示异常,依次执行以下命令清理后重试:
# 删除本地依赖、Cypress运行缓存和历史生成文件 rm -rf node_modules ~/.cache/Cypress cypress/screenshots cypress/videos # 重新安装项目依赖 npm install # 重新启动Cypress npx cypress open
- 排查版本冲突和权限问题
- 如果之前全局安装过Cypress,先执行
npm uninstall -g cypress卸载全局版本,避免全局旧版本和项目本地的10版本冲突导致识别异常,统一使用项目本地安装的Cypress启动即可。 - 确认当前执行命令的系统账号,对项目目录、Cypress缓存目录有完整读写权限:Windows环境不要把项目放在Program Files、C盘根目录等系统受保护路径下;Mac/Linux环境不要随意加sudo执行cypress命令,避免文件权限归属错乱导致无法读取目录。
- 如果之前全局安装过Cypress,先执行
补充说明:Cypress 10版本对启动器UI做了大幅精简,默认只会展示匹配specPattern规则的测试用例文件,不会像9版本那样展示项目下所有的文件夹结构,这是版本设计变更,不是故障。如果需要编辑项目内的非测试文件,直接用系统文件管理器或者代码编辑器打开项目目录操作即可。
内容的提问来源于stack exchange,提问作者zubair khan
相关产品推荐
相关产品推荐

