【发布时间】:2018-06-15 07:36:47
【问题描述】:
我正在尝试使用 jest 和酶在 react native 中测试这个组件:
export class MyItem extends PureComponent {
_onDelete = () => {
console.log('Deleting !')
}
_renderSwpItem = () => {
return (
<TouchableOpacity id="delete" onPress={this._onDelete}>
<Icon name="delete" size={50} color={Colors.white}/>
</TouchableOpacity>
)
}
...
}
到目前为止,我写道:
describe('Testing MyItem', () => {
const wrapper = shallow( <MyItem />)
it('_renderSwptItem press works', () => {
const instance = wrapper.instance()
const swpWrapper = shallow(instance._renderSwpItem())
const deletePressSpy = jest.spyOn(instance, '_onDelete')
swpWrapper.find('#delete').simulate('press')
expect(deletePressSpy).toHaveBeenCalledTimes(1)
})
})
我可以在日志中看到 Deleting ! 但 expect(deletePressSpy).toHaveBeenCalledTimes(1) 失败。我究竟做错了什么 ?
【问题讨论】:
标签: react-native jestjs enzyme