16
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

はじめてのアドベントカレンダーAdvent Calendar 2023

Day 19

【Rails】rails newで--skip -testし忘れて、すでにtestフォルダにファイルたくさんができていた時の対処法

Last updated at Posted at 2023-12-18

この記事は「はじめてのアドベントカレンダー Advent Calendar 2023」の19日目に参加しています🎅

はじめに

こんにちは、あっぴー(@super-appy)と申します。
プログラミングスクールに通ってRuby on Railsを学習しています。
初学者のため、記事に誤りなどがありましたらコメントにてご指摘いただけますと幸いです。
よろしくお願いします。

記事のきっかけ

先日、WEBアプリを作り始めました。Dockerで環境構築をして、いざrails newしました。

rails new . --database=postgresql -j esbuild --css tailwind

何度も確認して、ドキドキしながらrails newしました。
そして、開発を進めること数日。rails g ~~~するたびに、testファイルが増えている👀
今回はRSpecを導入する予定なので、このデフォルトで生成されるtestファイルは使いません。
消してもrails newしたら増えるし...と悩んでいました。

そんなとき、スクールの講師の方から「testファイルは全部消してgeneratorの設定をしましょう!」とアドバイスいただいたので、調べて実装してみました。

環境

  • Ruby 3.2.2
  • Ruby on Rails 7.0.8

手順

1. 既存のテストファイルを削除する

方法は2つあります。

  • ターミナルでコマンドを使って削除する
  • 手動でファイルを削除する

①ターミナルでコマンドを使って削除

プロジェクトのルートディレクトリに移動し、以下のコマンドを実行

rm -rf test

rmコマンドは削除の前の確認がなく、ファイルが直接削除されます。

②手動でファイルを削除

この場合、削除したファイルはゴミ箱に移動されるため、比較的安全に削除することができます。

2. ジェネレータのデフォルト設定を変更

config/application.rb
module YourAppName
  class Application < Rails::Application
    # 以下の設定を追加
    config.generators do |g|
      g.test_framework false
      g.helper false
      g.stylesheets false
      g.javascripts false
    end
  end
end

g.test_framework : テストフレームワークを生成しないようにする
g.helper : ヘルパーファイルを生成しないようにする
g.stylesheets : CSSを生成しないようにする
g.javascript : JSファイルを生成しないようにする

その他、生成しなくてもいいファイルがあれば適宜追加する。

Railsサーバーを再起動すると変更が反映されます

おわりに

テストファイルが必要なければ、最初でスキップしておきましょう。

rails new . --database=postgresql -j esbuild --css tailwind --skip -test

同じような状況の方のお役に立てますと幸いです!

16
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?