Reactjs 在jest/Ezyme中使用if条件基于状态测试div

Reactjs 在jest/Ezyme中使用if条件基于状态测试div,reactjs,enzyme,jestjs,Reactjs,Enzyme,Jestjs,我使用Jest/Enzyme测试我的react组件,但无法覆盖if语句中的行。是否有办法测试状态并显示div?默认情况下,pageload将为false,数据获取后将更改为true render(){ if (this.state.pageload) { return (<div className="emptyMessage"><span>Empty text</span></div>); } } render(){

我使用Jest/Enzyme测试我的react组件,但无法覆盖if语句中的行。是否有办法测试状态并显示
div
?默认情况下,
pageload
将为
false
,数据获取后将更改为
true

render(){
    if (this.state.pageload) {
      return (<div className="emptyMessage"><span>Empty text</span></div>);
    }
}
render(){
if(this.state.pageload){
返回(空文本);
}
}
测试代码:

it('Checks page loading', () => {
  const myContainer = mount(<MuiThemeProvider>
    <IntlProvider locale="en">
    <MyContainer.WrappedComponent  {...props } text={text} tools={tools} />
    </IntlProvider></MuiThemeProvider>);
    myContainer.setState({ pageload: true });
    myContainer.update();
    expect(myContainer.state().pageload).to.equal(true);
    expect(myContainer.find('div').length).toBe(1);
    expect(toJson(myContainer)).toMatchSnapshot();
});
it('检查页面加载',()=>{
常量myContainer=挂载(
);
设置状态({pageload:true});
myContainer.update();
expect(myContainer.state().pageload).to.equal(true);
expect(myContainer.find('div').length).toBe(1);
expect(toJson(myContainer)).toMatchSnapshot();
});

您已将变量声明为
myContainer
。但您在其他任何地方都在使用MyContainer。请更正此问题。

请发布您目前为止的测试代码。更新了代码。。哪个
expect
失败?前两个expect失败。谢谢,我已编辑。忘记更新了。但问题仍然存在。