javascript - 找不到带有 **/*.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
我也想运行的文件。
我必须安装Node 才能处理绝对导入@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'",
推荐阅读
- jquery - jquery通过分配给单个元素的命名空间取消绑定多个事件
- javascript - 将嵌套的 else if 语句转换为 JavaScript 中的 switch 语句
- javascript - 如何检查嵌套 JSON 属性是否存在以及它有多少嵌套属性?
- javascript - JQuery Ui Laravel 不是函数
- spring - 如何使用 application.properties 设置 sessionFactory 属性
- excel - 使用特殊情况对字母 + 数字进行排序的宏
- java - 使用 Cloud Firestore 从单个文档中获取列表对象
- c++ - 运行具有外部依赖项的 VC++ 单元测试时“无法设置执行上下文”
- c++ - 错误:重载运算符'[]'的使用不明确(操作数类型为'ObjA_'和'char [5]')
- python-3.x - 使用 Keras 中的专门设置进行时间预测