Tools: Assembla - TestRail

Integrating TestRail with Assembla

This topic explains how to integrate TestRail with Assembla. There are currently three ways to integrate TestRail with Assembla, namely:

  • Using defect URLs to link test results to Assembla
  • Using the defect plugin for Assembla to push and look up Assembla tickets
  • Using reference URLs to link test cases to Assembla
  • Using the reference plugin for Assembla to look up Assembla tickets in the References field of TestRail entities such as test cases, test runs, and milestones.

You don’t have to use all listed integration options and you can mix and match the integration with other tools. Configuring the integration usually only takes a few minutes. This guide explains how to configure the integration and how it works.

Enhanced Assembla Integration

TestRail provides an integration with Assembla which utilizes OAuth, allowing users to quickly connect their TestRail and Assembla instances without needing to configure API keys or enter additional credentials.

Connecting to Assembla

As a TestRail Administrator, you can connect to an Assembla instance in the Integration view of the Administration area. In this view, press the ‘Configure Assembla’ button and proceed with connection dialog:

With your Assembla Organization URL and Space entered in the dialog, you can press the Connect Account button and TestRail will complete the configuration for you. Alternatively, you can enter the API Key and API Secret.

The ‘Defect integration’ and ‘Reference integration’ options allow you to also automatically configure the Defect and Reference integrations for your instance.

OAuth for Users

With TestRail connected to Assembla, you can connect your TestRail account to Assembla using OAuth. In the My Settings area of your user account, open the OAuth tab:

Pressing the Connect Account button will retrieve an access token from Assembla and save it to your TestRail account. Alternatively, you can manually enter a ‘User Access Token’ on the Settings tab.

You can also disconnect your user account at any time.

API Key and Secret for Users

With TestRail connected to Assembla using an API Key and Secret, you will need to create an API key and secret in your Assembla account. You can do this under Account > API Applications & Session. Please ensure to check the boxes for API access and Repository access.

Once you save, the API key and secret will be available. If you have User Variables configured for the integration, your key and secret can be configured in your TestRail user account under the ‘Settings’ tab of your ‘My Settings’ area. Otherwise, the key and secret can be entered directly in the Defect and Reference plugin connection settings.

Defect URLs

The defect URLs are used to let TestRail know how to convert a Defect ID into a URL for your Assembla instance. There are two types of URLs: View URLs and Add URLs.

The Defect View URL is used to build a link to Assembla based on the Defect ID, so you can simply click on an ID to open the issue directly in Assembla.

The Defect Add URL is used to create a link to the issue creation screen inside Assembla. Once the URL is configured, a new Add link appears next to the Defects field in the Add Test Result dialog and the ‘Defects’ menu in TestRail’s Push Defect From Anywhere feature. This link allows you to jump to Assembla’s New Issue form to report a new bug.

If you use the ‘Add’ link, you can copy the ID of your new Assembla issue and enter it into any Defects or References field inside TestRail.

You can configure Assembla’s URLs in TestRail globally under Administration > Integration or on a per-project basis within any project’s settings. Use the following example URLs to configure the addresses:

Assembla installation
Defect View Url: https://app.assembla.com/spaces/<space>/tickets/%id%
Defect Add Url:  https://app.assembla.com/spaces/<space>/tickets/new?from=tickets

Please make sure to replace <space> with the actual name of the portfolio and space in Assembla you want to integrate with.

If your Assembla instance is located in the EU, your URLs should begin with https://eu-app.assembla.com/…

Reference URLs

The reference URLs are implemented in a very similar manner to Defect URLs described above. The primary difference is Reference URLs are used for the ‘References’ field on various TestRail entities (instead of the Defects field).

The Reference View URL is configured in the same manner as described above and allows TestRail to create a direct link to a Assembla based on an ID entered into a References field.

The Reference  Add URL is also configured in the same way as the Defect Add URL. Once configured, an ‘Add’ link will appear next to each References field in your instance or project. If you use the ‘Add’ link, you can copy the ID of your new Assembla issue and enter it into any Defects or References field inside TestRail.

If you have the Reference plugin configured, you’ll also be able to hover over a Reference ID to view the issue details directly from within TestRail. Keep reading to learn how to use and configure the Defect and Reference Plugins.

​Defect Plugins

