PhpStorm 2018.2 Help

Test Runner Tab

The Test Runner tab opens in the Run tool window when a testing session begins, and features the same toolbar buttons.

ps_quick_start_behat.png
  1. The Run toolbar is almost the same as that for the Run tool window, but features testing-specific buttons.

  2. The left-hand pane shows the tree view of all tests within the current run/debug configuration.
    • The root node represents the test selected to run.

    • The nested nodes represent the hierarchy of test suites and test cases.

    • The leaf nodes represent the individual tests.

    The status of each test is indicated by an icon. Double-click a node to open the respective test class or test method in the editor.

  3. The testing toolbar provides controls that enable you to monitor the tests and analyze results. Some of the commands are duplicated on the context menus of the test tree nodes.

  4. The Output pane shows the output of the current test suit.

  5. The inline statistics show the list of executed tests with the execution time of each test.

  6. The color of the status bar indicates whether the tests have passed successfully. If at least one of the tests fails, the status bar turns red.

Run toolbar

Item

Tooltip and Shortcut

Description

icons toolwindows toolWindowRun svg

Rerun
Ctrl+F5

Click this button to rerun the current process.

The process reruns always in the same console regardless of whether this console is pinned or not.

Rerun Failed Tests button

Rerun Failed Tests

Click this button to rerun all failed tests.

If you press Shift and click this button, you can choose whether you want to Run the tests again, or Debug, i.e. rerun the failed tests in the Debug mode.

icons actions swapPanels

Toggle auto-test

Press this toggle-button to turn on the autotest-like runner. As a result, any test in the current run configuration tab restarts automatically on changing the related source code, without clicking the Rerun button icons toolwindows toolWindowRun svg.

The button is not shown for Mocha and Jest tests. To activate the auto-rerun functionality for these test runners, add the --watch flag in the Extra Mocha options/Extra Jest options field of the Run/Debug Configuration: Mocha or Run/Debug Configuration: Jest dialog respectively.

icons actions restart svg

Stop and rerun
Ctrl+F5

Click this button to stop executing the current test session and have the test re-started automatically. When the test execution stops, the button toggles to Rerun  icons actions rerun svg.

icons actions suspend svg

Stop
Ctrl+F2

Click this button to terminate the current process externally by means of the standard mechanisms.

icons debugger restoreLayout svg

Restore Layout

Click this button to to have the changes to the current layout abandoned and return to the default state.

Pin button

Pin

When this button is pressed, the current tab will not be overwritten; instead, the results of the next command will be displayed in a new tab.

icons actions closeCtrl+Shift+F4

Click this button to close the selected tab of the Run tool window and terminate the current process.

Testing toolbar

Item

Tooltip and Shortcut

Description

icons runConfigurations testPassed

Show Passed

Click this button to show tests that passed successfully.

icons runConfigurations testIgnored

Show Ignored

Click this button to show the skipped tests in the tree view of all tests within the current run/debug configuration or test class.

A test can be skipped in two situations:

  • Intentionally, which is defined through the @requires annotation.

  • When another test, on which the test in question depends, fails. Dependencies between tests are indicated through the @depends annotation.

icons objectBrowser sorted svg

Sort alphabetically

Click this button to sort tests in alphabetical order.

icons runConfigurations sortbyDuration svg

Sort by duration

Click this button to sort tests by duration.

icons actions expandall svg icons actions collapseall svg

Expand All/Collapse All
Ctrl+NumPad Plus Ctrl+NumPad -

Click these buttons to have all nodes in the tree view of tests expanded.

These buttons are only available if the tested application contains more than test case.

icons actions previousOccurence svgicons actions nextOccurence svg

Previous/Next Failed Test
Ctrl+Alt+Up/Ctrl+Alt+Down

Click these buttons to navigate between the failed tests.

import test results

Import Test Results

Click this button to view the test results that you previously saved in an XML file or the results that PhpStorm has kept in its internal history. The pop-up menu that opens shows a list of internally saved results of test sessions, each item is supplied with the name of the run configuration and a time stamp.
  • To view the results of a testing session from the PhpStorm history, select the item with the suitable run configuration and time stamp.

  • To load the previously exported results, choose Import from file and then choose the required XML file in the dialog box that opens.

