先日コードを書いて先輩にコードレビューをしてもらっていたところ「テストコードが無いから書いて」と言われました。
今回書いたものはWebサーバーアプリケーションの一部で特定のパスにリクエストが来たらデータベースから値を返すようなものです
具体的には以下のようなものです(パスやSQLは実際のものとことなりますが、ほかは特に簡略化しているわけではありません)
パス/getAll
にリクエストがきたらデータベースにSELECT * FROM items
を発行して値を返す
何をテストしたらいいかと聞くと「ちゃんと/getAllにリクエストしたらアイテムが全部返ってくるかテストして」と言われました
上で書いたように実装としては本当にこれだけです
テストすることが全くの無駄とは思いませんが複雑なコードではないので必要性が全くわかりませんでした
テストコードを書くのは大変でテスト用のデータベースをセットアップして値を放り込んでリクエストを模倣してサーバーに投げるということをしなくてはならないのでとても億劫です
テストを書いたほうがいいとき、書かなくてもいいときってみなさんどういう基準でやっていますか?
また、上で書いたコードにテストをする必要はあると思いますか?