Run/Debug Configuration: RSpec
This feature is supported in the Ultimate edition only.
The following is only valid when Ruby Plugin is installed and enabled!
Use this dialog box to define run/debug configuration for a RSpec test.
In this section:
- Configuration tab
- Logs tab
- Bundler tab
- Code Coverage tab
- Nailgun tab
- Common options
Before you start working with Ruby, make sure that Ruby plugin is installed and enabled. The plugin is not bundled with IntelliJ IDEA.
Also make sure that the following prerequisites are met:
- Ruby SDK is downloaded and installed on your machine.
- The required framework SDKs are downloaded and installed on your machine.
Refer to their respective download and installation pages for details:
|Name||In this text box, specify the name of the current run/debug configuration.|
|Mode||Click one of the radio buttons to define the scope of tests to be performed: |
|All specs in folder||Click this radio button, if you want to run all tests in a directory.|
|Specs folder||Specify the fully qualified path to the directory that contains the desired specs, or click and select the specs directory in the dialog that opens. This field is only available, when the All specs in folder option is selected.|
|File name mask||Specify the mask of the spec file name, for example, |
|Spec script||Specify the name of the script to be executed. |
This field is only available, when the Spec script option is selected.
|Example name||Specify the name of the example within the script to be executed. If no example is specified, all examples will be executed. |
This field is only available, when the Spec script option is selected.
|Runner options||Enter runner options (|
|'rspec' gem||Use this drop-down list to select the desired gem version, which will be used to run the tests. The list shows the versions that are available in the Ruby SDK. By default, the latest available version is taken.|
|Use custom RSpec runner script||Select this check box if you want to use an alternative spec runner. You can type the fully qualified path to the spec runner in the text field, or click , and select the desired runner in the dialog that opens.|
|Use pre-loaded server||From the drop-down list, select the server to be used for executing scripts or examples. |
Select None if you want to execute a test script or example locally, without any server.
If both Zeus and Spork DRb servers are running simultaneously, it is Zeus that gets priority.
If a pre-loaded server is already running, it will be selected from the drop-down list.
|Output full backtrace||Select this check box to enable the |
|Working directory||Specify the current directory to be used by the running task. By default, the project directory is used as a working directory.|
|Environment variables||Specify the list of environment variables as the name-value pairs, separated with semi-colons. Alternatively, click the ellipsis button to create variables and specify their values in the Environment Variables dialog box.|
|Ruby arguments||Specify the arguments to be passed to the Ruby interpreter. |
Classpath property is added to Nailgun settings.
|Ruby SDK||Specify the desired Ruby interpreter. You can opt to choose the project default Ruby SDK, or select a different one from the drop-down list of configured Ruby SDKs.|
|Is Active||Select 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 Entry||The read-only fields in this column list the log files to show. The list can contain: |
|Skip Content||Select this check box to have the previous content of the selected log skipped.|
|Save console output to file||Select 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 stream||Select 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 stream||Select this check box to activate the output console and bring it forward if an associated process writes to Standard.err.|
|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.|
|Click this button to edit the properties of the selected log file entry in the Edit Log Files Aliases dialog.|
|Click this button to remove the selected log entry from the list.|
|Click this button to edit the select log file entry. The button is available only when an entry is selected.|
|Run the script in the context of the bundle||If this check box is selected, the script in question will be executed as specified in the |
Code Coverage tab
Use this tab to configure code coverage monitoring options.
|Choose code coverage runner||Select the desired code coverage runner.|
|Sampling||Select this option to measure code coverage with minimal slow-down.|
|Tracing||Select this option to collect accurate branch coverage. This mode is available for the IntelliJ IDEA code coverage runner only.|
|Track per test coverage||Select this check box to detect lines covered by one test and all tests covering line. If this check box is selected, becomes available on the toolbar of the coverage statistic pop-up window. |
This option is only available for the Tracing mode of code coverage measurement for the testing run/debug configurations.
Refer to the section Viewing Code Coverage Results.
|Merge data with previous results||When you run your unit testing or application configuration several times, use this item to calculate statistics in the Project View, taking into account the statistics of each time you have run the configuration. |
Finally, the line is considered covered if it is covered at least once.
|Packages and classes to record code coverage data||Click and buttons to specify classes and packages to be measured. You can also remove classes and packages from the list by selecting them in the list and clicking the button.|
| Click this button to define the scope of code coverage analysis. In the Add Pattern dialog box that opens, type the comma-delimited list of Ruby regular expressions, and specify whether the matching files should be included into or excluded from code coverage analysis. |
The patterns defining files to be included into code coverage analysis, are marked with +; the ones to be excluded are marked with -.
Each pattern can be enabled or disabled. To do that, select or clear the check box next to a pattern. By default, all newly created patterns are enabled.
|Click this button to delete the selected pattern from the list.|
|Click this button to change the selected code coverage pattern.|
|Do not use the optimized C runtime||Select this check box to enable the option |
|Enable coverage in test folders.||If this check box is selected, the folders marked as test are included in the code coverage analysis.|
If this check box is not selected, IntelliJ IDEA will use the coverage tool included in the selected Python interpreter.
Refer to the section Code Coverage for details.
|Run new instance of the Nailgun server, or use already started one||This check box is only available for JRuby used as the project interpreter. |
When a run/debug configuration, with this check box selected, is launched, IntelliJ IDEA analyzes the running processes, and does one of the following, depending on the presence of the running Nailgun server:
If this check box is not selected, then the script is launched in a usual way, without Nailgun.
|Alt+Insert||Click this button to add a new configuration to the list.|
|Alt+Delete||Click this button to remove the selected configuration from the list.|
|Ctrl+D||Click this button to create a copy of the selected configuration.|
|Edit defaults||Click this button to edit the default configuration templates. The defaults are used for newly created configurations.|
|or||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.
|Move into new folder / Create new folder||Use this button to create a new folder. |
If one or more run/debug configurations are in focus, the selected run/debug configurations are automatically moved to the newly created folder. If only a category is in focus, an empty folder is created.
Move run/debug configurations to a folder using drag-and-drop, or the buttons.
|Sort configurations||Click this button to sort configurations in alphabetical order.|
|Name||In 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. |
If the directory-based project format is used, the settings for a run/debug configuration are stored in a separate .xml file in the
If the file-based format is used, the settings are stored in the
This check box is not available when editing the run/debug configuration defaults.
|Single instance only||If this check box is selected, this run/debug configuration cannot be launched more than once. |
Every time a new run/debug configuration is launched, IntelliJ IDEA checks the presence of the other instances of the same run/debug configuration, and displays a confirmation dialog box. If you click OK in the confirmation dialog box, the first instance of the runner will be stopped, and the next one will take its place.
This makes sense when the usage of certain resources can cause conflicts, or when launching two run/debug configurations of the same type consumes too much of the CPU and memory resources.
If this check box is not selected, it is possible to launch as many instances of the runner as required. So doing, each runner will start in its own tab of the Run tool window.
|Before launch||Specify which tasks must be performed before applying the run/debug configuration. The specified tasks are performed in the order they appear in the list. |