In mabl, plans represent a group of tests that run together. When you create a new plan or edit an existing plan, you can configure plan settings to control how the plan runs, from running tests in parallel or sequentially, to using certain browser or device settings, to setting up triggers to run plans on a schedule or as part of a CI/CD workflow.
This article explains the settings that you can configure for a plan:
- The basics
- Environments
- Tests
- Browser device settings
- Mobile device settings
- Triggers
- Advanced options
Not sure which tests should run together in a plan? Check out our article on organizing tests into a plan.
Plan settings for a new plan
The basics
The basic information for a plan includes the plan name, description, and labels. Plan name and description appear on the Plans page and the Plan Details page. Plan labels define test suites and can be used to run tests in tandem as a mabl deployment event.
Environments
You must associate your plan with an environment and application.
If the application has multiple environments, you may associate the plan with one or more environments. When you run a plan, every test in the plan runs once per environment. For example, if you associate a plan with the "dev" and "staging" environments, the plan runs tests once in the "dev" environment and once again in the "staging environment.
Environment settings for a plan
Web URLs
If the plan includes browser tests, select at least one web URL (`app.url`).
If the application and environment include multiple web URLs (`app.url`), you may configure the plan to run against one or more web URLs. Every browser test runs once per web URL.
Mobile build files
If the plan includes mobile tests, select a mobile build file to run the tests against.
API URLs
If the plan includes API tests, select an API URL to run tests against. You may only select one API URL per test.
Tests
Plans must always contain one or more tests. Click on the Add tests button to add an existing test.
Adding tests to a plan
By default, tests run in parallel in one stage. Depending on your use case, you may organize tests to run in multiple stages or with specific settings for concurrency or failure behavior.
Stages
The Add stage button adds a new plan stage. Stages are a grouping mechanism that helps you specify the order in which tests will run in a plan. Plan stages can be useful for test runs that require setup and/or teardown in an environment.
When a plan with stages runs in the cloud, tests in a prior stage complete before tests in the subsequent stage start running.
Adding a new plan stage
Stage options
Within a plan stage, you may configure additional settings, such as the number of tests that can run at one time, behavior on failure, and overrides. See the article on plan stage settings for more details.
Editing stage options
Browser device settings
If the plan contains browser tests, you may configure the following browser device settings at the plan level:
- Desktop (default) or mobile web testing
- Browser(s)
- Advanced settings - open the Additional settings dropdown
Mobile device settings
If the plan contains mobile tests, you may override the following mobile device settings specified at the test level:
- Mobile device
- OS Version
Triggers
In addition to triggering a plan manually by clicking on the Run button, you can configure a plan to run on a schedule, by deployment, or on a timer.
For more information on running plans on all the different ways to trigger a plan run, click here.
Advanced options
Toggle on Show advanced options to view additional settings: credentials, the run multiplier, and retry settings.
Credentials
If the plan includes tests with logins, you may associate the plan with existing mabl credentials or create a new set of mabl credentials.
Run multiplier
Use run multiplier settings to spin up multiple instances of each test in the plan.
Retry settings
Set plans triggered by a schedule or a deployment event to automatically re-run all tests or just the failed tests.
To re-run manually triggered plans, click on the plan re-run button next to the plan run.
Rerunning a plan that was triggered manually