组件内部方法调用的开玩笑测试将挂载失败



在我的组件中,我在componentWillMount中调用this.props.foo()

public componentWillMount() {
    this.props.foo();
}

现在我想用开玩笑来测试这个方法是否被调用:

it("should call startCountdown when mounted.", () => {
        const foo= jest.fn();
        const newProps: ComponentProps = {
            foo,
            ...defaultProps,
        };
        renderComponent(newProps);
        expect(foo).toHaveBeenCalled();
    });

renderComponent这样做:

const renderComponent= (props: ComponentProps = defaultProps) => {
        const rendered = TestRenderer.create(
            <Component {...props}/>);
        return rendered.root;
    };

为什么这个测试失败了?在 React Native 中监视componentWillMount的正确方法是什么?

        const newProps: ComponentProps = {
            ...defaultProps,
            foo,
        };

foo应该排在最后以覆盖其他道具

相关内容

  • 没有找到相关文章

最新更新