Test environment
- Base URL
- https://staging.example.com
- Environment key
staging- Description
The release candidate for workspace setup, invitations, and project workflows.
Whether your team or AI built it, the work needs a check.
Keep the cases, the coverage, and the evidence beside the issues they verify.
The requirement. The test. The evidence behind the release decision.
Give the team a shared home for test cases. Organize by module, find the right coverage, and carry the same cases into the next plan and run.
The details that make a release dependable.
Group cases into modules such as workspace setup, project workflow, or documents. Keep the full project library within reach when you need the wider view.
Search case titles and keys. Filter by module, tag, or status, and use the sprint or epic linked through Planner issues to find relevant coverage.
Keep the case identity, priority, tags, and execution estimate visible in the list. Open a case for its full procedure, or start a run from the current scope.
Create cases, duplicate a useful starting point, and deprecate checks that no longer belong in the active set. Retain context while the product evolves.
Link a case to the issues it covers. The issue keeps its linked tests visible, and the case keeps the requirement close to its expected result.
Search and filtering work across the repository, with more cases loaded as you browse. A larger library does not have to become a longer planning meeting.
A good case tells the next tester what to do, what to expect, and what must already be true. Keep the procedure readable and the details close at hand.
What are we testing, and why does it matter?
🎯 A new owner should be able to create a workspace and reach a useful starting point. Verify that the workspace name is saved and the owner can start inviting their team.
The setup, access, or test data this case needs.
🔑 Use an account with permission to create a workspace. Have a unique workspace name ready. Run against Staging using the shared sign-in preparation below.
Describe what a successful test looks like.
✅ The workspace is created with the chosen name, the owner has access, and the invitation action is available. Refreshing keeps the workspace in the owner’s workspace switcher.
Describe the scenario, record preconditions, and make the overall expected outcome explicit. Use rich text to make the important parts easy to scan.
Separate action steps from verification steps. Put an expected result beside the check, with list and table views for different procedures.
Maintain repeated flows as shared step blocks. Insert them into cases, see how many cases use them, and avoid maintaining the same setup line by line.
Return to a case’s run history to review previous outcomes, defects, and measured time. Use that evidence to improve the next version of the test.

Generate suggested cases from a Planner issue with leera AI, or let an AI tool connected over MCP create coverage. Review the procedures, keep the requirement linked, and record results with evidence before the release decision.
Explore leera AILeera AI requires a configured provider. MCP writes require the appropriate QA scopes. Creating a case does not execute it.
Turn the library into a deliberate scope. Bring the right cases into a reusable plan, see the estimated effort, and carry that coverage into a run.
Organized across 3 modules. Ready to run together.
Name the plan and describe what it covers. Use it for release checks, a focused feature pass, or a recurring regression routine.
Search the case picker and filter by module, tag, or priority. Add individual cases or the matching set, then review the selected coverage together.
Review selected cases by module, remove work that does not belong, and keep the plan’s ordering clear. Counts show the scope as it changes.
See the estimated execution time for selected cases. A case estimate takes precedence over its measured average, and missing estimates remain visible.
Choose the environment and default tester when starting a run. The run captures the plan’s selected cases so the team can execute a known scope.
Keep an active plan for future runs. Update the next scope as coverage evolves, or archive a plan when it has served its purpose.
Choose the relevant test cases.
Set the environment and tester.
Follow the steps and record evidence.
Make the outcome visible to the team.
Move through a focused execution workspace. Mark the steps, record the outcome, and leave enough context for the next person to understand exactly what happened. The run’s Overview shows the whole run at once, and a finished run can be issued as a test report for sign-off.
A new team can create a workspace and start planning.
A workspace owner account is available for this test.
Open the sign-in page.
Sign in with a workspace owner account.
Open workspace setup.
Enter the workspace name.
Confirm the workspace is created.
The workspace opens and shows the name you entered.
The new workspace opens with its name, owner, and a clear place to start.
Keep the case navigator beside a readable procedure. Filter the work, choose a case, and advance to the next pending check within the current scope.
Mark individual steps as passed, failed, or blocked. Record the case as Pass, Fail, Block, or Skip, with guidance before an incomplete procedure can be passed.
Paste a screenshot, drop a file, or choose an attachment. Keep notes and evidence with the execution instead of reconstructing them after a failure.
Use Fail + defect when the result needs a fix. Keep the defect connected to its execution so developers can return to the procedure and evidence.
Track active execution time and pause when needed. Compare measured time with the original estimate and see the remaining estimated work.
Open the run report for pass rate, every outcome count, tag breakdowns, and timing. When the run is complete, issue a numbered test report with your verdict for sign-off.
Later changes to a case do not rewrite what the tester saw. Eligible open plan or sprint runs can add newly included cases while preserving existing items.
Finish a run when the review is complete. Any remaining pending cases become skipped, so the report reflects what was actually covered. The finished run is read-only until someone reopens it with a reason.

