Configuration: Functional Testing: Retention
Overview
Use this page to set retention periods for functional test runs, their artifacts, and their logs. Functional Testing Retention is a runtime setting that controls how long the platform keeps a finished run's record, result rows, screenshots, expected images, console output, raw results database, and log before a background cleanup pass deletes them; a run that is still in flight is never deleted.
The data this page expires is produced by functional test runs started from Functional Testing: Schedules or run on demand, and it is reviewed afterward in Functional Testing: Run History. This page does not change what a run captures or how it runs, only how long the captured data survives once the run has finished.
On this page you set four independent values: how long the run record itself is kept, how long its screenshots and raw files are kept, how long its log is kept, and how often the cleanup pass checks for expired data. Selecting Save retention settings applies the new values; the next cleanup pass is what actually removes anything that has aged past them.
Key concepts
- run - A single execution of a functional test, including its pass/fail record, result rows, screenshots, and log. (related: Functional Testing: Run History)
- artifact - Supporting files a run produces besides its pass/fail record, such as screenshots, expected images, console output, and the raw results database.
- cleanup pass - The background job that checks all finished runs against their retention periods and deletes anything that has aged past them.
- retention period - The number of days (or hours, for the cleanup interval) a given type of functional test data is kept before the next cleanup pass can remove it.
When to use it
- Functional test run storage is growing faster than expected and you need to shorten how long screenshots, raw files, or logs are kept.
- You need to keep run history longer for audit or trend-analysis purposes and the current retention period is cutting data off too soon.
- You are troubleshooting a failed run and its screenshots or log disappeared before you could review them, so the retention period needs raising.
- You changed storage capacity on the appliance and want the cleanup pass to run more or less often.
- You are standardizing retention across modules and want Functional Testing to match the equivalent API Testing retention settings.
Before you begin
- Your account role must be GlobalAdmin, InfrastructureAdmin, or Ops; this is a runtime setting governed by the settings policy, not by any Functional Testing module role, so other roles cannot view or change it.
- Decide the audit or troubleshooting window your team actually needs before lowering any value, since data deleted by a cleanup pass cannot be recovered.
- If you want to see the data these settings affect first, review existing runs on Functional Testing: Run History.
Common workflows
Shorten retention to reclaim storage
Persona: Infrastructure or Global administrator
- Open the Functional Testing Retention page and review the current values in all four fields.
- Expect: The page loads with the last saved values for Run retention (days), Screenshot and artifact retention (days), Log retention (days), and Cleanup interval (hours).
- Lower Screenshot and artifact retention (days) to a value within the audit window your team actually needs.
- Expect: The field shows the new number you typed; Save retention settings remains available to apply it.
- Select Save retention settings.
- Expect: A confirmation message confirms the save and the new value is now the active retention period for screenshots and artifacts.
Verify: Select Refresh and confirm Screenshot and artifact retention (days) still shows the lower value; the reduction takes effect once the next cleanup pass runs.
Steps
Step 1
Open the Functional Testing Retention page.
Expected result: The page loads the four current retention settings: Run retention (days) at 180, Screenshot and artifact retention (days) at 30, Log retention (days) at 30, and Cleanup interval (hours) at 6.
Reviewing the current values is the starting point before deciding whether to tighten or relax retention for your environment.
- The Refresh button reloads these four values from the saved settings.
- Save retention settings applies any changes you make to the four fields.
- Each field shows inline help text stating its valid range and default.
Field reference
| Field | Purpose | Format / Validation | Required | Default |
|---|---|---|---|---|
| Run retention (days) | Sets how long a finished run's record, result rows, and log stay available in Functional Testing: Run History before the cleanup pass can delete them. Raising it keeps run history available longer for trend analysis or audits; lowering it reduces storage used by run records but shortens how far back you can look up a past run. | Whole number of days | No | 180 |
| Screenshot and artifact retention (days) | Sets how long a run's screenshots, expected images, console output, and raw results database are kept. These files are typically the bulkiest part of a run's data, so lowering this value frees the most storage the fastest while the run's pass/fail record can still be kept longer under Run retention (days). | Whole number of days | No | 30 |
| Log retention (days) | Sets how long a run's log is kept. Raise it if you need to go back and diagnose failures from logs weeks after a run finished; lower it if logs are only ever checked shortly after a run completes. | Whole number of days | No | 30 |
| Cleanup interval (hours) | Sets how often the background cleanup pass checks for and deletes data that has exceeded the retention periods above. A shorter interval reclaims disk space sooner after data expires; a longer interval reduces background load but lets expired data linger longer before it is actually removed. A change takes effect starting at the next pass, not immediately. | Whole number of hours | No | 6 |
Controls reference
Refresh
Reloads the four retention fields from the currently saved settings.
When to use: Use it to discard unsaved edits in the fields, or to confirm what another administrator last saved.
Side effects: Read-only: it does not change any saved setting, but it overwrites any values you had typed but not yet saved.
Save retention settings
Writes the four field values as the new retention settings for functional testing.
When to use: Use it after changing one or more of the four fields and confirming the new values are within their allowed ranges.
Side effects: Mutating: a confirmation message confirms the save, and the new values apply starting at the next cleanup pass.
Verify the result
After you change a retention value and select Save retention settings, a confirmation message confirms the new setting was saved. The field keeps showing the value you entered, and selecting Refresh reloads the same value from the server, confirming it persisted. The actual deletion of expired run data, screenshots, artifacts, or logs happens only at the next cleanup pass, on the schedule set by Cleanup interval (hours), so data at the boundary may still be present immediately after saving. If the fields and Save retention settings are missing and a message states your role cannot view this setting, your account does not hold the required role.
Troubleshooting
- Symptom: The four retention fields are missing and a message says your role cannot view the setting. Fix: Ask an administrator with the GlobalAdmin, InfrastructureAdmin, or Ops role to review or change it; no Functional Testing module role grants access to this page.
- Symptom: Selecting Save retention settings produces no confirmation message. Fix: Check that every field holds a value within its stated range (1-3650 for the day-based fields, 1-168 for Cleanup interval (hours)) before saving.
- Symptom: You lowered a retention value but old runs, screenshots, or logs are still visible longer than expected. Fix: Remember the change only takes effect at the next cleanup pass, which runs on the schedule set by Cleanup interval (hours), not instantly.
- Symptom: Screenshots or expected images for a failed run disappear before you finish reviewing it. Fix: Raise Screenshot and artifact retention (days) above your typical review window.
- Symptom: You typed new values but want to discard them without saving. Fix: Select Refresh to reload the last saved values instead of navigating away.
Related articles
- Prerequisite: Functional Testing: Schedules - Scheduled functional test runs are the source of the run, artifact, and log data this page's settings expire
- Next step: Functional Testing: Run History - Review runs and their screenshots or logs here while they are still within the retention periods set on this page
- See also: Configuration: API Testing: Retention - The equivalent retention settings for the API Testing module, with the same roles and range rules