2
我试图测试一个函数回调函数被调用用于我的组件内部的图像。使用酶,sinon测试映像内部反应组件内部
这是组件:
const ImageById = (props) => {
return (
<div>
<img src={props.url} onLoad={props.onLoad} onError={props.onError} />
</div>
);
};
而且我的测试安装的组件,然后间谍回调函数:
describe('ImageById',() => {
it('should call load or error',() => {
let callbackSpy = sinon.spy();
let comp = mount(ImageById, {url: 'some-url', onLoad: callbackSpy, onError: callbackSpy});
expect(callbackSpy.called).to.equal(true);
});
});
测试失败,因为内部Img
标签是永远不会调用其onload
也不onerror
方法。在生产中,代码工作正常,可能与测试环境有关。它就像Img
标记对设置的url
没有反应。