【发布时间】:2015-05-18 16:44:05
【问题描述】:
我正在尝试在一个新的 React 项目中设置 Jest。
package.json:
"dependencies" : {
"react": "^0.13.1",
"jest-cli": "^0.4.5",
"babel-jest": "^5.2.0"
},
"scripts": {
"test": "jest"
},
"jest": {
"scriptPreprocessor": "<rootDir>/static/preprocessor.js",
"unmockedModulePathPatterns": ["react"],
"testFileExtensions": [
"js",
"jsx"
],
"moduleFileExtensions": [
"js",
"json",
"jsx"
],
"testPathDirs": [
"<rootDir>/static/app"
],
"testDirectoryName": "test",
"testPathIgnorePatterns": [
"/node_modules/",
"/bower_components/"
]
}
Test-test.js:
jest.dontMock('../scripts/components/shared/Test');
describe('Test', () => {
var Test = require('../scripts/components/shared/Test');
it('registers test', () => {
expect("yes").toEqual("yes");
});
});
Test.jsx:
var React = require('react');
当我在上面运行npm test 时,我得到以下信息:
My-MacBook-Pro:project user$ npm test
> Project@0.0.1 test /Users/user/Projects/project
> jest
Using Jest CLI v0.4.5
Waiting on 1 test...My-MacBook-Pro:project user$
如果我将 Test.jsx 更改为 require('lodash'),我会得到以下信息:
My-MacBook-Pro:project user$ npm test
> Project@0.0.1 test /Users/user/Projects/project
> jest
Using Jest CLI v0.4.5
PASS static/app/test/Test-test.js (0.517s)
1 test passed (1 total)
Run time: 0.731s
My-MacBook-Pro:project user$
似乎添加 'react' 模块会导致 Jest 崩溃(没有任何登录终端)。我怀疑我的配置有问题,但我似乎找不到什么。
另外,有没有办法获得更详细的日志记录?现在它崩溃了,没有输出......我敢打赌,如果我有某种输出,我可以更好地调查。
【问题讨论】:
-
你安装了react吗?我没在你的包裹里看到它。
-
我已经安装了...我将更新我的帖子以包含相关的依赖项
-
如果您在 it() 函数中将需要 Test 的行移到那里,会有什么不同吗?
-
不,在 it() 函数中移动
var Test = require(...)没有帮助。我得到同样的东西。我想知道是否有办法获得更详细的日志记录,因为现在它只是崩溃而没有输出?
标签: javascript reactjs jestjs