Defect plugins can be used to implement a tight bug tracker integration and TestRail comes with a ready-to-use Assembla defect plugin. To configure the defect plugin, select Administration > Integration and select Assembla in the Defect Plugin dropdown list. The next step is to configure all the necessary connection settings. Project-specific plugins and configuration settings can optionally be specified under Administration > Projects.

Please make sure to use your workspace ID and not the workspace name. The ID can be found found in the URL bar when logged into your Assembla instance.

When the defect plugin has been configured, a new Push link is shown next to the Defects field in the Add Test Result dialog. Clicking the link will open a popup dialog that enables you to push a bug report to Assembla without leaving TestRail.

Once the test result is added, hovering the mouse cursor over a defect ID will open a window with useful information and status details about the defect in Assembla.

When the defect plugin has been configured, a new Push link is shown next to the Defects field in the Add Test Result dialog. Clicking the link will open a popup dialog that enables you to push a bug report to Assembla without leaving TestRail.

Customizations

The Assembla defect plugin was built to work with a standard Assembla configuration. TestRail allows you to customize the fields which appear in the Push dialog as well as when hovering over Defect IDs. Preconfigured push fields and hover fields can be set to ‘on’ or ‘off’ in their respective [push.fields] and [hover.fields] sections, or change the order in which they appear by the fields in each section.

Please keep in mind some fields (such as the title field) are always enabled and may not appear in these sections due to always beings required by either TestRail or Assembla.

The Assembla Defect Plugin also supports modifying field properties as well as custom fields.

In addition to enabling, disabling, or re-organizing fields as described above, it’s also possible to change additional options per field. To do this, you would define a section for the field, such as [push.field.description] and specify additional options within this section.

[push.field.description]
label=Detailed Description
required=true

Please see below for full list and explanation of the available field options:

Option Description
label Specifies the display name of the field in the Push Defect dialogue (Required for custom fields)
size Specifies whether the field is displayed as a compact field (compact) or uses the full width of the dialogue (full)
remember Specifies if previously selected values for this field should be remembered and restored the next time the Push Defect dialogue is opened
required Specifies if this field is mandatory or optional and whether users are required to enter a value for this field in the Push Defect dialogue
type Specifies the type of this field, please see section Custom fields below for a list of supported field types (Required for custom fields)

 

Custom fields

You can also use the above-mentioned approach to add custom fields to TestRail’s Push Defect dialogue. To do this, simply add a line with your custom field to the [push.fields] section to add a field as below:

[push.fields]
...
description=on
customfield_11002=on

Custom fields are designated by customfield_<id>. The ID value for a custom field can be obtained through the Assembla API, using your browser to inspect a custom field’s value within a ticket, or in the URL of a custom field’s edit screen.

Then, add a [field.settings.customfield_<id>] section. This section is required so the plugin can push and/or retrieve data from your tool. The following is an example:

[field.settings.customfield_11002]
label=Customer
size=compact
type=dropdown
required=true

The following field types are supported:

Field Type
Description
dropdown A dropdown list that allows users to select one of the multiple options
multiselect Allows users to select multiple, pre-defined options
string A small free-text field for up to 250 characters
text A large free-text field without practical size limitations

Attachments

The Assembla Defect Plugin supports submitting attachments to Assembla as well. This field can be turned on and off, but cannot be customized. To submit one or more attachments to Assembla, simply drag the attachment to the attachments or description areas of the push dialog or click on the area to choose an attachment from your file system.

Assembla Reference Plugin

Reference plugins can be used to retrieve additional information from IDs entered into the References field of TestRail entities, such as test cases, test runs, and milestones. The Reference Plugin is configured on the References tab of the integration settings in the same manner the Defect Plugin is configured.

The plugin supports hovering over Reference IDs but does not support a Push dialog for the References field. It is also possible to customize the fields which appear via link hovering and add custom fields, as described above.

If you have the Defect Plugin already configured for Assembla, you can simply copy your [connection] and [hover.fields] sections from the Defect Plugin into the Reference plugin configuration. Alternatively, you can choose different fields to be displayed for References and Defects.

 

Additional Customizations

TestRail also supports custom defect plugins. If your team uses TestRail Server, it is possible to futther customize the defect plugin (or build your own) to support additional field types or other data. Please see out documentation here for additional information.