Skip to main content
Last updated on Dec 22, 2025 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
  • PyTest
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:
  • /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
    • PyTest
  • 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:
The IBConsole command:

Multiple Commands (script) Example

The original batch file: Copy
Modified batch file: Copy
The IBConsole command:

Accelerating PyTest

You can accelerate PyTest test runs with IBConsole in the same way. Pass the original pytest command as the /command argument and set /test=pytest. The original command:
The IBConsole command:
To distribute a set of PyTest runs, create a batch file (run.bat) that lists each pytest invocation, then modify it to wrap each invocation with xgSubmit so Incredibuild can distribute the processes. Finally, run the script through IBConsole, as shown in the multiple commands example above. The original batch file:
Modified batch file: