QANode Logo

Dashboard

The Dashboard provides a consolidated view of your test status through configurable widgets — metric cards, charts, and tables.


Overview

Image: Dashboard with multiple widgets: metric cards, bar chart, and table


Multiple Dashboards

QANode supports multiple dashboards with different visibility settings:

TypeVisibilityDescription
PrivateCreator onlyPersonal dashboard
PublicAll usersShared dashboard
By RoleUsers with specific rolesTeam/role dashboard
SystemAll users (read-only)QANode default dashboards

Widgets

Widget Types

TypeDescriptionTypical Use
Metric CardSingle numeric value with conditional formattingTotal executions, success rate
Bar ChartVertical bars with one or more seriesExecutions per day, failures per project
Line ChartTrend linesSuccess rate evolution
Area ChartFilled areaCumulative executions
Pie ChartProportional distributionSuccess/failure ratio
TableTabular dataList of recent executions

Creating a Widget

The widget creation wizard has 3 steps:

Step 1: Data Source

Define where the data will come from:

Query Builder (Recommended):

FieldDescription
TableData table (runs, projects, flows, etc.)
ColumnsFields to select
FiltersConditions (equal to, contains, greater than, etc.)
GroupingGroup by field (with date formatting)
AggregationCOUNT, SUM, AVG, MIN, MAX
SortingField and direction (ASC/DESC)
PivotCreate multiple series from a field
LimitMaximum number of records (up to 1000)

Filter Logic: Combine multiple filters using AND or OR operators.

Date Formatting in Grouping:

FormatResult
Date Only2024-01-15
Time Only14:30
Date and Time2024-01-15 14:30
Month/Year2024-01
Year2024

Direct SQL:

For more complex queries, use SQL mode with the Monaco editor:

SELECT
  DATE(started_at) as dia,
  status,
  COUNT(*) as total
FROM runs
WHERE started_at >= NOW() - INTERVAL '30 days'
GROUP BY dia, status
ORDER BY dia

SQL mode requires the dashboard.sql permission.

Step 2: Visualization

Choose the chart type and map the fields:

SettingDescription
Chart TypeCard, Bar, Line, Area, Pie, Table
X AxisField for the horizontal axis
Y AxisField for the vertical axis (numeric value)
SeriesField for multiple series (when using pivot)
LegendShow/hide legend
TooltipShow values on mouse hover

Step 3: Appearance

SettingDescription
TitleName displayed on the widget
ColorsCustom colors per series/category
Conditional FormattingColor rules based on values

Conditional Formatting (for cards and tables):

OperatorExample
>If value > 90 → green
<If value < 50 → red
=If value = "failed" → red
containsIf contains "error" → yellow

Dashboard Layout

The dashboard uses a responsive 12-column grid:

PropertyDescription
Width1 to 12 columns
Height1 to 10 rows
X PositionStarting column (0-11)
Y PositionStarting row

Rearranging Widgets

  • Drag a widget to reposition it
  • Resize by dragging the bottom-right corner
  • The grid adjusts automatically to prevent overlaps

Widget Examples

Card: Success Rate

Table: runs
Aggregation: COUNT(*)
Filter: status = "success" AND started_at >= today - 30 days

Bar Chart: Executions per Day

Table: runs
Grouping: started_at (date only)
Aggregation: COUNT(*)
Pivot: status
Type: Bar

Result: Stacked bars with different colors for success/failure per day.

Table: Latest Failures

Table: runs
Filter: status = "failed"
Columns: flow name, date, duration, error
Sorting: started_at DESC
Limit: 10

Auto-Refresh

Widgets can be configured to refresh automatically at defined intervals, keeping data always up to date.


Tips

  • Start simple — a metric card with total executions + a daily bar chart
  • Use conditional formatting to highlight issues (rate below 80% = red)
  • Team dashboards — create dashboards with role-based visibility
  • Use pivot mode to create charts with multiple series without SQL
  • Limit your data — large queries can impact performance