TeamCity 2020.2 ヘルプ

Rake

Rake ビルドランナーは、Test::Unit、Test-Spec、Shoulda(英語)RSpec(英語)Cucumber(英語) テストフレームワークをサポートします。Rake 0.7.3 gem 以降で Ruby バージョンマネージャー(MRI Ruby、JRuby、IronRuby、REE、MacRuby など)を使用してインストールされた Ruby インタープリターと互換性があります。

前提条件

Ruby インタープリター(MRI Ruby、JRuby、IronRuby、REE、MacRuby など)と rake 0.7.3 gem 以上(必須)および Ruby(または ROR)プロジェクトとテストフレームワークに必要なすべての gems が少なくともインストールされていることを確認してください 1 つのビルドエージェント。複数の Ruby インタープリターを異なるフォルダーにインストールできます。Linux/ macOS では、RVM(英語) または rbenv(英語) を使用して構成する方が簡単です。コマンド行ビルドランナーステップを使用して、Ruby インタープリターと必要な Ruby gems をインストールすることができます。これらのインタープリターのエージェント要件を自動的に構成する場合は、ビルドエージェント構成プロパティにそのパスを登録してから、Rake ビルドランナーの構成でそのようなプロパティ名を参照する必要があります。gem をインストールするには、以下を実行します。

gem install <gem_name>

詳細については、Ruby Gems マニュアル(英語)を参照できます。

gem コマンドの代わりに、Bundler gem(英語) を使用して gems をインストールできます。

注意事項

  • Ruby の保留中の仕様は、オーバーウィータブに無視されたテストとして表示されます。

  • Rake Runner は独自の単体テストランナーを使用し、RUBYLIB 環境変数を使用してそれをロードします。プログラムがこの環境変数をクリアしないようにする必要がありますが、パスを追加することもできます。

  • Windows OS で --color オプションを有効にして RSpec を実行する場合、RSpec は win32console gem のインストールを推奨します。この警告はビルドログに表示されますが、無視してかまいません。TeamCity Rake Runner は、ビルドログの色付き出力をサポートせず、この機能を使用しません。

  • Rake Runner は、カスタムフォーマッターを使用して仕様例を実行します。追加のコンソールフォーマッタを使用すると、ビルドログに冗長な情報が含まれます。

  • rakefile の Spec::Rake::SpecTask.spec_opts は、SPEC_OPTS コマンドラインパラメーターの影響を受けます。Rake Runner は常に SPEC_OPTS を使用してカスタムフォーマッタを設定します。Web UI でスペックオプションを設定する必要があります。Cucumber テストオプションにも同じ制限があります。

  • ビルド結果に HTML レポートを含めるには、対応するレポートタブを追加できます。

Rake ランナー設定

Rake パラメーター

オプション

説明

Rakefile ファイルへのパス

デフォルトのパスを使用したくない場合は、Rakefile パスを入力します。指定されたパスは、ビルドチェックアウトディレクトリに相対的でなければなりません。

Rakefile コンテンツ

既存の Rakefile を使用する代わりに、Rakefile のコンテンツを入力します。Rake を実行する前に、指定されたコンテンツから新しい Rakefile が動的に作成されます。

作業ディレクトリ

オプション。ビルドチェックアウトディレクトリと異なるかどうかを指定します。

Rake タスク

default タスクを使用したくない場合は、スペースで区切ったタスク名を入力してください。例: test:functionals または mytask:test mytask:test2

追加の Rake コマンドラインパラメーター

指定されたパラメーターが rake コマンドラインに追加されます。コマンドラインの形式は次のとおりです。

ruby rake <Additional Rake command line parameters> <TeamCity Rake Runner options, e.g TESTOPTS> <tasks>

Ruby インタープリター

オプション

説明

デフォルトの Ruby を使用

Ruby 環境コンフィギュレータビルド機能設定で定義された Ruby インタープリター設定を使用するか、PATH でインタープリターが検索されます。

Ruby インタープリターパス

Ruby インタープリターへのパス。パスを空にすることはできません。このフィールドは、環境変数とシステム変数の値をサポートします。例:

%env.I_AM_DEFINED_IN_BUILDAGENT_CONFIGURATION%

RVM インタープリター

ここで、RVM インタープリター名と、オプションでビルドエージェントで構成された gemset を指定します。インタープリター名は空にできません。gemset が指定されていない場合、デフォルトのものが使用されます。