Keep the procedure, the recorded outcome, and its evidence together. When a check fails, link the defect to the work that needs attention. The next review starts with what was observed, and the release decision stays with your team.
Follow the work in PlannerA result is more useful when the setup is clear. Keep environments, the data and files each case depends on, and test account details in the QA workspace, ready for the people and runners doing the checks.
A clear destination for every test run. Keep your team aligned on where to test.
Test environment
stagingThe release candidate for workspace setup, invitations, and project workflows.
Test environment
previewReview the next iteration of the welcome checklist before it reaches staging.
Give an environment a clear name, key, base URL, and description. Add the API base URL and e-mail domain automation uses, and choose the right context before a run starts.
Mark each environment as test or production. Automated cases that declare they change data run only on test environments; read-only checks still run.
Point a case at records that already exist, such as an overdue customer, with a value for each environment. Testers see the values on the run item; scripts read them.
Upload an invoice or an import once, or generate an empty, corrupt or oversized file by size. Testers download them from the run item; scripts upload them.
Store a credential label, role, username, sign-in URL, and setup notes, plus a fixed one-time code for apps with two-step sign-in. The list shows the account’s purpose without displaying its secrets.
Open the dedicated reveal flow when the test requires a stored credential. The secret is requested separately from the account metadata.
Search active or archived resources. Archive environments and accounts that are no longer in use while earlier run context remains available.

