Javascript React条件呈现组件测试用例jest
有人能帮我写一个使用jest和Ezyme的条件渲染组件测试用例吗Javascript React条件呈现组件测试用例jest,javascript,reactjs,jestjs,enzyme,Javascript,Reactjs,Jestjs,Enzyme,有人能帮我写一个使用jest和Ezyme的条件渲染组件测试用例吗 {this.state.addingNewContent ? <AddContent contentId={this.state.contentId} added={this.addContentHandler} meta={option} closeAddContent={this.closeAddConte
{this.state.addingNewContent ?
<AddContent
contentId={this.state.contentId}
added={this.addContentHandler}
meta={option}
closeAddContent={this.closeAddContent}
assignedData={this.state[option.name]} />
: <Lock
lock={this.state.isLocked}
lockedBy={this.state.lockedBy}
clicked={() => this.toggleModal(true, 'lock')}>}
{this.state.addingNewContent?
:this.toggleModal(true,'lock')}>}
对于条件渲染,您需要模拟状态,如
import AddContent from '../COMPONENT';
import Lock from '../COMPONENT'
it('should render AddContent component', () => {
const wrapper = shallow(<MyComponent {...props} />);
wrapper.setState({ addingNewContent: true });
const component = wrapper.find(AddContent);
expect(component.length).toBe(1);
});
it('should render Lock Component', () => {
const wrapper = shallow(<MyComponent {...props} />);
wrapper.setState({ addingNewContent: true });
const component = wrapper.find(Lock);
expect(component.length).toBe(1);
});
从“../COMPONENT”导入AddContent;
从“../COMPONENT”导入锁
它('应该呈现AddContent组件',()=>{
常量包装器=浅();
setState({addingNewContent:true});
const component=wrapper.find(AddContent);
expect(组件长度).toBe(1);
});
它('应该呈现锁组件',()=>{
常量包装器=浅();
setState({addingNewContent:true});
const component=wrapper.find(锁);
expect(组件长度).toBe(1);
});
最好有单独的测试用例。对于else用例?我得到的错误如下:expect(received)。toBe(expected)expected:1 received:0 mycomponent是您的类组件名称。我仍然得到这个错误expected(received)。toBe(expected)expected:1 received:0是否可以添加类组件的状态代码