Overview
Test Plans are collections of test cases that you want to run together regularly. This feature provides flexibility in running tests through multiple methods: API triggers, scheduled runs, or manual execution through the UI. Test plans help streamline your testing process by:- Organizing related test cases into logical groups
- Enabling automated execution on schedules
- Supporting API-driven test automation
- Managing test dependencies efficiently
Creating a Test Plan
- Navigate to the Test Plans section
- Click the “Create Test Plan” button in the top right
- Provide the following information:
- Name: A clear, descriptive name for your test plan
- Description (optional): Additional context about the test plan’s purpose
- Owner (optional): Assign a team member responsible for this test plan. See Ownership
- Click “Save” to create your test plan
Find the test plan short ID
- Go to Test Plans
- Click on a test plan
- Check the URL:
https://app.qa.tech/.../test-plans/abc123 - Use the test plan short ID in API payloads (for example:
pln_abc123)
Adding Test Cases to a Test Plan
When adding test cases to a test plan, keep in mind:- Dependencies will be automatically included in runs, even if not visible in the UI
- Consider creating separate plans for:
- Frequently run core tests
- Less frequent tests that run on a schedule
Execution Methods
- From CI: pick your CI under Regression Testing.
- From the API: call the Start Run API.
- From the app or on a schedule: see Running Tests.
testPlanShortId is the test plan short ID (e.g., pln_abc123).
Performance & Parallel Execution
QA.tech automatically runs tests in parallel to minimize total execution time when executing test plans:- Automatic parallelization: Tests run concurrently by default when executing a test plan, significantly reducing the time required to complete a full test suite
- Dependency-aware: Parallel execution respects the dependency graph, ensuring dependent tests run in the correct order while maximizing parallelization opportunities
- Configurable limits: Set Maximum Concurrent Tests on each environment to cap parallel runs against staging, production, or other URLs
- Auto-scaling: When no limit is set, the system scales up to approximately 100 concurrent agents based on demand
- Intelligent scheduling: Independent tests execute simultaneously while dependent tests wait for their prerequisites to complete
Best Practices
-
Optimize Test Organization:
- Group related test cases together
- Create separate plans for different testing frequencies
- Keep plans focused and maintainable
-
Dependency Management:
- Be aware that dependent test cases will be included automatically
- Review dependencies when setting up new test plans
-
Schedule and Workflow Optimization:
- Schedule less frequent tests during off-peak hours
- Configure GitHub workflows to run tests at key points in your development process (deployments, PRs, merges)
-
Managing Different Versions and Releases:
- Use Test Scenarios to define the specific test cases to run for a given version or release
- The same Test Plan can be reused across different environments by overriding environment URLs via API (see Start Run API) or updating test plan parameters in the UI
- Note: Both environment and device preset overrides are supported via API. See Start Run API for details on using
applicationsoverrides.
-
Notification Configuration:
- Configure email, Slack, and Microsoft Teams notifications at the test plan level
- Override the project’s default Slack channel for test plan-specific routing
- Add organization members as email recipients to ensure stakeholders receive run completion notifications
- See Notifications for detailed setup instructions
Test Plan Parameters
Test plan parameters let you configure environment and device preset settings per application. When a test plan runs, each test uses the environment configured for its application.Configuration Levels
Parameters follow a precedence hierarchy where later settings override earlier ones:Configuring Parameters in the UI
Navigate to your test plan and expand the Parameters section. You’ll see a card for each application that has test cases in the plan.Applications only appear in the Parameters section if they have test cases
included in the test plan.
How Tests Execute with Multiple Applications
Each test case belongs to one application and runs once using that application’s configured environment. Tests do not run across multiple applications. Example:- Test Plan contains: Test A (App 1), Test B (App 1), Test C (App 2)
- Parameters: App 1 → Production, App 2 → Staging
- Execution:
- Test A runs on Production (App 1’s environment)
- Test B runs on Production (App 1’s environment)
- Test C runs on Staging (App 2’s environment)
API Overrides
You can override parameters at runtime via the Start Run API. API overrides take highest precedence:applications override format.