IBConsole Command Interface (All frameworks excluding NUnit & GTest)
This section includes instructions on how to configure and run Incredibuild for Unit Tests in an Assembly-level mode with all supported frameworks except NUnit.
Supported frameworks:
IBConsole supports the following frameworks:
-
MSTest
-
VSTest
-
XUnit
-
CppUTest
-
QTtest
-
CTest
IBConsole will automatically detect the executed framework. However, if you want to force it to run a specific framework, you can use the /test={test framework} CLI command line option.
Running the IBConsole
To configure and run the IBConsole, you should first run the IBConsole.exe file, located in the Incredibuild installation folder. This is a console application that initializes Incredibuild for Unit Tests in various modes of operation, according to its various parameters.
IBConsole Command Usage
IBConsole has two modes of operation:
-
Single command - in this mode, the command is transferred as an argument within IBConsole /Command, as described below.
-
Multiple commands (script) - to enable parallelization of each command in the script, the script itself should be modified before running the IBConsole command to call xgSubmit.exe and (optionally) xgWait.exe so that processes whose execution you wish to distribute. For more information, see Using Submission Interfaces.
The IBConsole commands have the following syntax:
IBConsole /COMMAND="<job command line>" /test=”<test framework>” [options]
-
/command - the original command of your Unit tests framework. The command may include specific flags.
-
/test - specifies the test framework. The available values are:
- MSTest
- VSTest
- XUnit
- CppUTest
- QTtest
- CTest
-
options – the IBConsole.exe command line options. For a detailed list of available options, see here.
IBConsole Command Examples
Single Command Example
The original command:
ctest -C Release --parallel 100
The IBConsole command:
IBConsole /command=”ctest -C Release --parallel 100” /test=ctest
Multiple Commands (script) Example
The original batch file:
run.bat
vstest.console.exe UnitTestProject1.dll
vstest.console.exe UnitTestProject2.dll
vstest.console.exe UnitTestProject3.dll
vstest.console.exe UnitTestProject4.dll
Modified batch file:
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
The IBConsole command:
IBCosnsole /command=run.bat /test=vstest