Configuring application wide integration settings for Gitlab in Test Collab :
To integrate Gitlab with Test Collab, Gitlab access token is required so that Test Collab can access Gitlab API. The option to generate an access token is available on Gitlab's settings page.
Under "User settings", select "Access Tokens". On the "Personal Access Tokens" page , you provide :
A name for the application,
Optionally a date on which the token would expire, and
In the scopes section select "api" to grant access to all Gitlab projects so that they can be linked with Test Collab projects.
Once the required details are provide, click on "Create personal access token" to get a new access token generated. A confirmation message with the access token would be shown.
You should copy and save the access token for future use, as this token will not be shown again.
On your Test Collab instance use "Issue Manager" option under "Settings" menu on main dashboard, we call it the global issue manager settings page.
On this page :
Select Gitlab option from issue managers list,
Provide https://gitlab/com as URL of issue manager
Under "User or API key" provide Gitlab API version number as on date of writing this article version 4 was the latest hence "v4"
Provide personal access token generated in Gitlab as "Password"
Optionally, if you want to "Resolve reported issues when a failed test case is marked as passed" , check the box next to it and enter "close" as "Status code for resolved"
You can test the connection with your Gitlab instance to check whether the settings would work or not.
When clicked on "Test" you would see a window popped up to show the status of the connection.
Project wise integration settings
To configure project specific settings for the integrated issue manager, switch to the project and use "Issue Manager" option under "Settings" menu.
On project specific issue manager settings page, values for following fields can be provided for Gitlab:
project - (Mandatory) - The Gitlab project where you want the issues to be reported from Test Collab (to be selected from list provided).
Milestone ID - (Optional) - If there are milestones added in Gitlab and if one of them is to be linked with issues reported, then its ID can selected from list provided
Confidential - (Optional) - It can be Yes or No (to be selected from list provided)
Assignee - (Optional) - You can select a Gitlab user that will be the assignee for reported issues
labels - (Optional) - A comma separated list of labels to be attached with the reported issues can be provided here.
Due date - (Optional) - A date in YYYY-MM-DD can be provided.
Epic Id - (Optional) - Epic ID can be keyed in.
Adding other fields
You can also add other fields as may be required to make the integration complete including any custom fields using "Add user defined field" from the drop down, clicking this you will get a text box in place of drop down to enter the name of the field and its desired value.
A completed settings form
A completed project specific issue manager setting form for Gitlab would look like this.
After the values for all fields have been provided you can save and use the "Test" button to test the settings by creating a test issue in Gitlab.
When "Test" button is used a window pops up and asks for the title you want to keep for the test issue
In the next step the status related to test issue creation is shown
Once you have configured Gitlab as an issue manager, bugs can now be automatically reported into Gitlab if a test case fails while execution and the tester has opted to report. More information on this is available here.
You can also get requirements from Gitlab linked with test cases in Test Collab so that you can have a better traceability and coverage analysis. For details on requirements management please refer relevant article.