我有一个react应用程序,它有以下入口点:
// Import dependencies
import React from 'react';
import { render } from 'react-dom';
import { browserHistory } from 'react-router';
import { syncHistoryWithStore } from 'react-router-redux';
import configureStore from './store/configureStore';
import Root from './containers/Root';
const store = configureStore({});
const history = syncHistoryWithStore(browserHistory, store);
render(
<Root store={store} history={history} />,
document.getElementById('react')
);
一个非常常见的配置。我想知道你如何测试这样的东西,因为它不导出任何东西,而jest依赖于导入你想测试的东西。
1条答案
按热度按时间uklbhaso1#
首先,您可能不需要对此进行测试,但您绝对可以。
如果你真的想这么做,你需要重新构造你的代码,这样就有一个函数要测试:
然后,您可以使用react testing库之类的工具来确保将
Root
组件挂载到正确的元素中:这样我们就可以在入口点用文本显示所做的工作,但现在它是一个需要调用的函数!要使应用正常工作,入口点需要导入
app
函数并调用它: