Reporting
The Execution Report provides insight into an ongoing or already concluded execution. The following general information is shown at the top:
- The current status of the execution
- The name of the executed plan
- A link to the plan
- The date when the plan was executed
- The user who initiated the execution
- Click to open a table of all resolved parameters
- Click to see on which agent(s) the plan was executed
- A list of execution parameters
- Displays a searchable table of all execution parameters
- Select the layout used to display the report
- Modify / create a custom report layout
Test Cases
If the executed plan contains more than one test case, a panel lists the status of each. You can open a test case’s details by clicking on its row. To re-execute specific test cases rather than the entire plan, click Launch execution with parameters (7) and select the test cases you wish to run.
- Test Case Status: Indicates whether an individual test case passed or failed.
- Aggregated Statuses: Displays a summary of results when a test case is run multiple times (e.g., showing 1 failed and 17 passed iterations).
- Error Summary: Displays the error messages associated with the test case.
- Execution Duration: Shows the time taken for execution. For multiple iterations, this displays the average duration.
- Expand Iterations: Toggle this to switch from the aggregated view to an individual list. This displays each execution on its own row, which is useful for seeing dynamic names resolved for each iteration in a loop. Note: Errors will not be displayed for individual Test Cases.
- Quick Filter: A shortcut to filter the list and display only the test cases that did not pass.
Test Case Errors
If a test case has one or more errors, they are displayed next to it. If there is only a single error, the message is displayed directly. Otherwise, the details panel provides a list of all errors. Clicking on the error message automatically searches the tree for the error and displays it in the test case details panel. Note: This relies on a text search for the error message. In cases with special characters in the message, the search might not find the error.
Execution tree
The Execution tree shows your plan’s execution steps as defined in the plan editor. Each node represents all executions of that node. A number shown next to it indicates whether the node was executed more than once (for example, because it was part of a loop-control).
- The status is shown as an icon for single executions and as colored numbers for those with multiple iterations. If there are multiple statuses (as in the example screenshot, where the keyword was executed multiple times with different results), both are shown.
- In the Keyword Calls summary, you can filter the execution tree for all keyword calls matching the clicked status.
- Quickly collapse the tree or expand all nodes.
- Search the execution tree for a given text. The search is performed on the execution’s raw data. As a result, configurations are matched by their IDs rather than the labels shown in the tree. This may lead to search results that differ from what is displayed, including occasional false positives or missed matches.
- Quickly search for all errors in the tree.
Note: Some nodes may be greyed out and marked with the partially executed symbol. There can be multiple reasons for this: a node was not yet executed (as in the example below), a node cannot be executed because it is not reachable (i.e. under an if-control), or a node is partially out of scope (i.e. you filtered for a time range or are looking at a partial tree and some children are not included).
Node panel: iterations list
If a node has multiple iterations, clicking it shows a list of all of them.
Node panel: details
If there is only a single iteration, or if one iteration from the aforementioned iteration list is selected, the iteration details are shown.
Attachments
If a node contains attachments, they are listed in the node details. For supported file types, attachments can be opened directly in the UI. Supported file types include text files, images, videos, and Playwright traces. All attachments can also be downloaded.
The file type is determined either by the file extension or by the MIME type defined when the attachment is added.
While an execution is running, text attachments support streaming. If streaming is used, they can be opened before completion. In that case, the current content is shown and updated automatically.
Note: To be able to open Playwright traces with the integrated viewer, they must be attached with the MIME type application/vnd.step.playwright-trace+zip.
Partial execution tree
In the new execution view, the concept of aggregating all iterations of a node was introduced. This allows the execution tree to match the plan editor’s tree 1:1, improving overall clarity. However, it also means that an aggregated form of the tree is displayed instead of an exploded one that would directly show all execution paths.
To support detailed debugging, a partial execution tree has been added to each execution node’s details view. When you select any node and choose a specific iteration, a partial execution tree is displayed. This tree reveals the exact execution path that led to the selected iteration in its context. It includes:
- The full path from the root node to the selected node.
- The children of the selected node.
- If the node is part of an iterative structure (such as a ThreadGroup), its direct siblings — providing full loop context.
- The partial execution tree starting from the root node.
- The currently selected execution node for a specific iteration.
- Open the partial tree in a separate tab — useful for analyzing larger partial trees.
Execution History
The Execution History displays the status of this node across past executions.
It helps you interpret the current result in a broader context — for example, to detect flakiness or recent regressions.
Note: Status history can only be shown for nodes that have a stable, unique ID across executions.
Nodes that are executed multiple times (e.g. inside a loop) do not have separate identifiers for each iteration.
As a result, Step cannot show history per iteration. In these cases, the history is aggregated and displayed as a pie chart representing all iterations together.
Execution steps
The execution steps show the details of the executed plan, as shown in the following screenshot. By default, all steps (Keyword Calls & executed Controls) are shown in reverse chronological order.
You can use the search fields to filter the steps table and change the order:
You can toggle each Keyword call to display its input details, output details, and keyword measurement details. By clicking the inspect icon on the right, the step is shown in the execution tree.
Errors
At the top of the Execution Report, you’ll see either an error summary or, for a single error, the error itself as illustrated in the Test Case section.
Clicking the message locates it in the Execution Tree.
The errors widget displays an overview of all collected errors, grouped by message or code type, that occur during the execution.
Performance
The performance tab of the Execution view provides you with the most frequently required metrics, such as throughput and response time, as well as common metric and time range filters out of the box. This dashboard provides statistics over time and aggregated statistics for the entire execution. The different charts and tables can be refreshed in real time or viewed in a static version of the page. For more advanced queries, such as drill-downs based on custom dimensions or raw measurement browsing, use custom graphical filters or Object Query Language (OQL).
In addition to the standard measurement charts, the performance tab includes dashlets for counter, gauge, and histogram metrics emitted by keywords during the execution (see Metrics in the Keyword API). These dashlets are only shown when metric samples are present for the execution — they are automatically hidden if no metrics were recorded.
For more general information and details on analytic dashboards, check the dedicated analytics section.
Real-time monitoring
For an ongoing execution, the performance view automatically covers the test’s current time range and is refreshed every 5 seconds, as illustrated in the screenshot below.
From top to bottom and left to right, the following information is shown:
- A Performance overview chart showing aggregated results and overall measurements
- An Aggregated Statuses chart showing the overall calls grouped by status
- A Response Time chart showing the average response time by default. The metric can be changed using the button at the top right of the chart
- A Throughput chart by measurements. The total throughput is displayed as a bar chart using the right axis
- A summary table of all metrics applicable to the measurements (including percentiles, median, counts, etc.) aggregated over the selected time interval
- A chart showing the number of parallel threads over time
- Optionally for executions producing metrics such as gauge, counter and histogram, a row with a statistics table and a chart is displayed for each of these types
See more details on Analytics Page Structure
Interacting with the dashboard
- You can change the refresh rate for running executions using the dedicated refresh icon at the top right of the view.
- Filtering can be done directly using the top filter selections. The measurements to be displayed or hidden can be selected from the statistics table or configured in the chart options. See more about filters here
- The time range can be selected at different levels and is applied to all dashboard widgets. See more about time range controls here.
- The grouping option allows custom aggregations of the response times and throughput charts, together with the table view. See more about grouping here.
- The dashboard allows some global settings (such as chart resolution and compare mode), but also measurement-specific settings, such as custom metrics, with the ability to hide or show specific data. See more about visual settings here.
Exporting measurements
If you’d like to use your own toolset to process the raw data, you can use the export entry from the settings menu (top right of the screen).
This includes the active filters and time range selection. You can find more details in the dedicated analytics documentation.
Execution control actions
While an execution is running, or even after it has finished, actions are provided to quickly manage another execution or stop the current execution:
- Execute the same plan with identical parameters
- Execute the same plan and select different parameters / test cases
- This button is only shown while the execution is running. Clicking it stops the current execution and shows a red force stop button if it takes longer to stop. Using the red button, Step can also be instructed to interrupt the current keyword execution and not wait for it to finish. Note: Currently, this feature is only supported for K6 Keywords. The execution of all other Keyword types continues until completion.
Time range selector
With the time range selector, the execution time can be filtered to show only a certain time range of the execution. This selector is explained in more detail in the analytics page
Modify Report Layout
Step provides a default Report Layout that is used when an Execution Report is opened. When you edit the layout, the displayed widgets can be adjusted in the following ways:
- widgets can be removed
- widgets can be resized
- widgets can be moved
- new widgets can be added (button at bottom of the report)
- a new empty row can be added
- an empty row can be deleted
- the layout can be deleted
- the layout can be saved (+ configured)
Save & configure Layout
The Save & configure Layout button serves two purposes: changes made to the layout grid can be saved, and the layout can be renamed or shared.
Mode: Save and overwrite
This mode is only available if the user is the creator of the layout or has the reportLayout-shared-write permission. System-provided layouts cannot be overwritten and must be saved as new layouts instead.
Mode: Save as new
A new layout is created based on the current changes. Subsequent changes to this new layout can then be saved by the current user as an overwrite.
Name
The layout name can be changed in both save modes. When an existing layout is overwritten, the current name may be kept. When Save as new is used, a new name must be entered.
Shared Layout
Layouts can optionally be shared. If this option is selected, the layout is visible to and can be used by all users.
Use Legacy page
You can optionally continue to use the Legacy Execution Report page.
There are two ways to access it:
-
Globally (admin setting):
An admin can configure the Step properties by settingui.reporting.force.legacytotrue(default isfalse). This deactivates the Beta Execution Report for all users. -
Individually:
Each user can switch back to the legacy view by deselecting the “Beta” toggle in the top right corner of the Execution Report page. This preference is stored in the browser.