はじめに
私がテストコードを書くときに、意識していたことをわかりやすく、まとめられたらいいなって思います。これからテストコード書く人の参考にしていただけたら、幸いです。
ユーザーの視点に立ってみる
まず、ユーザーの視点に立ってみて、ユーザーがどのようにアクセスしてくるのか、どのボタンを押すのか、その行為によって、どのような結果を帰ってきて欲しいのか、をしっかり考えます。私は、よくわからなくなることがあるので、紙に書いてわかりやすくまとめたり、口に出しながらやったりしています。ユーザーは何もデータがまだない状態でやっていることを忘れないようにしていました。
実際に書いてみたコードを読み、ユーザーの動きをシミュレートする
自分で、書いたコードが本当に考えていたユーザーの動きと一致しているのかどうかを、しっかり確認していきます。細かいところで、まちがえたりしていることがあるので、気を付けましょう。
テストを実際にやってみる
テストを実際にやってみると、自分があっていると思っていた部分が間違えていることがあるので、すべてのテストが通るまで、間違えている部分を修正しましょう!
リファクタリング
同じことを何回もする場合は、その部分を関数化したりすると読みやすさがあがります!
やっておいてよかったこと
今回は、Ruby on Railsの開発だったので、テストをするたびに、データベースの中身が増えて大変でした でも、データベースクリーナーを使って、毎回データのないクリーンな状態から始められたので、とてもよかったです。
さいごに
わたしは、師からTDD(テスト駆動開発)を教えていただきました。TDDをする前は、小さなバグやバグが起きる原因を探すのが大変でしたが、TDDを始めたことにより、バグの発見や、正しくコードが動くように書きなおすことが早くできるようになりました。ぜひ、みなさんTDDやってみてください