[備忘録]覚えとくと使い勝手の良いコマンド
こんにちは!
今回はrails test
におけるコマンド操作について書き溜めておきます。
Rails Testコマンドとは
rails test
コマンドの基本的な使い方
Railsには、テストの実行と管理を支援するためのコマンドラインツールが用意されていいて、その中でも基本的なコマンドがrails test
です。
rails test
上記のコマンドを使用することで、テストスイート内のすべてのテストケースを実行できます。
テストが成功すると緑の点が表示され、エラーがある場合は赤い点が表示されます。
テスト結果の確認
成功したテストケースと失敗したテストケースの数が表示され、詳細な情報も提供されます。
これを通じて、どのテストが失敗したのかを特定し、問題を修正できます。
特定のテストフォルダを実行する
モデルテストだけ、コントローラーテストだけ、などなど特定のフォルダ内のテストファイルだけを実行したい場合は、パスに[*]アスタリスクを付けます。
rails test test/system/*
特定のテストファイルを実行する
記述したtestファイルのパスをコマンドに記述することで、特定のファイルのみ実行する事ができます。
rails test test/path/to/test_file.rb
特定の行のテストを実行する
以下のようなテストがあったとします。
1 require "test_helper"
2
3 class TestFile < ActiveSupport::TestCase
4 test "the truth" do
5 assert true
6 end
7
8 test "calculate" do
9 calculated_number = 1 + 1
10
11 assert_equal 2, calculated_number
12 end
13 end
8行目のテストだけ実行したい場合は、パスの末尾に:
コロンと行数を記述します。
rails test test/path/to/test_file.rb:8
詳細なテスト結果を表示
テスト結果に詳細な情報が表示され、失敗したテストのスタックトレースなどが確認できます。
rails test --verbose
緑の点だった部分が文字列となるイメージですね
rails test --verbose
Run options: --verbose
# Running:
TestFile#test_the_truth = 0.92 s = .
TestFile#test_calculate = 0.91 s = .
今回は以上となります。
ほかにも数多くのオプションや小技がありますので別の機会に第二弾を投稿しますね。