WebStorm 2018.2 Help

Run/Debug Configuration: Mocha

Run | Edit Configurations | icons general add svg | Mocha


In this dialog box, create configurations for running and debugging JavaScript unit tests using the Mocha test framework.

Getting access to the Run/Debug Configuration: Mocha dialog

  1. Make sure the Node.js plugin is enabled. The plugin is activated by default. If the plugin is disabled, enable it on the Plugins settings page as described in Enabling and Disabling Plugins.
  2. Download and install Node.js that contains the Node Package Manager(npm).
  3. Using the Node Package Manager, install the Mocha test framework as described in Mocha.

Mocha-specific configuration settings

ItemDescription
Node.js interpreter In this field, specify the Node.js interpreter to use. Choose one of the configured interpreters or click browseButton.png and configure a new one as described in Configuring a local Node.js interpreter. If you choose the Project alias, WebStorm will automatically use the project default interpreter from the Node interpreter field on the Node.js and NPM page.
Node options In this text box, type the Node.js-specific command line options to be passed to the Node.js executable file. See Node Parameters for details.
Working directory In this field, specify the working directory of the application.

By default, the Working directory field shows the project root folder. To change this predefined setting, specify the path to the desired folder or choose a previously used folder from the list.

Environment variables In this field, specify the environment variables for the Node.js executable file, if applicable. Click Browse browseButton.png to the right of the field and configure a list of variables in the Environment Variables dialog box, that opens:
  • To define a new variable, click Add add.png and specify the variable name and value.
  • To discard a variable definition, select it in the list and click Delete icons general remove svg.
  • Click OK, when ready

The definitions of variables are displayed in the Environment variables read-only field with semicolons as separators. The acceptable variables are:

  • NODE_PATH: A :-separated list of directories prefixed to the module search path.
  • NODE_MODULE_CONTEXTS: Set to 1 to load modules in their own global contexts.
  • NODE_DISABLE_COLORS: Set to 1 to disable colors in the REPL.
Mocha package In this field, specify the Mocha installation home /npm/node_modules/mocha. If you installed Mocha regularly through the Node Package Manager, WebStorm detects the Mocha installation home itself. Alternatively, type the path to executable file manually, or click Browse browseButton.png and select the location in the dialog box, that opens.
User interface From this drop-down list, choose the interface according to which the tests in the test folder are written. WebStorm will recognize only tests that comply with the chosen interface. If during test execution WebStorm runs against a test of another interface, the test session will be canceled with an error. This means that all the tests in the specified test folder must be written according to the same interface and this interface must be chosen from the drop-down list.
Extra Mocha options In this field, specify additional Mocha command line options. For example, add a --watch flag to turn on the autotest-like runner. As a result, any test in the current run configuration restarts automatically on changing the related source code, without clicking the Rerun button run.
Tests In this area, specify the tests to be executed. The available options are:
  • All in directory: choose this option to run all the tests from the files stored in a folder and specify the path to this folder in the Test directory field. To look for tests in the subfolders under the specified directory, select the Include subdirectories checkbox.
  • File pattern: choose this option to look for tests in all the files with the names that match a certain mask and specify the mask in the Test file pattern field.
  • Test file: choose this option to run only the tests from one file and specify the path to this file in the Test file field.
  • Suite: choose this option to run individual suites from a test file and specify the path to this file in the Test file field. Click the Suite name field and configure a list of suites to run. To add a suite to the list, click icons general add and type the name of the required suite. To remove a suite, select it in the list and click minusSign.png
  • Test: choose this option to run individual tests from a test file and specify the path to this file in the Test file field. Click the Test name field and configure a list of tests to run. To add a test to the list, click icons general add and type the name of the required test. To remove a test, select it in the list and click minusSign.png

Common options

When you edit a run configuration (but not a run configuration template), you can specify the following options for it:

ItemDescription
Name In this text box, specify the name for the run/debug configuration. The name will help you identify the created configuration when you choose to edit it later, or when you invoke it, for example. from the Run popup (Shift+Alt+F10).
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.

Single instance only

Toolbar

The tree view of run/debug configurations has a toolbar that helps you manage configurations available in your project as well as adjust default configurations templates.

ItemShortcutDescription
icons general add svgAlt+InsertCreate a run/debug configuration.
icons general remove svgAlt+Delete Delete the selected run/debug configuration. Note that you cannot delete default configurations.
icons actions copy svg Ctrl+D Create a copy of the selected run/debug configuration. Note that you create copies of default configurations.
icons general settings svg Edit defaults View and edit the default template for the selected run/debug configuration. The defaults are used for newly created configurations.
icons actions moveUp svg/icons actions moveDown svgAlt+Up/Alt+Down

Move the selected run/debug configuration up and down in the list.

The order of configurations in the list defines the order, in which the configurations appear when you choose a run/debug configuration.

Default templates of run/debug configurations are always sorted alphabetically.

