ひよこの外部記憶

めもおきば

RSpec備忘録

この記事の目的

  • rspec 3.1の書き方に慣れる
  • 今度使う時のリファレンス用

今回使うバージョン

今回のタスク

1行に1つの整数が入っているファイルを読み込んで

  • 和を出したり
  • 平均出したり
  • 新たな配列作ったり

実際のコード

urara/scorespec(Github)

手順メモ

いつものプロジェクト準備

spec書く前作業

bundle init # Gemfileにrspec取る記述
bundle install

rspec --init # .rspecに「-format d」追記(個人的な好み)

mkdir spec/

TDD始める

  • spec/score_spec.rbから書く
    • ファイル読み込んでscoreオブジェクト作る
    • scoreが持つべき関数を呼ぶようなテストを書く
    • rspec実行、テストこけるの確認
    • score.rbファイルにScoreクラス作り、メソッド定義のみ
    • テスト通るの確認
    • またテスト足す
    • こけるの確認
    • 実装
    • 。。。(繰り返し)

書き方関連

it とspecify

参考: るびま

  • どうやらitは過去specifyを使っていたらしい
  • specifyは今も有効
  • itだと日本語だと違和感があるのでspecify使った物も多い
  • 個人的には
    • type数が少ないitで良い
    • 混ざる位なら全部itで良い

describeとcontext

参考: るびま

  • contextはdescribeのエイリアス
  • describeはネスト出来る
  • describeはテスト対象を表し、contextはテスト状況を表す
  • Githubのscore#get_multi_array参照