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

Nuxt 2.15.8执行Cypress测试时如何忽略根目录下的functions文件夹

解决Nuxt2中Cypress测试忽略Firebase Functions文件夹的方案

下面是几个可行的方案,针对你的场景逐一解决:

  • 修改TypeScript配置排除文件夹
    如果测试失败是因为项目类型检查(比如CI里跑了tsc)扫到了functions里的错误,直接在根目录tsconfig.json的exclude数组里加上functions/**/*:

    {
      "exclude": [
        "node_modules",
        ".nuxt",
        "dist",
        "functions/**/*"
      ]
    }
    

    用jsconfig.json的话同理,把这个路径加进排除列表。

  • 限制CI命令的扫描范围
    如果CI里的lint或类型检查是全局执行的,修改命令只扫主应用相关目录,跳过functions:

    • 比如lint命令改成只扫核心目录:
      npm run lint -- src/ components/ pages/ store/
      
    • 类型检查命令直接指定排除:
      tsc --project ./tsconfig.json --exclude functions/**/*
      
  • 调整Cypress配置过滤无关文件
    如果是Cypress加载时误处理了functions里的文件,在cypress.json里添加排除规则:

    {
      "ignoreTestFiles": "functions/**/*",
      "excludeSpecPattern": "functions/**/*"
    }
    

    这会让Cypress完全忽略该文件夹下的所有文件,不会把它们当成测试相关资源处理。

  • 给functions单独配置TypeScript
    在functions文件夹里新建独立的tsconfig.json,让根目录的类型检查不干涉它:

    1. 在functions/下创建tsconfig.json,配置Firebase Functions适配的规则(示例如下):
      {
        "compilerOptions": {
          "target": "ES2018",
          "module": "commonjs",
          "lib": ["ES2018"],
          "outDir": "lib",
          "rootDir": "src",
          "strict": true,
          "esModuleInterop": true
        },
        "include": ["src/**/*"],
        "exclude": ["node_modules"]
      }
      
    2. 根目录tsconfig.json排除functions/,这样根目录的类型检查就不会处理这个文件夹,functions的类型检查可以单独执行(如果需要的话)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 11:24:11