LoginSignup
2
3

More than 5 years have passed since last update.

テスト(JEST,Jasmine)のtoHaveBeenCalledWithとtoBeCalledWithの違い

Last updated at Posted at 2017-04-27

toHaveBeenCalledWithとtoBeCalledWithの違い

  • toHaveBeenCalledWithはjasmine
  • toHaveBeenCalledWithはspyが呼ばれたかを確認する
  • toBeCalledWithはjest
  • toBeCalledWithはモック関数が呼ばれたかを確認する

ユースケース

  • 親コンポーネント
    • 子コンポーネント

親コンポーネントから子コンポーネントに関数をpropsで渡していて、
子コンポーネントでpropsで渡された関数をテストする時はjestの方。
理由はspyが仕込めないから。
spyOnでオブジェクトに入り込み、監視対象メソッドをspyに書き換えるけど、propsは書き換えられないようです。
jestの方であれば、spyを仕込まなくてよくて、ダミー関数をjest.fn()で作成して、そのダミー関数が呼ばれたかを確認すればいい。

参照先
jasmine
jest

reactもテストも初めてだから、メッチャわけ分からんかった。
ドキュメントが英語しかないから、大学受験の英語やっといてよかったな〜と思いました。
話したりは無理だけど、簡単になら読めるので。
英語の勉強も頑張ろうと思います。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3