gpt4 book ai didi

javascript - 如何在 Jest 测试中模拟 babel 插件?

转载 作者:行者123 更新时间:2023-11-28 21:23:03 25 4
gpt4 key购买 nike

我正在使用一个 babel 插件,它提供了一个名为 myHelper 的函数,该函数在我要测试的组件中使用(但未导入,因为它作为 babel 插件提供)。

我如何使用 Jest“全局”模拟 myHelper

最佳答案

我会让那些组件接受一个 myHelper 属性来选择性地模拟 babel 提供的 myHelper 方法。默认情况下,该属性将指向原始的 myHelper 方法:

class MyComponent extends Component {
constructor() {
// Use myHelper function like:
this.props.myHelper();
}

return (
<div>...</div>
);
}

MyComponent.propTypes = {
myHelper: PropTypes.func.isRequired,
};

MyComponent.defaultProps = {
// set by default to babel-provided method
myHelper: myHelper,
};

..并且在您的测试中使用,例如,enzyme :

const myHelperMock = jest.fn();
const wrapper = shallow(
<MyComponent
myHelper={myHelperMock}
/>
);

关于javascript - 如何在 Jest 测试中模拟 babel 插件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47085570/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com