The environment, the case snapshot, the notes, and the defect all help explain a result. Keep them close, and the next conversation can start with the evidence.
Quality work is also the saved procedure, the pause in a timer, and the screenshot that explains a failure. Here are the controls around the core workflow.
Native automation support connects case scripts, step validation, runner pools, and queued jobs. MCP tools can prepare and queue tests; project-bound CI tokens can create runs. Execution needs compatible runners and an environment configured for your deployment. Check the run and its evidence before relying on automation.
The practical details
Leera manages manual testing and includes native automation support: scripts attached to cases, validation against case steps, runner pools, queued jobs, and project-bound CI tokens. Automated execution requires a configured, compatible runner and test environment; adding a case alone does not run it. Confirm the platforms and runner setup available on your deployment, then check a representative run and its evidence before relying on automation.
Yes. Shared steps let you maintain repeated sequences separately from individual cases. Use them for setup such as signing in or creating a test account, and keep each case’s unique expected behavior explicit.
A plan is a reusable selection of test cases that defines the intended coverage. A run is an execution of a selected scope, with its own case snapshots, environment, testers, step verdicts, notes, evidence, and results. A plan can be used for more than one run.
Yes, for everyone with a role in the run’s project. A run opens on its Overview, which shows the whole run: each case’s status, who is working on it, the progress of automated cases, and the evidence each attempt recorded. Use the Test cases tab to record your testing. Opening a case does not mark it as in progress; a tester presses Start testing (or Retest on a case that already has a result), or begins marking steps, attaching evidence, or writing notes on a case waiting for a result. Other viewers see the change without reloading the page. Presence is separate from results: an idle or disconnected tester never passes, fails, or skips a case, and a retest is kept as a separate attempt.
The run retains the case definition it captured at the start, including its title, description, preconditions, expanded steps, expected result, priority, and estimate. Later library edits do not rewrite existing run items. Eligible open runs from a plan or sprint can add newly included cases after review.
Completing a run marks any remaining pending cases as skipped, and issued test reports list them as not run. The report keeps passed, failed, blocked, and skipped outcomes distinct, so unfinished coverage is not counted as a successful check. The pass rate counts only cases with a verdict: passed ÷ (passed + failed). A completed run is read-only. A member who can manage the project’s test cases can reopen it with a reason, which is recorded with the run, and a corrected result keeps the one it replaced.
Yes. When a run is complete, a member who can manage the project’s test cases can create a numbered test report with a verdict (accept, accept with reservations, or reject), a summary, and optional reviewers and approvers chosen from the project’s members. Its copy of the run’s results is frozen when the report is created, before review. Reviewers sign before approvers, and each can send the report back with a comment instead. The report is issued after all required sign-offs, or immediately if no reviewers or approvers are named. Each sign-off records the person’s name, the time, and what the signature means. Download the report as PDF, Excel, CSV, JUnit XML, or JSON; until it is issued, the PDF carries a draft watermark. Create a new version with a note on what changed; it supersedes the previously issued version only when the new version is issued. Type a report’s number, such as RPT-20-3, in a document, issue, or comment and it becomes a link to the report showing its title and where it stands; people outside the project see only the number. Sign-off is recorded in Leera; the PDF itself is not digitally signed.
You can link existing cases or create cases from an issue. Cases are saved in the project test library and remain connected to the issues they cover. The library’s sprint and epic filters use those issue relationships. During execution, Fail + defect brings a failed check into Planner with a linked defect.
Yes. A case can have an execution estimate, with its measured average used as a fallback when no estimate is set. Plans and runs aggregate the available estimates. The execution timer records active testing time, supports pauses, and makes measured time available in run reports and case history.
With a configured provider, Leera AI can suggest test cases from a Planner issue for you to review, select, and save with their issue link. An external AI tool connected over MCP can also create and update cases with the required QA scopes. Generating a case does not execute it or decide release readiness; your team checks the coverage and recorded evidence.
Keep the requirement and its acceptance criteria in a Planner issue, link the cases that verify it, and select release coverage in a plan. An AI tool connected through MCP can create cases and record results within its granted access. Review the procedures and evidence, follow linked defects, and rerun the affected checks after a fix. A completed issue is not a substitute for a recorded test result.
Supported MCP tools can read a case’s steps, validate and save an automation script, list runner pools, and queue automated items from a test run. Scripts are checked against the case’s steps before saving. Execution depends on the configured runners, enabled platforms, environment, and granted scopes. Items without a script remain pending for a person; scripts that use stored sign-in credentials also require QA secrets access.
QA has dedicated environment, credential, test data, and test file views. Environments store a name, key, base URL, and description, and the selected environment name is captured in the run. For automation, an environment can also hold an API base URL and the domain used for generated e-mail addresses. Each environment is marked test or production; new environments start as test. Automated cases marked as changing data do not run on production environments or on environments nobody has marked yet, while read-only cases still run. Leera does not inspect scripts to decide this, so mark every case that creates, changes, or deletes data. Credential metadata includes the account label, role, username, sign-in URL, and notes. An account can also hold a fixed one-time code for apps with two-step sign-in. Secrets are masked in the list and requested through a separate reveal flow.
Yes, when the app under test accepts a fixed one-time code for chosen test accounts on its test environments. Store that code with the account’s QA credential: it is encrypted like the password, masked in the list, and shown only through the reveal flow. Automation scripts type it with {{credential.otp}}, and the runner redacts it from step notes and debug logs. Automation does not read codes sent by e-mail, text message, or an authenticator app, and jobs that type the code need an up-to-date runner. Make sure your production environment never accepts the fixed code.
Yes. A case can declare test data references: names for records that already exist in the system under test, such as an overdue customer. Each reference holds a value for each environment, or one for any environment, made of plain text fields. A run uses the environment’s own value first and falls back to the value for any environment only on environments marked test. When queueing automation, a person can choose which of the two values the run uses; a chosen value is used on any environment, including production. Testers see the resolved values on the run item and can refresh them while the item is pending and no automated job for it is queued or running, and automation scripts read them with placeholders such as {{data.overdue_customer.id}}. Values are visible to project members and are not a place for passwords. References do not create, reset, or remove data, and automated jobs that read test data need an up-to-date runner.
Yes. A project keeps its test files in one place: uploaded files, such as an invoice PDF or a CSV import, and generated files described by a file name, a size of up to 2 GB, and zeros or random bytes, for size-limit, empty-file and corrupt-file checks. Generated files are not stored; they are written where they are used. A case declares the files it needs, and testers download them from the run item. Automation scripts hand a file to the app with an upload action and a placeholder such as {{file.invoice_pdf}}: into a web page’s file input, through the file chooser a button opens, or onto a drop zone. A test data field can name the file, so each environment can use its own. Scripts only hand over the project’s test files, never a path on the runner machine. Files are visible to project members, so keep real customer files out, and automated jobs that upload files need an up-to-date runner.
Bring the requirement, the checks, and the release decision into one workspace.