起動パラメーター

オプション

説明

Bundler: バンドル exec

プロジェクトで Bundler の要件(英語)マネージャーを使用していて、Rakefile がバンドラーセットアップスクリプトをロードしない場合、このオプションを使用すると、bundle exec コマンドエミュレーションを使用して rake タスクを起動できます。 bundle install コマンドを実行する場合は、Rake ステップの前のコマンド行ステップで実行する必要があります。また、Ruby インタープリターをコマンドラインランナーに自動的に渡すように Ruby 環境コンフィギュレータビルド機能を設定することを忘れないでください。

デバッグ

起動 / 実行ステージを追跡するオプションをチェックして、ビルドログに Invoke ステージデータを表示できるようにします。

テストレポート

オプション

説明

添付記者

TeamCity でビルド結果ページの専用テストタブにテスト結果を表示する場合は、使用するテストフレームワークをここで選択します: Test::Unit、Test-Spec、Shoulda、RSpec、または Cucumber。

既知の問題

  • Rake タスクまたはテストが 1 つのビルドのスコープ内で並行して実行される場合、ビルドの出力とテストの結果は不正確になります。

  • RVM を使用している場合は、現在の rvm SDK が設定されていないときに TeamCity エージェントを起動するか、最初に rvm system を呼び出すことをお勧めします。

追加のランナーオプション

これらのオプションは、ビルドパラメーターセクションのシステムプロパティを使用して構成できます。

オプション

説明

system.teamcity.rake.runner.gem.rake.version

Rake ビルドの起動に使用する rake gem を指定できます。

system.teamcity.rake.runner.gem.testunit.version

アプリケーションが(Ruby sdk に)インストールされている最新以外のテストユニット gem バージョンを使用している場合は、ここで指定します。そうしないと、Test::Unit テストレポーターが誤った gem バージョンを読み込もうとし、実行時の動作に影響を与える可能性があります。テストユニット gem がインストールされているが、アプリケーションが Ruby 1.8.x SDK にバンドルされている Test::Unit を使用している場合は、バージョン値を「組み込み」に設定します。

system.teamcity.rake.runner.gem.bundler.version

指定されたバンドラー gem バージョンのバンドラーエミュレーションを起動します(gem はエージェントにすでにインストールされている必要があります。

system.teamcity.rake.runner.custom.gemfile

チェックアウトディレクトリのルートにない場合、Gemfile をカスタマイズします。

system.teamcity.rake.runner.custom.bundle.path

TeamCity が <Gemfile_containing_directory>/.bundle/config から正しくフェッチしない場合、BUNDLE_PATH を設定します。

Rake サポートは、オープンソースプラグインとして実装されています。開発リンクについては、プラグインのページ(英語)を参照してください。

関連ページ:

コマンド行

コマンドラインビルドランナーを使用すると、OS でサポートされている任意のスクリプトを実行できます。コマンドラインランナー設定:一般設定作業ディレクトリコマンドを実行する作業ディレクトリを指定します(ビルドチェックアウトディレクトリと異なる場合)。実行モードを指定します: パラメーターを指定して実行可能ファイルを実行するか、カスタムシェル / バッチスクリプトを実行します(以下を参照)。コマンド実行可能このオプションは、実行ドロップダウンメニューでパラメーターで実行可能が選択されている場合に使...

テスト

RubyMine は、Ruby/ Rails アプリケーションのテストに使用される最も一般的なフレームワークとの統合を提供します。複数または個別のテストを実行したり、テストとテスト対象間を移動したり、不足しているテストを作成したりできます。サポートされているテストフレームワーク / ライブラリ:次のテストフレームワークがサポートされています。MinitestMinitest は、TDD および BDD アプローチ、モック、ベンチマークをサポートするテストフレームワークです。RubyMine で...

ビルド結果にサードパーティのレポートを含める

レポートツールが HTML 形式でレポートを作成する場合、TeamCity をカスタムタブで拡張して、サードパーティのレポートツールが提供する情報を表示できます。ツールによって提供されるレポートは、ビルド結果ページまたはプロジェクトホームページのいずれかに表示できます。一般的な流れは次のとおりです。HTML レポート(できれば zip アーカイブ内)を生成するようにビルドスクリプトを構成します。サーバーへのビルドアーティファクトとしてのレポートの発行を構成します。この時点で、ビルドアーティファク...