folder Move into new folder / Create new folder

You can group run/debug configurations by placing them into folders.

To create a folder, select the configurations within a category to be grouped, click folder, and specify the name for the folder. If only a category is in focus, an empty folder is created.

Then, to move a configuration into a folder, between the folders or out of a folder, use drag-and-drop or icons actions moveUp svg and icons actions moveDown svg buttons.

To remove grouping, select a folder and click icons general remove svg.

icons objectBrowser sorted svg Sort configurations Click this button to sort configurations in alphabetical order.

Defaults

When you select Defaults in the tree view of the run configurations, you can adjust some settings that apply for all run debug configurations.

ItemDescription
Configurations available in Run Dashboard

In this section you can create a list of run configurations available in the Run Dashboard — tool window that helps you execute and manage multiple run/debug configurations.

Note that the dashboard will only display those configuration types for which you have created one ore more configurations.
So if you add a configuration type for which no configurations exist in the project, this type will not be displayed on the dashboard until you create a configuration of this type.

Confirm rerun with process terminationThe behavior of this checkbox depends on whether the Single instance only checkbox is selected for a particular run/debug configuration.
  • If this checkbox is selected, then, in case of a single instance, launching a new process (for example, by clicking run on the main toolbar) while another process is still running, results in showing a dialog box prompting to terminate the current process before launching a new one.
  • If this checkbox is not selected (or in case of multiple instances), WebStorm starts the new process silently.
Temporary configurations limit Specify here the maximum number of temporary configurations to be stored and shown in the Select Run/Debug Configuration drop-down list.

Before Launch options

In this area you can specify tasks that should be carried out before starting the selected run/debug configuration. The specified tasks are performed in the order they appear in the list.

ItemShortcutDescription
icons general add svgAlt+Insert Click this icon to add one of the following available tasks:
  • Run External tool — select this option to run an application which is external to WebStorm. In the dialog that opens, select the application or applications that should be run. If the necessary application is not defined in WebStorm yet, add its definition. For more information, see Configuring Third-Party Tools and External Tools.
  • Run Another Configuration — select this option to execute another run/debug configuration. In the dialog that opens, select the configuration to be run.
  • Run File Watchers — select this option to have WebStorm apply all the currently active file watchers.
  • Run Grunt task — select this option to run a Grunt task. In the Grunt task dialog box that opens, specify the Gruntfile.js where the required task is defined, select the task to execute, and specify the arguments to pass to the Grunt tool.

    Specify the location of the Node.js interpreter, the parameters to pass to it, and the path to the grunt-cli package.

  • Run Gulp task — select this option to run a Gulp task. In the Gulp task dialog box that opens, specify the Gulpfile.js where the required task is defined, select the task to execute, and specify the arguments to pass to the Gulp tool.

    Specify the location of the Node.js interpreter, the parameters to pass to it, and the path to the gulp package.

  • Run npm Script — select this option to execute an npm script. In the NPM Script dialog box that opens, specify the npm run/debug configuration settings.
  • Start React Native Bundler — - elect this option to run the bundler automatically, as part of a running or debugging session. by default, this is done through react-native start. If your application uses Expo, you need to run the development server via the start npm task. To do that, clickicons actions edit svg, then in the Configure React Native dialog, choose npm script and select start from the list.
  • Compile TypeScript — elect this option to run the built-in TypeScript compiler and thus make sure that all the changes you made to your TypeScript code are reflected in the generated JavaScript files. In the TypeScript Compile Settings dialog that opens, select or clear the Check errors checkbox to configure the behaviour of the compiler in case any errors are detected:
    • If the Check errors checkbox is selected, the compiler will show all the errors and the run configuration will not start.
    • If the Check errors checkbox is cleared, the compiler will show all the detected errors but the run configuration still will be launched.
  • Generate CoffeeScript Source Maps — select this option to generate the source maps for your CoffeeScript sources. In the dialog that opens, specify where your CoffeeScript source files are located.
  • Upload files to Remote Host — select this option to have the application files automatically uploaded to the server according to the default server access configuration.
icons general remove svgAlt+Delete Click this icon to remove the selected task from the list.
icons actions edit svg Enter Click this icon to edit the selected task. Make the necessary changes in the dialog that opens.
icons actions moveUp svg/icons actions moveDown svgAlt+Up/Alt+DownClick these icons to move the selected task one line up or down in the list. (The tasks are performed in the order that they appear in the list.)
Show this pageSelect this checkbox to show the run/debug configuration settings prior to actually starting the run/debug configuration.
Activate tool window

If this checkbox is selected, which it is by default, the Run or the Debug tool window opens when you start the run/debug configuration.

Otherwise, the tool window isn't shown. However, when the configuration is running, you can open the corresponding tool window for it yourself by pressing Alt+4 or Alt+5.

Last modified: 13 June 2018

See Also

Procedures: