2021-09-21から1日間の記事一覧

testを作る際のsetupメソッドとは

setupメソッドとは testを作る際に、 def setup @user = User.new(name:"hoge",nickname:"fuga") end などとしてsetupメソッドを定義することがある。このsetupメソッドは、他のテストが実行される前にかならず実行されるものになっていて、他のテストの中で…

findとfind_byの違い

Userのidが1のデータがあると仮定する。 User.find(1) User.find_by(id: 1) では同じようにUserのidが1のデータを取ってくるが、存在しないUserのidが2のデータを取ってこようとすると、 User.find(2) # => errorが出る。 User.find_by(id: 2) # => nilを返…

blank?メソッド

空文字" "を認識してくれるメソッド。Rubyには搭載されておらず、RailsがRubyっぽいメソッドとして準備してくれているもの。 空文字かどうか判別するのにempty?メソッドもあるが、これは、" "この文字列はfalseを返すため、blank?と挙動が少し異なる。

test assert_selectメソッドについて

testで使うassert_selectメソッドは特定のHTMLタグが存在するかどうかをテストしてくれます。「セレクタ」と呼ばれることもあります。 assert_select "title","Home | Sample App" と書くと、titleタグ内にHome | Sample Appという文字列があるかどうかをチ…

bundle install とupdateのちがい

bundle installはGemfile.lockとGemfileの差分をインストールしてほしいときに使う。 bundle updateはGemfile.lockとGemfileの中身がガラッと変わってしまった場合にGemfile.lockを無視してGemをインストールしてもらうときに使う。