Testing 材料ui对话框组件测试问题与Jest
测试:Testing 材料ui对话框组件测试问题与Jest,testing,dialog,jestjs,material-ui,Testing,Dialog,Jestjs,Material Ui,测试: Enzyme.configure({adapter:newadapter()}); 功能设置(初始状态){ 常量存储=配置存储(初始状态); const history=createBrowserHistory(); 常量提供程序=( ); const app=装载(提供程序); 返回{ 应用程序, 输入:app.find('input'), }; } 描述('容器',()=>{ 描述('App',()=>{ 它('输入计数应等于3',()=>{ 常量{inputs}=setup();
Enzyme.configure({adapter:newadapter()});
功能设置(初始状态){
常量存储=配置存储(初始状态);
const history=createBrowserHistory();
常量提供程序=(
);
const app=装载(提供程序);
返回{
应用程序,
输入:app.find('input'),
};
}
描述('容器',()=>{
描述('App',()=>{
它('输入计数应等于3',()=>{
常量{inputs}=setup();
期望(输入。长度)。toEqual(3);
});
});
});
当我运行测试时,它应该返回输入计数=3,但返回0。似乎输入是不可见的。当我将对话框更改为普通div时,一切正常
测试组件:
Enzyme.configure({ adapter: new Adapter() });
function setup(initialState) {
const store = configureStore(initialState);
const history = createBrowserHistory();
const provider = (
<MuiThemeProvider>
<Provider store={store}>
<ConnectedRouter history={history}>
<ThemeProvider theme={Theme}>
<Modal isModalOpen={true}/>
</ThemeProvider>
</ConnectedRouter>
</Provider>
</MuiThemeProvider>
);
const app = mount(provider);
return {
app,
inputs: app.find('input'),
};
}
describe('containers', () => {
describe('App', () => {
it('inputs count should be equal 3', () => {
const { inputs } = setup();
expect(inputs.length).toEqual(3);
});
});
});
返回(
);
return (
<Dialog
modal
open={true}
>
<TextField/>
<TextField/>
<TextField/>
</Dialog>
);