コードカキマス反撃のシゲハル

新しく学んだことをまとめます

テスト開発(ruby on rails)

テスト開発とは

開発においては定義した関数・メソッドが正しく動作するか、期待していない結果を返さないか、またはアクセスが正しいか、などのテストを書くことがあります。

 

テストの例

サイトにおいて、ログインしなければ閲覧することの出来ないページがあるとします。非ログイン状態でそのページのURLを入力した場合にアクセス出来てはサイトとして良くないでしょう。

そこで、テスト開発では、ログイン時に正しくアクセス出来ること、非ログイン時にはアクセス出来ず元のページへ戻る(そう実装していれば)というようなコードを書きます。

 

テストを書く理由

開発においては機能追加や元々のデータ仕様の変更が起こります。長い開発においては、過去に書いたコードをいちいち覚えるのも大変ですし、他人が書いたコードを編集します。その時に、予期せぬエラーが発生する可能性十分にあります。

テストを書いていれば、そのエラーを検知し、未然にトラブルを防ぐことが可能です。堅牢なシステムを構築するためにはテストは不可欠なものです。

 

どのようにテストを書くか

パターンは色々ありますが、大まかには以下のような流れです。

①テストに使うテストデータの作成

②テストしたい関数、アクセスの実行

③予期した結果が返って来るかチェック、例外処理をキャッチできているかチェック

 大体はこのような感じです。

 

細かい記法は省略。ちなみに、railsのテストしか書いた事がないです。テストを書くときに参考にしている方のQiitaはコチラ。

使えるRSpec入門・その1「RSpecの基本的な構文や便利な機能を理解する」 - Qiita

使えるRSpec入門・その2「使用頻度の高いマッチャを使いこなす」 - Qiita

などなど・・・