なぜreducerのテストが重要か? flow環境で型によって返るStateが担保されていたとしても、依然としてreducerのテストは重要です。 簡単な例をあげると、INCREMENTでcountが+1されるロジックがあるとき、number型であると保証されていたとしても、+1されているのか-1されているのか、はたまた+100000されているのかについては保証されていないからです。 そのロジックを担保するのがテストの役割です。 reducerのテストの書き方 flow環境とそれ以外でテストの書き方が違います。 トラディショナルなテストだと{type: ACTION}の形式でテストを書くことが多いと思いますが、flow環境だとActionが型で担保されているためアクションクリエイターをそのまま実行して書きます。 トラディショナルな書き方でもいいですが、この方が補完も効くのでオススメします。
![s2s: reduxにおけるreducerのテスト。あなたがテストを書く必要はないかも知れない - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/4682851428acb276915510e04c28cfca0822ce6e/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9czJzJTNBJTIwcmVkdXglRTMlODElQUIlRTMlODElOEElRTMlODElOTElRTMlODIlOEJyZWR1Y2VyJUUzJTgxJUFFJUUzJTgzJTg2JUUzJTgyJUI5JUUzJTgzJTg4JUUzJTgwJTgyJUUzJTgxJTgyJUUzJTgxJUFBJUUzJTgxJTlGJUUzJTgxJThDJUUzJTgzJTg2JUUzJTgyJUI5JUUzJTgzJTg4JUUzJTgyJTkyJUU2JTlCJUI4JUUzJTgxJThGJUU1JUJGJTg1JUU4JUE2JTgxJUUzJTgxJUFGJUUzJTgxJUFBJUUzJTgxJTg0JUUzJTgxJThCJUUzJTgyJTgyJUU3JTlGJUE1JUUzJTgyJThDJUUzJTgxJUFBJUUzJTgxJTg0JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz1iODI1ODk1NjNlZTk5Nzg3MGY0ZmEzMGZlOTA0NjJjYQ%26mark-x%3D142%26mark-y%3D57%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBha2FtZWNvJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9MzYmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1mOTRmMTAwZTNhNzBkYjQ0NzQ1YzVlNzVlZDYyYWI1Yg%26blend-x%3D142%26blend-y%3D486%26blend-mode%3Dnormal%26s%3Dbd1f5ca22df63e6cb890c543f1b6f4b4)