mako4kamiya / tctr50_Baukis2_Rails6

【Ruby on Rails 6 実践ガイド】Dockerを使って顧客管理システムを作る。
MIT License
0 stars 0 forks source link

Chapter 4 RSpec #6

Closed mako4kamiya closed 4 years ago

mako4kamiya commented 4 years ago

自動テストフレームワークのRSpecを使う

mako4kamiya commented 4 years ago

RSpec アールスペック

インストール

bin/rails g rspec:install

【rails_helper.rb】 Railsで、RSpecを使う際に共通の設定を書いておくファイルです。各テスト用ファイルでこちらのファイルを読み込むことで、共通の設定や、メソッドを適用します。

慣習的に

テストの実行

webコンテナのターミナルで、

example (it)メソッド

example "引数" do

end

もしくは

it "引数(英語)" do

end

example group

describe を入れ子にする

describe "引数" do
 example "引数" do 

 end
 example "引数" do

 end
end
mako4kamiya commented 4 years ago

今日はここまで。。

mako4kamiya commented 4 years ago

RSpec 続き

pendingメソッド

pending("引数")を追加することで、赤いエラーが黄色になる。

xexampleメソッド

もしくはxexampleで保留する。

expectメソッド

expectメソッドの使用方法 expect(T).to M T:ターゲット、M:マッチャー(matcher)

例:expect(s.size).to eq(4) s.size==4であれば成功。expect(s.size).not_to eq(4)だと意味が反転する。 expect{ s<< nil }.to raise_error(TypeError)のようにブロックも使える。

exampleの絞り込み

・行番号 rspec spec/experiments/string_spec.rb:11 ・タグ

example "nilは追加できない", :exception do
end

のようなタグをつけて rspec spec --tag=exceptionを実行