我是开玩笑和酶的新手,我正在尝试模拟组件的引用。我已经看到了许多解决方案,但是似乎它们与我创建引用的方式无关。
我的裁判声明:
.header_links_ul li{
padding: 0px 20px;
border-right:1px solid #000;
}
.header_links_ul li:last-child{
padding: 0px 20px;
border-right:none;
}
,然后当我在组件中使用ref时:
<input type=email ref={ (input) => { this.email = input; } } />
,我在测试用例中遇到错误:this.email.focus();
的焦点。
测试用例:
undefined
在这里,我尝试为我的测试用例实现一种解决方案,但这似乎不起作用。任何帮助,将不胜感激。
谢谢。
答案 0 :(得分:1)
您将希望将模拟添加到组件本身的实例中,如下所示:
it('details', () => {
wrapper = shallow(<Componentes />);
const instance = wrapper.instance();
instance.email = { focus: jest.fn() };
wrapper.find('.signin-button').simulate('click');
});