MPS 3.3 Help

Run/Debug Configuration: JUnit

JUnit run/debug configurations define how unit tests that are based on the JUnit testing framework should be run.

The dialog box consists of the following tabs:

It also contains a set of options that are common for all run/debug configurations and a toolbar that lets you manage your configurations.

Configuration tab

ItemDescription
Test kind From this drop-down list, select the scope for your tests and fill in the fields depending on your selection.
All in package Select this option to run all unit tests in the specified package. Fill in the following fields:
Package Specify package name
Search for tests Select where in your project MPS shall look for test classes related to the current package:
  • In whole project: MPS will look for test classes in all project modules
  • In single module: MPS will look for test classes only in the module selected in the Use classpath of module field
  • Across multiple dependencies: MPS will look for test classes only in the module selected in the Use classpath of module field, and in the modules that depend on it
All in directory Select this option to run all unit tests in the specified directory. Fill in the following field:
Directory Specify the directory where you want to run the tests. It will act as the root directory for all relative input and output paths.
Pattern Select this option to run a set of test classes. This set may include classes located in the same or different directories, packages or modules. Fill in the following fields:
Pattern Specify the required classes. Each class in this field must be represented by its fully qualified name. Class names must be separated with ||. You can type class names manually, or click add on the right (or press Shift+Enter) and search for classes you want to add in the dialog that opens.

You can also create a suite test, i.e. a bundle of several test classes that will be run together. To create a suite test class, click edit_scopes_icon on the right and type the test classes you want to be run as a suite in the Configure suit tests dialog that opens. As a result, a new class will be created with the @Suite annotation.

Method Specify the method to be launched (passed to the JRE). Type method name, or click browseButton and select the desired method in the dialog that opens.
Search for tests Select where in your project MPS shall look for test classes related to the current package:
  • In whole project: MPS will look for test classes in all project modules
  • In single module: MPS will look for test classes only in the module selected in the Use classpath of module field
  • Across multiple dependencies: MPS will look for test classes only in the module selected in the Use classpath of module field, and in the modules that depend on it
Class Select this option to run all tests in a class.

Fill in the following field:

Class Specify the fully qualified name of the class to be launched (passed to the JRE). Type the class name or click browseButton and select the desired class in the dialog that opens.
Method Select this option to run an individual test method.

Fill in the following fields:

Class Specify the fully qualified name of the class to be launched (passed to the JRE). Type the class name or click browseButton and select the desired class in the dialog that opens.
Method Specify the method to be launched (passed to the JRE). Type method name, or click browseButton and select the desired method in the dialog that opens.
Category Select this option if you only want to run test classes and test methods that are annotated either with the category given with the @IncludeCategory annotation, or a subtype of this category. Learn more about JUnit categories.

Fill in the following fields:

Category Specify the desired category. Type category name, or click browseButton and select the desired category in the dialog that opens.
Search for tests Select where in your project MPS shall look for test classes related to the current package:
  • In whole project: MPS will look for test classes in all project modules
  • In single module: MPS will look for test classes only in the module selected in the Use classpath of module field
  • Across multiple dependencies: MPS will look for test classes only in the module selected in the Use classpath of module field, and in the modules that depend on it
Fork mode This option controls how many Java VMs will be created if you want to fork some tests. Select method or class to create a separate virtual machine for each method or class respectively.

The available options in this drop-down list depend on the Test kind setting.

Repeat If you want to repeatedly run a test, select the threshold from this drop-down list. You can select to run your test once, n times (in this case specify the number of times in the field on the right), until the test fails, or until it is stopped.
VM options If necessary, specify the string to be passed to the VM. This string may contain the options such as -mx, -verbose, etc.

When specifying the options, follow these rules:

  • Use spaces to separate individual options, for example, -client -ea -Xmx1024m.
  • If an option includes spaces, enclose the spaces or the argument that contains the spaces in double quotes, for example, some" "arg or "some arg".
  • If an option includes double quotes (e.g. as part of the argument), escape the double quotes by means of the backslashes, for example, -Dmy.prop=\"quoted_value\".

If there is not enough space, you can click edit_scopes_icon and enter the string in the dialog that opens.

The -classpath option specified in this field overrides the classpath of the module.

Program arguments In this field, type a list of arguments to be passed to the program in the format you would use in the command line. If necessary, click the edit_scopes_icon button and type the required arguments in the dialog that opens.

Use the same rules as for specifying the VM options.

Working directory Specify the directory that will act as the current directory when running the test. It will act as the root directory for all relative input and output paths. By default, the directory where the project file resides, is used as a working directory.

