找不到带有 **/*.test.js 的模块

我正在尝试为我的 Next.js 项目设置测试。我想用基于磁带的 RITEway 测试它。我想要一个test命令来查找我的src/文件夹中所有以.test.js.


这是我提出的建议:


"test": "NODE_ENV=test node -r @babel/register src/**/*.test.js",

我收到错误:


Error: Cannot find module '/path/to/project/src/**/*.test.js'

我如何告诉节点查找.test.js以我的src/文件夹结尾的所有文件?


额外的上下文:


我的测试文件位于src/features/<feature>/<feature.test.js>,例如:


"test": "NODE_ENV=test node -r @babel/register src/features/home/home-page-component.test.js",

用于查找单个文件并运行它。


"test": "NODE_ENV=test node -r @babel/register src/**/**/*.test.js",

用于查找功能中的所有文件夹,但忽略src/<file>.test.js我也想运行的文件,如 。


我必须安装@babel/register并@babel/core让 Node 处理绝对导入和更新的语法。


我的.babelrc是:


{

  "env": {

    "test": {

      "plugins": [

        [

          "module-resolver",

          {

            "root": [

              "."

            ],

            "alias": {

              "features": "./src/features"

            }

          }

        ]

      ]

    }

  },

  "presets": [

    [

      "next/babel"

    ]

  ],

  "plugins": []

}


至尊宝的传说
浏览 73回答 1
1回答

潇湘沐

你必须将正则表达式输入到riteway."test": "NODE_ENV=test riteway -r @babel/register 'src/**/*.test.js'",
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript