Project Settings
Click Settings in the side menu to configure your project. The page has ten tabs on the left. When a tab can be edited, click SAVE at the bottom to keep your changes, or CANCEL to undo them. Before saving, Testifly shows a short notice about test environments, allowlisting and parallel logins. Tick the box to confirm and continue.
Organization & Name
| Field | Use |
|---|---|
| Project ID | The unique ID of the project. You need it for the API and for support requests. It cannot be changed. |
| Project Name | The name shown in the menu and in emails. |
| Company name, Company address, Tax ID | Your company details for invoices. |
| Timezone | Used for schedules and for times in emails. |
Authentication
Tell Testifly whether your app needs a login:
- No authentication
- Some pages require authentication
- All pages require authentication
If a login is needed, choose the Authentication Method:
- The site uses a username and a password to authenticate
- Social Login (Google/Facebook/etc.)
- The site sends a link or token to the user’s email to authenticate
- Custom Login
The login page and test users are set per environment, on the next tab.
Environments
An environment is one copy of your app, such as staging or QA. The first one, Main Environment, is the DEFAULT. Click ADD to add another.
Each environment has:
- Environment Name and Base URL.
- The project is behind a VPN – tick this if the app is not reachable from the internet. Tests for this environment then run on your Remote Runners.
- Authentication details – the Login Page URL and the test users. Click ADD USER to add one. Passwords are never shown again after saving. See Password Security.
- Hooks:
- Web Page Load Script – JavaScript that runs when a page loads. Use it to prepare test data, mock APIs or set the app’s state. You are responsible for making sure the script is safe.
- Extra HTTP Headers – key and value pairs that are sent with every request. Click ADD HEADER to add one. Use them when your app or firewall expects a special header from test traffic.
Email magic links and codes
If your app signs users in with a link or code sent by email, Testifly captures those emails for you:
- Click ADD USER and enter any name. Testifly gives the user a unique address that ends in
@testifly.ai. - Register that address as a user in your app.
- When your app sends a login email to that address, Testifly shows the latest Code or Link URL on this page, with the time it arrived. Click Refresh to check for new emails.
- When the users are ready, go to Actions and click Start feature discovery from the beginning.
What happens when I change login settings?
When you save a change to the login page, the sign-in method or the test users, Testifly rebuilds the internal login test and automates it again. This runs as a Create Project job. It does not happen for projects with no login or with email magic links.
Integrations
Connect other tools to your project:
- Jira – CONNECT JIRA (API token) or CONNECT VIA OAUTH. See Jira Integration.
- Linear – CONNECT WITH API KEY or CONNECT AS AGENT. See Linear Integration.
- Notion – CONNECT NOTION. See Notion Integration.
- Slack – CONNECT SLACK. See Slack Integration.
Exclusions
List the parts of your app that Testifly must never open, for example a payment page, an admin area or a Delete account link.
- Click ADD EXCLUSION PATH.
- Enter a path. To use a pattern, tick the regular expression option and enter a regular expression.
- Click SAVE.
What exclusions do:
- Feature discovery skips matching URLs.
- A test that reaches an excluded URL during automation is marked Excluded Path.
- A test that reaches an excluded URL during a run is Skipped.
API Keys
API keys let other systems use Testifly, for example your CI/CD pipeline, an MCP client or a Remote Runner.
- Click ADD KEY and give the key a name.
- Copy the key right away. It is shown only once.
Each key shows when it was created and when it expires. Click the bin icon to delete a key. Read more in Test Execution API and MCP Integration.
Runners
Manage your on-premise runners. A red dot on this tab means your environment is behind a VPN but no runner is connected yet. See Remote Runners for how to install one.
Misc.
- Do not check for ARIA errors – when ticked, the test code never checks or uses ARIA (accessibility) attributes. Use this if your app does not set ARIA attributes and tests fail because of it. It applies to tests automated after you save.
- Run cleanup after each run – runs the cleanup test at the end of every run.
- View cleanup test – opens the cleanup test so you can write its steps.
- View login test – opens the login test that every logged-in test uses.
Billing
Shows your current plan status and lets you choose a plan.
Actions
Actions that start background work for the whole project:
| Action | What it does |
|---|---|
| Start feature discovery from the beginning | Maps your whole app again from the base URL and scans pages it has not seen before. If the login test has no code yet, Testifly builds the login first. |
| Continue with feature discovery | Scans pages that were found earlier but not scanned yet, for example after an error or after your feature limit was raised. |
| Automate Tests | Restarts automation for tests that are waiting to be automated. |
| Delete all features and tests | Deletes every feature and test in the project. This cannot be undone. |
If your project is behind a VPN, Testifly asks which runner should do the work.
Account notifications
Email preferences are set per user, not per project. Open them from the three dots next to your name, then My account. See Notifications and Emails.