GitLab Issues
Last updated
Last updated
Testmo comes with full GitLab Issues integration to push, link and look up issues. The integration works with both GitLab.com accounts as well as self-hosted GitLab server installations.
Unique to Testmo: the integration uses GitLab's built-in New issue page, so users can use GitLab's native interface with all its features to submit issues. New issues are then automatically linked from Testmo. No complicated configuration or customizations needed.
Learn more and see screenshots of our GitLab test management integration.
Also works with GitLab CI/CD
You can also integrate Testmo with GitLab CI/CD pipelines to submit automated tests from your CI workflows. Learn more about all GitLab integrations.
Using a self-hosted GitLab server installation?
Testmo also works with self-hosted GitLab server installations. For Testmo to be able to connect to GitLab using GitLab's API, your GitLab server must be reachable and accessible over the Internet. If your GitLab server is only available on your private network, Testmo will not be able to connect to it. In this case, you can still use our alternative link-based GitLab integration.
You can also see the alternative link-based integration settings below in case a direct connection is not possible.
To configure the GitLab Issues integration, in Testmo go to Admin > Integrations. You need to be a project or site administrator in Testmo to access this area. Then follow these instructions:
Select GitLab
Click + GitLab account
In the Add connection dialog, enter the details of your GitLab account:
Name: Enter the name you want to use for the integration. The name will be displayed in Testmo when choosing an issue tracker integration. This could be your organization (company) name, team name, project name or similar.
GitLab address: Either select GitLab.com for their cloud service, or select a custom self-hosted GitLab server installation. For a self-hosted GitLab server, also enter the full web address of your GitLab server installation. Important: The server and web address must be accessible over the Internet by Testmo to connect to it (see above).
Set up token authentication: In GitLab, create an access token so Testmo can connect to GitLab and authorize with its API. Note that any projects and issues accessible by this user can be looked up and accessed from Testmo by any Testmo user, as this access token is used for any app to app communication. You might want to use a separate integration user in GitLab if you want to limit project access. You can either use a personal access token for a user or a project access token (only supported by some GitLab subscription plans). To create a new access token in GitLab, either from the user preferences or project settings select Access Tokens in the left sidebar. Then create a new token with the following settings:
Token name: Testmo
Expiration date: Leave empty
Select scopes: Check api
After saving/creating the token, copy the new access token to Testmo's dialog.
Set up OAuth authentication: To enable Testmo users to authenticate with GitLab OAuth to push issues, configure a new Application in GitLab. This can be done on a user, group or instance-wide basis in GitLab. You can learn more in GitLab's documentation. You only need to configure this once, not for all your users. For example, to configure the application on a user basis, select Applications from the sidebar of the user preferences page in GitLab. Then add a new application with the following settings:
Name: Testmo
Redirect URI: https://interop.testmo.net/gitlab-app/oauth/callback
Confidential and Expiration: Leave default
Select scopes: Check api
After saving/creating the token, copy both the Application ID and Secret to Testmo's dialog.
Test connection: You can click this button to make sure everything works.
Save connection: Save the new connection.
The new connection has been created. Important: you now need to map the new integration with some or all of your Testmo projects. To do this, in the Issue tracking section of this page, click + Mapping
In the Add mapping dialog, select the above Connection
You can either select all or select specific GitLab projects
You can also either select all or select specific Testmo projects
If you want to use the integration with all your Testmo and GitLab projects, simply create the mapping for this connection with the default settings. The mappings feature allows you to map GitLab repositories and Testmo projects any way you like for fine-grained visibility.
The integration allows users to create new issues in GitLab from Testmo during testing and test design. Users can also directly look up the status and details of linked issues from Testmo without leaving the app. Users are automatically authenticated with GitLab by using the configured OAuth authentication for secure access when creating new issues.
To create new GitLab issues from Testmo, simply follow these steps:
From any entity supporting issues in Testmo (such as cases, test results, runs, milestones etc.), click the Add link next to the Issues field (you can find this field in the entity's Add/Edit dialog or from inline result forms)
In the Add issues popup:
Select the configured GitLab issue tracker connection (see above)
Select the project for the issue(s)
Enter one or more existing issues in the Issue IDs field, or click the + New issues link. This will open GitLab's New issue page. If not yet authenticated, GitLab asks you to confirm the access.
After adding one or multiple issues in GitLab, close the window. Testmo automatically finds any newly added issues and automatically adds them to the Issue IDs field for linking.
Confirm the new issue links by clicking Add
After linking GitLab issues, you can directly look up and access GitLab issues from Testmo. Simply hover your mouse cursor over any linked issue ID and click the arrow next to it to open the lookup popup. Or click the ID to navigate to GitLab to see all details. Testmo supports issue links in various places:
Milestones
Cases
Runs
Test results
Sessions
Session results
Automation comments
Linked issues are also listed on the Issue report pages for milestones, runs and automation. Testmo automatically retrieves the current status of linked GitLab issues for these reports.
You can easily disable the integration at any time. If you want to stop using the integration or want to disable the integration for a specific GitLab account, simply following these steps:
In Testmo, go to Admin > Integrations, select GitLab and either disable or delete the connection. Important: if you delete the connection, you will not be able to navigate to linked issues and not look up issue details anymore. This cannot be undone. It's better to disable the integration instead (this will prevent users from adding new issue links).
In GitLab, delete both the created Access token and the Application (for the OAuth integration). You either need to do these on the user, project, group or instance level, depending on where you've added the token and application registration. You will not be able to look up linked issues anymore.
You do not need to be familiar with the technical details to use the integration. But if you are interested in understanding some of the details, see the following information.
Token authentication: Testmo accesses GitLab's API for any app to app communication by using GitLab access tokens. This can be any access token supported by your GitLab account, such as personal access tokens or project access tokens. Testmo uses app to app communication to retrieve the details for any linked issues and to show these details to any Testmo user (e.g. in lookup popups and issue reports).
OAuth authentication: Testmo uses GitLab OAuth authentication to find newly created issues with the user's context. When a user accesses GitLab's New issue page, users might be asked to confirm the access with GitLab OAuth.
Linking existing issues: When users enter existing GitLab issue IDs, they are automatically linked from the entity.
Project caching: The list of available projects for the GitLab account might be cached by Testmo to improve performance. If you find that a project is missing from the list, simply click Refresh projects from the Project dropdown.
If you cannot or don't want to use the above advanced integration for any reason, you can also use Testmo's link-based integration with GitLab. If you already use the above mentioned integration, there's no need to configure the settings below. This alternative link-based integration can be useful if you don't have the required permissions in GitLab or you use a private GitLab server installation behind a firewall. You can use the following details to configure the integration:
Follow the steps on configuring custom link integrations
Because GitLab includes the project name in its links, you need to configure a separate connection for each GitLab project you want to integrate
Use the following New issue link setting:
Use the following View issue link setting: