Functional Testing: Packages
Overview
Use this page to upload and browse the functional test packages available to the platform. A package is a LoadGen Studio functional repository, a Testproject repository.db file containing one or more projects and their testcases, uploaded to the appliance so the platform can read and run it without opening Studio itself.
You build a package's contents beforehand in LoadGen Studio, which saves it under %ProgramData%\LoadGen\Studio on the authoring machine; you then upload that file here. Once a package exists, you can expand it to inspect its projects and testcases, or open it to run its projects, which populates Functional Testing: Run History and the Functional Testing: Dashboard, and can be attached to a Functional Testing: Schedules definition for repeat runs.
On this page itself, you can search and filter the list by name, description, project, tag, or source; upload a new package; expand a row to review its testcases and generated scripts; and delete a package you no longer need, which keeps its run history but disables any schedule built on it.
Key concepts
- package - A LoadGen Studio functional repository (a Testproject repository.db file) uploaded to the appliance, containing one or more projects and their testcases. (related: Functional Testing: Schedules)
- project - A group of testcases inside a package, authored together in LoadGen Studio.
- testcase - A single functional test script, with its own steps, generated code, and variable sources, that belongs to a project.
- Unpublished changes - An amber chip shown when LoadGen Studio has saved edits to the package that nobody has published yet; the platform still runs the last published version until they're published.
- Editing - A blue chip shown while someone holds the edit lock on the package in LoadGen Studio, meaning Studio is preventing simultaneous edits by others.
When to use it
- Upload a new functional test repository exported from LoadGen Studio so its projects can be scheduled or run from the platform.
- Search by name, description, or project to find a specific package in a long list.
- Filter by tag or by source to separate packages synced from Studio from ones added by direct upload.
- Expand a package to inspect its projects, testcases, and generated test scripts without opening LoadGen Studio.
- Check whether a package has unpublished changes or is locked for editing in Studio before relying on it for a run.
- Delete an obsolete package while keeping the run history of any schedule that used it.
Before you begin
- A functional test repository authored and saved in LoadGen Studio (a Testproject repository.db file, no larger than 200 MB), copied from the machine where Studio keeps it under %ProgramData%\LoadGen\Studio.
- A role whose grants include the Functional Testing upload route if you plan to add packages; read-only roles can browse the list but not upload or delete (see Operations: Permissions).
- The project, testcase, or tag name you're looking for, if you plan to search or filter an existing list of packages.
Common workflows
Upload a new functional test package
Persona: Load-test operator
- Select Upload package.
- Expect: The Upload package dialog opens with fields for the repository file, name, description, and tags.
- Choose the Testproject repository.db file exported from LoadGen Studio, and optionally set a name, description, and tags.
- Expect: The dialog shows the selected file ready to upload.
- Select Upload package in the dialog to confirm.
- Expect: The dialog closes and a new row appears in the list showing the package's name, a v1 version badge, and a Saved timestamp.
Verify: The package appears in the list with its Source shown as an upload; expanding it lists the projects and testcases the platform read from the file.
Review a package's testcases before running it
Persona: Load-test operator
- Use Search, Tag, or Source to locate the package.
- Expect: The list narrows to matching packages.
- Select the row's expand chevron.
- Expect: The row expands to show the package's projects and their testcases.
- Select Script on a testcase.
- Expect: The testcase's script panel opens, showing its steps, generated code, and variable sources.
Verify: The script panel displays the testcase's steps and code without needing LoadGen Studio open.
Delete an obsolete package
Persona: Load-test operator with delete grants
- Select Delete on the package's row.
- Expect: A confirmation message appears, warning that run history is kept but schedules using the package will be disabled.
- Confirm the deletion.
- Expect: The row disappears from the list.
Verify: The package no longer appears in the list; any schedule that referenced it is now disabled, while its past runs still appear in Functional Testing: Run History.
Steps
Step 1
Open the Packages page under Functional Testing.
Expected result: The page loads with the Search, Tag, and Source filters above the package list. Because no packages have been uploaded yet, it shows a No packages yet panel with an Upload package button.
This is the starting point for uploading your first functional test package so the platform can run it.
- Search, Tag, and Source filter the list once packages exist.
-
Upload package appears both in the header and inside the empty-state panel.
Field reference
| Field | Purpose | Format / Validation | Required | Default |
|---|---|---|---|---|
| Search | Filters the package list by text matched against the package's name, description, or project names; use it to jump straight to a known package in a long list. | Free text | No | empty |
| Tag | Filters the list to packages carrying the typed tag; use it to narrow by a labeling scheme your team applies to packages, instead of searching free text. | Free text | No | empty |
| Source | Narrows the list to packages that arrived by LoadGen Studio sync versus direct upload; choose All to see both, or pick one source when you need to audit how a specific package entered the platform. | Dropdown | No | All |
| Repository file | The Testproject repository.db file exported by LoadGen Studio that you're uploading as a new package; this is the file the platform reads to list the package's projects and testcases. | File picker, .db file | Yes | - |
| Name | The display name shown for the package in the list; leave it blank to use the uploaded file's name instead, useful when the repository file already identifies the package clearly. | Free text | No | the uploaded file's name |
| Description | Free-text notes about what the package contains; also matched by the Search box, so a clear description helps teammates find the package later. | Free text | No | empty |
| Tags | One or more labels attached to the package so it can be found later with the Tag filter; type a tag and press Enter to add it, and repeat to apply more than one label such as an environment or team name. | Tag chips, typed one at a time | No | none |
Column reference
| Column | What it shows | How to read it |
|---|---|---|
| Name (row) | The package's display name, as set during upload or carried over from LoadGen Studio. | This is the same name the Search box matches against; use it to identify the row before expanding or opening it. |
| Version | The latest published version number of the package, shown as a version badge. | A higher number means more published revisions exist in LoadGen Studio since the first upload; it does not reflect edits that haven't been published yet. |
| Unpublished changes | Shows whether LoadGen Studio holds saved edits to the package that nobody has published. | When this chip is present, running the package still uses the last published version, not the newer edits; it clears once someone publishes in Studio. |
| Editing | Shows whether someone currently holds the edit lock on the package in LoadGen Studio. | While this chip is shown, expect an Unpublished changes chip to appear soon after, once that edit is saved. |
| Saved | The timestamp of the package's last save or upload. | A recent timestamp with no Unpublished changes chip means the list reflects the current published content; an older timestamp with the chip present means a newer edit exists but isn't published. |
| Source (row) | Shows whether the package arrived by LoadGen Studio sync or by direct upload on this page. | Use alongside the Source filter to audit how each package entered the platform. |
| Tags (row) | The tags applied to the package. | Matches the Tag filter; a package can carry more than one tag at once. |
Controls reference
Upload package
Opens the Upload package dialog, where you select a repository file and set its name, description, and tags. It appears both in the page header and in the empty-state panel.
When to use: Use when you have a new or updated Testproject repository.db file from LoadGen Studio to add to the appliance.
Side effects: Mutating once you submit the dialog: creates a new package entry that the list and any schedule can reference. Closing without submitting makes no change.
Clear filters
Resets Search, Tag, and Source to their defaults and reloads the list from page 1.
When to use: Use after narrowing the list to get back to the full, unfiltered set of packages.
Side effects: Read-only: changes only what you see, not any package data.
Retry (list load)
Re-requests the package list after a load failure.
When to use: Use when the page shows a load-failure message instead of the list.
Side effects: Read-only: retries the same read; no data is changed.
Dismiss
Closes the status banner shown after an upload or delete attempt.
When to use: Use once you've read a success or error message and want it out of the way.
Side effects: Read-only: only hides the banner.
Expand chevron
Expands or collapses a row to show the package's projects and testcases.
When to use: Use to inspect what a package contains without opening it fully or leaving the list.
Side effects: Read-only: reads the package's manifest.
Retry (expansion)
Re-reads a package's manifest after an expand attempt failed.
When to use: Use when an expanded row shows a failure instead of its projects and testcases.
Side effects: Read-only.
Script toggle
Opens or closes a testcase's script panel, showing its steps, generated code, and variable sources.
When to use: Use to review exactly what a testcase does before scheduling or running the package.
Side effects: Read-only.
Open package (row)
Opens the package's own page, where you can run its projects.
When to use: Use when you're ready to execute a package instead of just reviewing it.
Side effects: Navigation only; no data changes on this page.
Delete
Deletes the package and its stored repository after you confirm.
When to use: Use to remove a package you no longer need, for example after replacing it with a newer upload.
Side effects: Mutating and irreversible: removes the package from the list. Any schedule that runs it is disabled, but existing run history is kept. Offered only to roles with delete grants.
Previous / Next
Moves the list one page backward or forward.
When to use: Use when the filtered package list spans more than one page.
Side effects: Read-only.
Cancel
Closes the Upload package dialog without uploading.
When to use: Use if you opened the dialog by mistake or chose the wrong file.
Side effects: Read-only: discards anything entered in the dialog.
Verify the result
The primary task succeeds when the uploaded repository file appears as a new row in the list, showing its name, a v1 version badge, and a Saved timestamp matching the time of upload. The Source column shows it as an upload rather than a Studio sync. Expanding the row lists the projects and testcases the platform read from the file. If nothing appears, check for an error banner reading Couldn't upload the package and re-check the file's size and format. If the row appears but shows no projects when expanded, use the row's Retry control to re-read the manifest.
Troubleshooting
- Symptom: The Upload package button is missing. Fix: Your role's grants don't include the Functional Testing upload route; ask an administrator to grant it in Operations: Permissions, or use an account with upload rights.
- Symptom: Upload fails with a message that the file exceeds 200 MB. Fix: Check that you selected the correct Testproject repository.db and not a larger backup or export.
- Symptom: Upload fails with 'The file is empty.' Fix: Re-export or re-copy the repository file from LoadGen Studio; a zero-byte file usually means the copy was interrupted.
- Symptom: The list shows a message that the packages couldn't load. Fix: Select Retry; if it keeps failing, ask an administrator to check the appliance's connection, since the list reads packages directly from it.
- Symptom: A package shows an Unpublished changes chip and running it doesn't reflect your latest edits. Fix: Publish the pending changes in LoadGen Studio; the platform only runs the last published version.
- Symptom: Delete is missing for a package you expect to manage. Fix: Your role is read-only for Functional Testing packages; only roles with delete grants can remove packages.
Related articles
- Next step: Functional Testing: Schedules - schedule a package's projects to run automatically once it's uploaded
- Next step: Functional Testing: Run History - see the results of runs executed from a package's projects
- See also: Functional Testing: Dashboard - overview of functional testing activity across all packages
- Prerequisite: Functional Testing: Engines - an engine must be available to execute a package's projects
- See also: Operations: Permissions - controls which roles can upload or delete packages