IBTestConsole コマンド インターフェース

次の章では、NUnit または GTest を使用しているときに 単体テスト用Incredibuild を実行する方法について説明します。

対応フレームワーク

  • NUnit 2

  • NUnit 3

  • Google Test (Gtest)

実行したフレームワークは自動的に検出されます。ただし、特定のフレームワークを強制的に実行させたい場合は、後述の「/test」フラグを使用することができます。

IBTestConsoleの設定

IBTestConsole を設定するには、Incredibuild のインストールフォルダにあるIBTestConsole.exe ファイルを実行する必要があります。

IBTestConsoleを使った単体テストの実行

IBTestConsole コマンドは次のように記述します。

IBTestConsole [Framework Command + Flags] [IBTestConsole Command Line Options]
  • Command- 単体テストのフレームワークのオリジナルのコマンドを表します。フラグを追加できます (以下を参照)。

  • Options- 以下のセクションで説明されているオプションの1つです。

フレームワークの対応コマンド フラグ

Incredibuild は以下のフレームワーク・コマンド・フラグのみをサポートします。

NUnit 2 の対応フラグ

Nunit2 CLIリファレンス

  • /run
  • /runlist
  • /include
  • /exclude
  • /result、/xml
  • /noresult、/noxml
  • /framework
  • /timeout

NUnit 3 コマンド フラグ

NUnit3 CLIリファレンス

  • @FILE
  • --testlist=FILE
  • --where=EXPRESSION
  • --config=NAME
  • --framework=FRAMEWORK
  • --timeout=MILLISECONDS
  • --seed=SEED
  • --skipnontestassemblies
  • --result=SPEC
  • --noresult
  • --shadowcopy
  • --noheader、--noh
  • --params | p=PARAMETER
  • --dispose-runners

GTest コマンド フラグ

  • --gtest_output

  • --gtest_output=(json|xml)[:DIRECTORY_PATH|:FILE_PATH]

  • --gtest_filter

  • --gtest_filter=POSTIVE_PATTERNS[-NEGATIVE_PATTERNS]

  • --gtest_also_run_disabled_tests

  • --gtest_repeat=[COUNT]

  • --gtest_shuffle

  • --gtest_random_seed=[NUMBER]

IBTestConsoleのコマンドラインオプション

IBTestConsole コマンドに追加できるオプションは次の通りです。

オプション

説明

備考

/help

このメッセージをスクリーンに表示する

/logfile=<filename>

ログファイル名を指定します。

/loglevel=<level>

ロギング レベルを設定します。[トレース、デバッグ、インフォ、警告、エラー、重大エラー]の表示が可能です

/openmonitor

テスト実行時にビルドモニターを開く

/targetdir=<path>

テスト フレームワークを実行する作業ディレクトリを指定します。

テスト アセンブリと異なるディレクトリから IBTestConsole を起動する場合に使用します。

/testlevel=<level>

テスト配信レベルを指定します。

対応可能な値は[auto, assembly, deep, suite, <number of cores to engage>]です。初期値は 「auto」 です。

  • Assembly - 1つのコアに1つのアセンブリを配布します。

  • Auto - 利用可能な最大限のコアを使用します。

  • Deep - プール内の利用可能なすべてのコアを使用し、各テストを異なるコアで実行するように取り組みます。

  • Suite - スイート(1コアにつき1スイート)を基準に配布します。

  • Number of cores - 各アセンブリに使用するコアの数を制限します。すべてのテストがコア間に均等に分散されます (例: テスト数が 1,000 件、N=200 の場合: 200 個のコアで 5 件ずつテストを実行します)。

使用するコアの数によって並列化の効率が左右されることがあります。一般的には「/testlevel=N」オプションを「N」がローカルマシンのコア数の 2.5 倍程度になるように設定します。テスト レベルの最適化についてはこちらをご覧ください。

/test={framework}

実行済みのコマンドを特定のフレームワークとして IBTestConsole に処理させます。

対応フレームワーク

  • /test=NUnit3

  • /test=NUnit2

  • /test=GTest

/silent

サイレントモードの設定(コンソールへの出力を無効にする)

 

/MinWinVer=<version>

ヘルパーエージェントの最低限必要なWindowsのバージョン。

対応可能な値は [XP, 2003, Vista, 2008, 7, 8, 8.1, 10]です

 

/MaxWinVer=<version>

ヘルパーエージェントで使用可能な最新のWindowsバージョン

対応可能な値は [XP, 2003, Vista, 2008, 7, 8, 8.1, 10]です

 

/out=<filename>

コマンドライン出力全体をファイルにリダイレクトする

 

/title="<text>"

ビルド出力にテキスト行を追加する

 

/inputfile=<filename>

入力ファイル名を指定します。Gtestのみサポートされます

 

リターンコード

コード

説明

0

処理が正常に終了。次の全段階で内部エラーは発生しませんでした。

  • ユーザーコマンドが合っています。

  • ディスカバリー ステージ

  • テストの実行

  • 結果の統合 (テストが失敗した場合も含む)

  • コンソール出力の表示 (該当する場合)

1

上記のいずれかの段階で内部エラーが発生。

-1

予期せぬ内部エラーが発生。