微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

如何解决找不到带有** / *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才能处理绝对导入和更新的语法。

我的.babelrc是:

{
  "env": {
    "test": {
      "plugins": [
        [
          "module-resolver",{
            "root": [
              "."
            ],"alias": {
              "features": "./src/features"
            }
          }
        ]
      ]
    }
  },"presets": [
    [
      "next/babel"
    ]
  ],"plugins": []
}

解决方法

正如乔恩·夏普(Jon Sharpe)所说,您必须将正则表达式输入riteway中。

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。