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

ここでは Incredibuild for Unit Tests をアセンブリ レベルの分散モードに設定し、NUnit と Gtest 以外の対応フレームワークで実行する方法をみていきます。

対応フレームワーク

IBConsole は次のフレームワークに対応しています。

  • MSTest

  • VSTest

  • XUnit

  • CppUTest

  • QTtest

  • CTest

実行したフレームワークは自動的に検出されます。特定のフレームワークを実行したい場合はコマンラインに「/test={test framework}」オプションを追加します。

IBConsole の実行

IBConsole を設定・実行するには、Incredibuild のインストール フォルダ内の「IBConsole.exe」ファイルを開きます。これはパラメーターに応じて、様々な動作モードで Incredibuild for Unit Tests を設定できるコンソール アプリケーションです。

IBConsole コマンドの使い方

IBConsole には 2 種類の操作モードがあります。

  • シングル コマンド: このモードでは下の例のように「IBConsole /Command」内の引数としてコマンドが転送されます。

  • マルチ コマンド (スクリプト): スクリプト内のコマンドを並列実行するには、IBConsole コマンドを実行する前にスクリプトを修正し、「xgSubmit.exe」と「xgWait.exe」(任意) を呼び出して、分散したいプロセスを実行する必要があります。詳しくはこちらをご覧ください。

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

IBConsole /COMMAND="<job command line>" /test=”<test framework>” [options]

  • /command: ユニットテスト フレームワークのオリジナルのコマンドです。フラグを追加できます。

  • /test: テスト フレームワークを指定します。設定できる値は次の通りです。

    • MSTest
    • VSTest
    • XUnit
    • CppUTest
    • QTtest
    • CTest
  • [options ]: IBConsole.exe コマンドラインのオプションです。詳しくはこちらをご覧ください。

IBConsole コマンドの例

シングル コマンドの例

オリジナルのコマンド:

ctest -C Release --parallel 100

IBConsole コマンド:

IBConsole /command=”ctest -C Release --parallel 100” /test=ctest

マルチ コマンド (スクリプト) の例

オリジナルのバッチ ファイル:

コピー
run.bat

vstest.console.exe UnitTestProject1.dll

vstest.console.exe UnitTestProject2.dll

vstest.console.exe UnitTestProject3.dll

vstest.console.exe UnitTestProject4.dll

修正後のバッチ ファイル:

コピー
xgSubmit /command vstest.console.exe UnitTestProject1.dll

xgSubmit /command vstest.console.exe UnitTestProject2.dll

xgSubmit /command vstest.console.exe UnitTestProject3.dll

xgSubmit /command vstest.console.exe UnitTestProject4.dll

IBConsole コマンド:

IBConsole /command=run.bat /test=vstest