PhpStorm 2020.3 Help

Perform tests

Run a single test

If your tests don't require any specific actions before start and you don't want to configure additional options, you can run them by using the following options:

  • Place the caret at the test class to run all tests in that class, or at the test method, and press Ctrl+Shift+F10 . Alternatively, click the gutter icon next to the test class or test method.

    The gutter icon changes depending on the state of your test:

    • The the Run button gutter icon marks new tests.

    • The the Run test icon gutter icon marks successful tests.

    • The the Rerun the Run button gutter icon marks failed tests.

    Running a test using the gutter icon
  • To run all tests in a folder, select this folder in the Project tool window and press Ctrl+Shift+F10 or select Run Tests in 'folder' from the context menu.

Run tests via a run/debug configuration

When you run a test, PhpStorm creates a temporary run configuration. You can save temporary run configurations, change their settings, share them with other members of your team. For more information, refer to Work with run/debug configurations.

  1. Create a new run configuration or save a temporary one.

  2. From the list on the main toolbar, select the configuration you want to run.

    Running tests with a run configuration: select the run configuration
  3. Click the Run button or press Shift+F10 .

Create a test configuration

  1. Open the Run/Debug Configuration dialog by doing one of the following:

    • From the list on the main toolbar, select Run | Edit Configurations.

    • From the main menu, select Run | Edit Configurations.

    • Press Alt+Shift+F10 and select Edit Configuration from the context menu.

    Running tests with a run configuration: select the run configuration
  2. Click Add New Configuration on the toolbar and select the desired configuration type:

  3. In the dialog that opens, specify the test scope, configuration parameters, and activities to perform before test execution. Apply the changes and close the dialog.

Create a test configuration for a specific target

  1. In the Project tool window, right-click the desired test directory, individual file, or class.

  2. From the context menu of the selection, choose Create Run configuration.

    create_test_configuration.png

  3. In the Run/Debug Configuration dialog that opens, specify the configuration parameters and activities to perform before test execution. Apply the changes and close the dialog.

After PhpStorm finishes running your tests, it shows the results in the Run tool window on the Test Runner tab. For more information on how to analyze test results, refer to Explore test results.

Test runner in the Run tool window

Stop tests

Use the following options on the Run toolbar of the Test Runner tab:

  • Click the Stop button or press Ctrl+F2 to terminate the process immediately.

Rerun tests

Rerun a single test

  • To rerun a single test, right-click this test on the Test Runner tab of the Run tool window and select Run 'test name'.

Rerun all tests in a session

  • Click the Run button on the Run toolbar or press Ctrl+F5 to rerun all tests in a session.

Rerun failed tests

  • Click the Rerun Failed Tests button on the Run toolbar to rerun only failed tests.

Rerun tests automatically

In PhpStorm, you can enable the autotest-like runner: any test in the current run configuration restarts automatically after you change the related source code.

  • Click Toggle auto-test Toggle auto-test on the Run toolbar to enable the autotest-like runner.

Debug failed tests

If you don't know why a test fails, you can debug it.

  1. In the editor, click the gutter on the line where you want to set a breakpoint.

    There are different types of breakpoints that you can use depending on where you want to suspend the program. For more information, refer to Breakpoints.

  2. Right-click the the Rerun the Run button gutter icon next to the failed test and select Debug 'test name'.

    The test that has failed will be rerun in the debug mode. After that, the test will be suspended, allowing you to examine its current state.

    You can step through the test to analyze its execution in detail.

Last modified: 31 December 2020