class myClass extends React.Component {
async componentDidMount(){
const xyz = helperclass.queryParameters('parameter')
// how can I mock xyz to help me change the value to test the conditional below
if(xyz){
// do something here
}
}
}
已经编辑了上面的代码,现在我想通过将其模拟出来,然后将其他内容返回以测试条件条件中的内容是否完成,来将const xyz测试为helper函数的值
答案 0 :(得分:0)
由于myFunctionToMock
是原型方法,因此可以模拟为
jest.spyOn(MyClass.prototype, 'myFunctionToMock').mockImplementation(...);
在类实例化之前。
“酶”中的另一个选项是使用disableLifecycleMethods
option禁用钩子,在wrapper.instance()
上模拟方法,然后手动调用componentDidMount
。
如果某个方法不属于this
,则可以在该方法所属的对象上对其进行模拟:
jest.spyOn( helperclass, 'queryParameters').mockImplementation(...);
同样,这应该在类实例化之前完成,或者需要使用disableLifecycleMethods
。