jest
とsnapshots
を実装しようとしていて、問題が発生しました。解決策はおそらく単純ですが、私はそれを見つけることができません。ReduxアクションでのJest play
LoginForm.js
class LoginForm extends React.Component {
constructor(props) {
super(props)
}
}
componentWillMount(){
this.props.startSpinner()
}
render(){
return(....)
}
}
LoginForm.spec.js
it('should render snapshot',() => {
const component = renderer.create(
<LoginForm />
)
const tree = component.toJSON()
expect(tree).toMatchSnapshot()
})
startSpinner作用
export function startSpinner() {
return (dispatch) => {
dispatch({
type: 'WINDOW_START_SPINNER',
})
}
}
W私はテストを実行しますが、これはこのアクションだけでなく、redux
アクションと呼ばれるすべての関数でこのエラーをスローします。
TypeError: this.props.startSpinner is not a function
は、どのように私はjest
このredux
アクションで素晴らしいプレーすることができますか?
あなたがstartSpinnerを確保したい場合()が呼び出されたときは、モックを渡すことができます: 'const mockStartSpinner = jest.fn(); 'そうでなければ()=> {}は完全にうまくいっていないので、そのためにlodashライブラリ全体を呼び出す必要はありません! –
stone