Test Logs¶
The Test Log is the history of every run in the current environment, whatever started it. Open it from Test Logs in the sidebar. Each test page also shows its own Recent runs, with a link to View all in Test Logs.
The Test Logs page¶
Runs are listed newest first, with their test, type, trigger, status, start time and duration.
| Filter | Values |
|---|---|
| Status | All statuses, queued, running, passed, failed, error |
| Trigger | All triggers, manual, api, schedule |
| Test type | All test types, or one type |
| Test | A single test |
Select Clear filters to reset them.
A single run¶
Select a run to open it. While it is queued or running, the page refreshes every 2 seconds.
A run shows:
- Summary: the status, trigger, who or what started it, timings, and a one-line summary.
-
Steps: what Helena did, in order. Each step has a status:
Step status Meaning passedThe step completed. failedThe step's request failed, for example with an unexpected status. skippedThe step was not needed, for example a protected-resource call when no token was issued, or a SCIM PATCH when the target declares PATCH unsupported. infoInformation only. Each step's detail shows the request Helena sent (method, URL, parameters, body) and the response it got (status, selected headers, body). Response bodies that aren't JSON are cut off at 16 KB.
-
Assertions: each check with its expected and actual value and whether it passed. The run is
passedonly if every assertion passed. - Notes (some test types): informational findings that never fail a run, for example a SCIM server that
answers with
application/jsoninstead ofapplication/scim+json.
Redaction¶
Before anything is written to the log, values under sensitive keys are replaced by a fingerprint. This covers secrets, passwords, API keys, access, ID and refresh tokens, and assertions.
The length and hash prefix let you compare values between runs without revealing them. When an issued access
token is a JWT, Helena also shows its decoded header and claims, which helps you check its aud, scope or
exp.
Retention¶
Runs are kept for 90 days, then deleted automatically. Deleting a test does not delete its runs. They stay in the log, under the test's name and type at the time of the run, until they reach the retention limit.
From the API¶
Service accounts with the read scope can list and fetch runs:
# Latest failed runs of one test
curl -s -H "Authorization: Bearer $HELENA_TOKEN" \
"https://app.helena.dev/api/v1/environments/$ENV_UUID/test-runs?test=$TEST_UUID&status=failed&per_page=10"
# One run with all its steps and assertions
curl -s -H "Authorization: Bearer $HELENA_TOKEN" \
"https://app.helena.dev/api/v1/environments/$ENV_UUID/test-runs/$RUN_UUID"
See REST API.