Type directory name, or click browseButton and select the desired directory in the dialog that opens. You can also click icon_switch_directories to switch between directories.

Environment variables Click browseButton to open the Environment Variables dialog box where you can create variables and specify their values.
Use classpath of module From this drop-down list, select the module whose classpath will be used to run the application.
Use alternative JRE Select this option to use a JRE that is different from the one associated with your project or module. Choose a JRE from the drop-down list, or click the browseButton button and browse to the required JRE in the dialog that opens.

Logs tab

Use this tab to specify which log files generated while running or debugging should be displayed in the console, that is, on the dedicated tabs of the Run or Debug tool window.

ItemDescription
Is ActiveSelect check boxes in this column to have the log entries displayed in the corresponding tabs in the Run tool window or Debug tool window.
Log File EntryThe read-only fields in this column list the log files to show. The list can contain:
  • Full paths to specific files.
  • Aliases to substitute for full paths or patterns. These aliases are also displayed in the headers of the tabs where the corresponding log files are shown.

    If a log entry pattern defines more than one file, the tab header shows the name of the file instead of the log entry alias.

Skip ContentSelect this check box to have the previous content of the selected log skipped.
Save console output to fileSelect this check box to save the console output to the specified location. Type the path manually, or click the browse button and point to the desired location in the dialog that opens.
Show console when a message is printed to standard output streamSelect this check box to activate the output console and bring it forward if an associated process writes to Standard.out.
Show console when a message is printed to standard error streamSelect this check box to activate the output console and bring it forward if an associated process writes to Standard.err.
add Click this button to open the Edit Log Files Aliases dialog where you can select a new log entry and specify an alias for it.
edit1 Click this button to edit the properties of the selected log file entry in the Edit Log Files Aliases dialog.
delete Click this button to remove the selected log entry from the list.
browseButton.png Click this button to edit the select log file entry. The button is available only when an entry is selected.

Toolbar

ItemShortcutDescription
add Alt+Insert Click this button to add a new configuration to the list.
delete Alt+Delete Click this button to remove the selected configuration from the list.
copy Ctrl+D Click this button to create a copy of the selected configuration.
settings Edit defaultsClick this button to edit the default configuration templates. The defaults are used for newly created configurations.
arrowUp or arrowDown Alt+Up or Alt+Down Use these buttons to move the selected configuration or folder up and down in the list.

The order of configurations or folders in the list defines the order in which configurations appear in the Run/Debug drop-down list on the main toolbar.

sortAlphabetically Sort configurations Click this button to sort configurations in alphabetical order.

Common options

ItemDescription
NameIn this text box, specify the name of the current run/debug configuration. This field does not appear for the default run/debug configurations.
Defaults This node in the left-hand pane of the dialog box contains the default run/debug configuration settings. Select the desired configuration to change its default settings in the right-hand pane. The defaults are applied to all newly created run/debug configurations.
Share Select this check box to make the run/debug configuration available to other team members.

The shared run/debug configurations are kept in separate xml files under .idea\runConfigurations folder, while the local run/debug configurations are kept in the .idea\workspace.xml.

This check box is not available when editing the run/debug configuration defaults.

Before launchSpecify which tasks must be performed before applying the run/debug configuration. The specified tasks are performed in the order they appear in the list.
ItemKeyboard shortcutDescription
add Alt+Insert Click this icon to add a task to the list. Select the task to be added:
  • Run External tool. Select this option to run an application which is external to MPS. In the dialog that opens, select the application or applications that should be run. If the necessary application is not defined in MPS yet, add its definition. For more information, see Configuring Third-Party Tools and External Tools.
  • Generate CoffeeScript Source Maps. Select this option to have the source maps for your CoffeeScript sources generated. In the dialog that opens, specify where your CoffeeScript source files are located. For more information, see CoffeeScript Support.
delete Alt+Delete Click this icon to remove the selected task from the list.
edit1 Enter Click this icon to edit the selected task. Make the necessary changes in the dialog that opens.
arrowUp Alt+Up Click this icon to move the selected task one line up in the list.
arrowDown Alt+Down Click this icon to move the selected task one line down in the list.
Show this page Select this check box to have the run/debug configuration settings shown prior to actually starting the run/debug configuration.
Active tool windowSelect this option if you want the Run/Debug tool windows to be activated automatically when you run/debug your application. This option is enabled by default.

See Also

Reference:

Language and Framework-Specific Guidelines:

Last modified: 6 November 2015