テスト

今日の作業

項目、バリデーション、アクションのチェック
修正されたバグの確認

今日の作業でわかったこと&わからなかったこと

最近テストをproductionモードでやっている。
サーバを起動したままMOCKデータを変更してテストを行おうとしたけど変更が反映されない。
developmentモードのときはできてたのに。
と思いバグとして報告した。
結果から言うと実装が悪いわけではなくただ自分の知識不足でした。
以下は先輩の説明引用

developmentモードは、その名の通り開発用のモードなので、
開発者がいちいちサーバーを止めなくても、ソースコードへの変更
が反映されるようにソースコードが自動ロードされています。
また、開発者用なので、例外が発生した場合に原因を見つけやすい
ようにスタックトレースなどの情報がエラー画面には表示されます。

productionモードは、製品用のモードです。つまり本番環境で
動作することを前提としているので、余計な動作をしないように、
ソースコードが変更されてもそれを感知しません。一つのソースファイル
は一度読みこまれたらそれっきりです。
こちらは、エラーがあった場合にスタックトレースなどを表示しても
エンドユーザーには意味がないので、専用のエラー画面を表示します。

前にも実行環境の違いは本で読んだことがあったけど完全に忘れてた。
今度はしっかり覚えておこう。