The loaded test results are shown in the tab and the name of the corresponding run configuration is displayed on the title bar. To re-run the tests from the loaded session, click icons toolwindows toolWindowRun svg.

artwork studio icons logcat toolbar settings

Click this cog button to access the context menu with the following options:
  • Track Running Test: turn this option on to monitor execution of the current test. If a test suite contains multiple tests, the tree view of tests expands to show sequential test methods, as they are executed.

  • Show Inline Statistics: turn this option on to have the statistics shown next to a test result, displaying the time used for executing each test.

  • Scroll to Stack Trace: turn this option on to have the console scroll to the beginning of the trace of the last failed test.
    If you click the root node (the test package) in the tree view with this option turned off, the console will show the very beginning of the test.

    This option is helpful when a test package contains multiple test classes and test methods. If some of the tests fail, you can scroll in the console to the beginning of a stack trace of an exception or assertion.

  • Open Source at Exception: use this option to explore the results of a test that fails as an error, throwing an uncaught exception.
    If you double-click the failed test class or method in the tree view with this option turned on, the respective test class or method will open in the editor, with the caret placed at the line that caused the problem.

  • Autoscroll to Source: turn this option on to have the currently selected test in the tree view synchronized with the editor automatically.

  • Set Auto Test Delay: point to this node to reveal the list of available delays between file saving and rerunning tests. The selected value gets the check mark.

  • Select First Failed Test When Finished: turn this option on to have the first failed test automatically selected in the tree view upon completing the tests.

Test status icons

Icon

Description

icons general error svg

Test error. This status is assigned to tests that caused an exception from the tested source code.

icons runConfigurations testFailed

Test failed. If at least one test receives this status, then all its parents are marked as failed.

icons runConfigurations testIgnored

Test ignored.

In the PHP context, this icon indicates a skipped test.

A test can be skipped in two situations:

  • Intentionally, which is defined through the @requires annotation.

  • When another test, on which the test in question depends, fails. Dependencies between tests are indicated through the @depends annotation.

icons runConfigurations testInProgress1

Test in progress.

icons runConfigurations testPassed

Test passed successfully.

icons runConfigurations testTerminated

Test terminated. This status is assigned to tests that were cancelled by clicking the Stop button icons actions suspend svg. If at least one test receives this status, then all unfinished tests and their parents are marked as terminated.

Output pane

This pane shows output of each test, generated at runtime, including all the messages sent to the output stream, and the error messages. The following table shows the toolbar buttons and context menu commands available for the Output pane.

Item

Keyboard Shortcut

Description

icons actions previousOccurence svg

Up the Stack Trace
Ctrl+Alt+Down

Click this button to navigate up in the stack trace and have the cursor jump to the corresponding location in the source code.

icons actions nextOccurence svg

Down the Stack Trace
Ctrl+Alt+Up

Click this button to navigate down in the stack trace and have the cursor jump to the corresponding location in the source code.

icons actions toggleSoftWrap svg

Use Soft Wraps

Click this button to toggle the soft wrap mode of the output.

icons runConfigurations scroll down svg

Scroll to the end

Click this button to navigate to the bottom of the stack trace and have the cursor jump to the corresponding location in the source code.

icons general print svg

Print

Click this button to configure printing out the console output in the Print dialog box that opens.

Clear All

Choose this item on the context menu to have all messages for the selected test deleted.

Copy Content

Ctrl+C

Choose this item on the context menu to have the current contents of the Output pane placed to the Clipboard.

Compare with Clipboard

Choose this item on the context menu to invoke the Differences Viewer for Files which shows the current contents of the Clipboard in the left-hand pane and the contents of the Output pane for the selected test in the right-hand pane.

Context menu commands

Command

Keyboard shortcut

Description

Run <test name>

Ctrl+Shift+F10

Run the selected test with the automatically generated run/debug configuration or choose another one from the list.

Debug <test name>

Debug the selected test with the automatically generated run/debug configuration or choose another one from the list.

Run <test name> with Coverage

Ctrl+Shift+F10

Run the selected test and collect coverage with the automatically generated run/debug configuration or choose another one from the list.

Jump to Source

F4

Choose this command to move the focus to the editor, to the definition of a test class, or a test method.

Show Source

Ctrl+Enter

Choose this command to open source code in the editor, but leave the focus with the Test Runner tab.

Last modified: 21 November 2018

See Also