Skip to main content
The GitLab integration connects your GitLab repositories to TestDino using OAuth. Once connected, it posts AI-generated test summaries to merge requests and commits, and syncs MR data back into TestDino. No changes to your CI pipeline required.
NoteOnly one Git provider (GitHub or GitLab) can be active per project at a time. If you need GitHub, see GitHub Integration. Running GitLab on your own infrastructure? See GitLab Self-Managed Integration.

What the GitLab Integration Does

InfoGitLab does not support CI Checks (quality gates that block merges). That feature is available with the GitHub integration only. GitLab comment summaries still give your team full visibility into test results on every MR.

Prerequisites

  • A TestDino account with a project created (Getting Started)
  • An API key generated for your project (Generate API Keys)
  • TestDino configured in your Playwright project (Node.js CLI)
  • GitLab Maintainer or Owner access on the repository you want to connect

Connect TestDino with GitLab

Connection is a two-step process: authorize TestDino via GitLab OAuth, then select which repository to connect in TestDino.

1. Authorize TestDino in GitLab

Go to Settings → Integrations → CI/CD in your TestDino project and select GitLab. This redirects you to GitLab to authorize TestDino. Sign in to GitLab (if not already) and approve the OAuth request. TestDino requests access to read your repositories, merge requests, and commits. GitLab Connected confirmation screen after OAuth authorization
NoteThis step grants TestDino access to your GitLab account. It does not connect a specific repo to your TestDino project yet. You can revoke access anytime from GitLab → Settings → Applications.

2. Connect a repository to your TestDino project

After authorization, the browser redirects back to TestDino. You land on the repository selection screen. Search for the repository you want to connect by name, then select it. Once selected, the repository is connected and ready to use. TestDino repository selection screen listing GitLab repos available to connect After selecting a repo, the GitLab card in Settings → Integrations shows the connected repository name. TestDino Settings showing GitLab card in connected state with repo name and gear icon TestDino starts syncing MR metadata and attaching test runs to commits from this point forward.
The sections below cover what you can configure and access after the connection is active.

Configure MR Comments

GitLab merge request comment showing AI-generated test summary with pass/fail counts and failure analysis When a Playwright run finishes, TestDino can post an AI-generated test summary directly to the merge request or commit in GitLab. To control where and when these comments appear, you configure them through GitLab Settings in TestDino. Open Settings → Integrations → GitLab and click the ⚙️ icon on the GitLab card. This opens the GitLab Settings panel. GitLab Settings panel showing MR and commit comment toggles with environment overrides table

Default comment toggles

At the top, two toggles control the global defaults:
  • Merge Request Comments: posts a test summary to every MR on a mapped branch
  • Commit Comments: posts a test summary to every commit on a mapped branch
These defaults apply to all environments unless overridden below.

Environment overrides

Below the defaults, the Environment Overrides table lists each environment configured in your project (e.g., PROD, DEV, MAIN, QA, STAGE). Each row shows: Environment-level toggles override the global defaults. For example, you can enable MR comments globally but disable them for the DEV environment.
TipEnvironment overrides are optional. If the global toggles are on and no overrides are configured, TestDino posts comments on every MR and commit. Use overrides when you want different behavior per environment. For example: post both MR and commit summaries on PROD branches, but only MR summaries on DEV branches.

Merge Requests in TestDino

Once connected, TestDino syncs your GitLab merge requests into the Pull Requests view. Each MR shows: TestDino keeps MR state in sync with GitLab. When a merge request is opened, merged, or closed in GitLab, the status updates in TestDino automatically.
TipThe merge request view updates automatically as new commits and test runs arrive. No manual refresh needed.

Troubleshooting

  • Verify the global comment toggles are enabled in Settings → Integrations → GitLab → ⚙️
  • Confirm the branch that triggered the run is mapped to an environment (if using overrides)
  • Check that the CLI is uploading with the correct project API key
  • Verify the GitLab OAuth connection is still active in Settings → Integrations
  • Ensure the correct repository is connected to the TestDino project
  • Confirm tests have run on the MR branch at least once after connecting
  • Ensure you have Maintainer or Owner access on the GitLab repository
  • Try revoking the TestDino app in GitLab → Settings → Applications and reconnecting
  • The OAuth token may not have access to that repo. Revoke and re-authorize to refresh permissions
  • Ensure the repository is not archived in GitLab

GitLab Self-Managed

Connect TestDino to a self-managed GitLab instance via OAuth

GitHub Integration

Connect GitHub with PR comments, CI checks, and quality gates

Environment Mapping

Map branches to environments for targeted reporting

Pull Requests Dashboard

View all MRs with test run results, trends, and AI insights