Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我不能用Jest运行多个测试文件?_Javascript_Reactjs_Jestjs - Fatal编程技术网

Javascript 我不能用Jest运行多个测试文件?

Javascript 我不能用Jest运行多个测试文件?,javascript,reactjs,jestjs,Javascript,Reactjs,Jestjs,我今天刚开始讲笑话。我的\uuuu tests\uuuu目录中有一个简单的测试文件。以下是当前的测试文件: describe('ChangeCalendarView', function() { it('true', function() { expect(3).toBe(3); }) }); 这没有问题。当我添加另一个文件时,除了描述之外,使用相同的代码: describe('ChangeTimePeriod', function() { it('tr

我今天刚开始讲笑话。我的
\uuuu tests\uuuu
目录中有一个简单的测试文件。以下是当前的测试文件:

describe('ChangeCalendarView', function() {
    it('true', function() {
        expect(3).toBe(3);
    })
});
这没有问题。当我添加另一个文件时,除了描述之外,使用相同的代码:

describe('ChangeTimePeriod', function() {
    it('true', function() {
        expect(3).toBe(3);
    })
});
然后我得到这个错误:

/usr/local/lib/node_modules/jest-cli/node_modules/node-worker-pool/Worker.js:93
    throw new Error('Received unexpected data from child process: ' + data);
          ^
Error: Received unexpected data from child process: {
  "error": "Error: ENOENT, open '/usr/local/lib/node_modules/jest-cli/.haste_cache/cache-react-calendar-component'\n\n"
}
  at Worker._onStdout (/usr/local/lib/node_modules/jest-cli/node_modules/node-worker-pool/Worker.js:93:11)

这对任何人都有意义吗?

我已经通过使用babel jest解决了这个问题。这里是我的package.json

{
“名称”:“myapp”,
“版本”:“0.0.0”,
“依赖项”:{
“类名”:“^2.1.3”,
“开发”:“^0.1.3”,
“流量”:“^2.0.3”,
“咕哝”:“^0.4.5”,
“吞咽”:“^3.9.0”,
“不可变”:“^3.7.4”,
“安装”:“^0.1.8”,
“lodash”:“^3.10.0”,
“节点简单静态服务器”:“^1.1.0”,
“反应引导”:“^0.23.7”,
“反应路由器”:“^0.13.3”,
“react路由器引导”:“^0.18.0”,
“反应工具”:“^0.13.0-beta.2”,
“堆叠”:“^1.0.1”
},
“依赖性”:{
“巴别塔笑话”:“^5.3.0”,
“babelify”:“^6.1.2”,
“浏览器同步”:“最新”,
“浏览垫片”:“^3.8.0”,
“del”:“~0.1.3”,
“大口自动调湿器”:“~1.0.1”,
“大口凉亭”:“0.0.6”,
“吞咽缓存”:“~0.2.4”,
“大口喝imagemin”:“最新”,
“吞咽jshint”:“~1.8.5”,
“一口气加载插件”:“~0.7.0”,
“咕噜咕噜咕噜咕噜”:“~0.7.1”,
“大口大小”:“~1.1.0”,
“吞带调试”:“^1.0.2”,
“吞针”:“~2.0.1”,
“狼吞虎咽”:“^1.0.2”,
“gulp useref”:“~0.4.4”,
“咕噜咕噜咕噜”:“~3.0.1”,
“gulp Web服务器”:“最新”,
“jest cli”:“*”,
“主鲍尔文件”:“~2.6.2”,
“反应”:“最新”,
“反应工具”:“最新”,
“reactify”:“最新”,
“条带调试”:“^1.0.1”,
“乙烯基源流”:“^1.0.0”,
“watchify”:“~2.1”
},
“发动机”:{
“节点”:“>=0.10.0”
},
“脚本”:{
“测试”:“开玩笑”
},
“笑话”:{
“scriptPreprocessor”:“./node_modules/babel jest”,
“testFileExtensions”:[
“es6”,
“js”
],
“moduleFileExtensions”:[
“js”,
“json”,
“es6”
],
“rootDir”:“/app”,
“覆盖范围”:正确,
“unmockedModulePathPatterns”:[
“反应”,
“活动”,
“洛达斯”
]
},
“浏览化”:{
“转变”:[
“browserify shim”,
[
“反应”,
{
“es6”:正确
}
]
]
},
“浏览器”:{
“jquery”:“/app/bower\u components/jquery/dist/jquery.js”
},
“browserify垫片”:{
“jquery”:“$”
}
}

Jest用来检测测试文件的glob模式。默认情况下,它会在tests文件夹中查找.js和.jsx文件,以及后缀为.test或.spec的任何文件(例如Component.test.js或Component.spec.js)。它还会找到名为test.js或spec.js的文件。
因此,用后缀.test命名您的测试文件。比如pagination.test.js。

Hmm,这里肯定有其他事情发生,无论是在您的环境中还是在这些测试块周围。当您添加任何新的测试文件时会发生这种情况吗?或者只添加那个特定的测试文件?我添加的任何文件都会发生同样的情况。但是如果我只留下一个文件,它将始终运行测试的文件名是什么?我不知道这是不是一个开玩笑的停车问题。此外,这可能看起来很愚蠢,但我也会尝试取消节点单元模块并再次运行npm安装。名称为
ChangeCalendarView test.js
ChangeTimePeriod test.js
。我
rm
安装了我的
node\u模块
,把所有新的东西都拆了下来,但仍然有同样的问题。我也遇到了类似的问题。