【发布时间】:2015-12-30 09:03:04
【问题描述】:
我在我的应用程序中使用 reactjs 和 material-ui。对于单元测试,我使用 jest。
版本:
react: 0.13.3
material-ui: 0.12.1
jest-cli: 0.5.8
如果我在 React.Component 中使用 material-ui,我的笑话测试真的很慢。
示例 1:
var React = require('react');
module.exports = React.createClass({
render: function () {
return (<div></div>);
}
});
测试需要 0.5 秒。
示例 2:
var React = require('react');
var Material = require('material-ui');
module.exports = React.createClass({
render: function () {
return (<div></div>);
}
});
测试需要 25 秒。
到目前为止我尝试过/经历过的事情:
- 如果我关闭/打开模拟
并没有什么不同 材料-ui。 - 是否使用 material-ui 组件并不重要。要求似乎是瓶颈。
- 如果使用了两种不同的预处理器:react-tools、babel-jest
有人有同样的问题吗? 或者更好的解决方案?
【问题讨论】:
-
您是否尝试过仅拉入您在
material-ui中使用的组件?例如require('material-ui/lib/card'); -
我喜欢这个主意。我使用了类似的方法。我开始模拟我在自己的组件中使用的 material-ui 组件。
jest.setMock('material-ui', { TextField: <MOCK> })
标签: node.js unit-testing reactjs jestjs material-ui