Integration with Bugs




Integration with third-party bugs

XStudio includes an integrated Bug-tracking module but can also interface with third-party bug-tracking systems.

JIRA (XML-RPC)

You'll need to first ensure you have the XML-RPC plugin installed and activated in your JIRA install. To check if the plugin is already installed and enabled, just open a browser and enter the URL:
http://192.168.10.104:8080/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?
(just replace the IP address and the port with your own settings). You should retrieve an XML document looking like:
jira

If not, please check Atlassian's website for more information on how to enable the XML-RPC plugin.
Once the XML-RPC plugin is activated, run XStudio and open the menu Settings > Server Settings > Connectors > Bug-Tracking.
   integration bugs jira

Then, select JIRA (XML-RPC) in the popup's selection combobox and set the following parameters (replace the login name, the password, the IP address and the port by your JIRA settings):
Field Description
authentication You can authenticate to JIRA using two methods:
  • use specific username and password (specified below)
  • use each user's XStudio credentials (the one used to log in XStudio
    Note: if you have LDAP/Active Directory enabled, then this would be the directory's user credentials and it would act as a SSO (Single sign-on).
username Username of a full-access JIRA account able to see all the bugs you wish to retrieve
For instance:
user1
password Password associated to the username
For instance:
user1_password
url pattern This indicates the URL to use with your JIRA instance to edit a bug.
The URL must include the tag 'bug_id' that will be dynamically replaced by the id of the bug to be displayed/edited
For instance:
http://192.168.100.104:8080/browse/bug_id
url new bug This indicates the URL to use with your JIRA instance to create a new bug.
The URL can include the tag 'project_id' that will be used as the default project when you create a new bug
The URL can include the tag 'bug_description' that will be used to prepopulate the summary of the new bug
The URL can include the tag 'step_to_reproduce' that will be used to prepopulate the description of the new bug

For instance:
http://192.168.100.104:8080/secure/CreateIssue.jspa?&pid=project_id&issuetype=1

If you wish to pre-populate your issue while executing the tests you can use a URL similar to:
http://192.168.100.104:8080/secure/CreateIssueDetails!init.jspa?pid=project_id&issuetype=1&summary=bug_description&description=step_to_reproduce
(note that there is some limitation on size for the URL - i.e. if the URL is too large, JIRA may not populate the description field)

You can also prepopulate custom fields if you wish by using their id:
http://192.168.100.104:8080/secure/CreateIssueDetails!init.jspa?pid=project_id&issuetype=1&customfield_10123=step_to_reproduce

How to find the Id of an issue type?

  • In JIRA, click Administration > Issues > Issue Types
  • On the Global Issue Types sub-tab, hover your mouse cursor over the Edit operation link of an issue type
  • JIRA will display the issue type's id appended to the URL shown in the browser's status bar.
    For example, the "id" in the following link represents the id of the issue type: http://<your-server>/secure/admin/EditIssueType!default.jspa?id=10006
url server This indicates the URL of your JIRA's XML-RPC server.
For instance:
http://192.168.100.104:8080/rpc/xmlrpc
filter projects The list of project code names separated by ';' characters
For instance:
PROJ1;PROJ2
When left empty, issues from all projects are retrieved.
filter issue types The list of numeric issue types that you wish to retrieve in the tree separated by ';' characters
For instance: 1;2

By default, JIRA issue types are:
  • 1 = Bug
  • 2 = Improvement
  • 3 = New Feature
  • 4 = Task

We've been reported that with some versions of JIRA it can be:
  • 1 = Bug
  • 2 = New Functionality
  • 3 = Task
  • 4 = Improvement

In some other environments (that are localized) it can even be some very large values such as 10006 for Bug
How to find the Id of an issue type?

  • In JIRA, click Administration > Issues > Issue Types
  • On the Global Issue Types sub-tab, hover your mouse cursor over the Edit operation link of an issue type
  • JIRA will display the issue type's id appended to the URL shown in the browser's status bar.
    For example, the "id" in the following link represents the id of the issue type: http://<your-server>/secure/admin/EditIssueType!default.jspa?id=10006

When left empty, issues with any type are retrieved.
filter status The list of status that you wish to filter separated by ';' characters
For instance: Open;Resolved;Closed
When left empty, issues with any status are retrieved.
Accept ANY TLS/SSL certificate If you connect to your JIRA server using a SSL connection and you trust the network, just check this checkbox to accept any certificate.
Note that if you do so and if your environment is not safe, you're subject to a man-in-the-middle attack.
For more information on this, check the Secure connections chapter.
Certificate (needed only with https URL) If you connect to your JIRA server using a SSL connection (https:// url), you'll need to copy here the server's certificate.
For more information on this, check the Secure connections chapter.
The login and password provided will be used to authenticate to the JIRA server.
The keywords project_id and bug_id are dynamically replaced by XStudio when necessary.



Note 1: The REST-API is preferred to XML-RPC as Atlassian is tending to remove any support on XML-RPC now.

Note 2: If you're using XML-RPC with a old version of XStudio and some of your JIRA projects contain a larger number of issues you may encounter some Access-Denied errors and the project are left empty in XStudio. This is because JIRA's XML-RPC default settings include some limits for the number of issues returned and XStudio formerly did not support the paging feature.

However, you can anyway easily fix this by following these instructions from Atlassian.
The useful parameters are jira.search.views.default.max and jira.search.views.max.limit.

Note 3: the configuration above will let you integrate perfectly with JIRA. This means you will be able to have all the JIRA main information directly from XStudio. The links in between the failed tests and the JIRA issues are stored in XStudio database.

In addition to this, if you have XStudio 3.1+, you can also benefit from a BOTH-WAY Integration if you install our JIRA add-on in your JIRA instance.

With this add-on, you'll be able to have the XStudio information (SUTs impacted by an issue, Test campaigns, sessions or exploratory sessions that found the issue and even Requirements impacted by the issue) available from JIRA without leaving JIRA. This is the perfect tool for the developers and testers to communicate efficiently.
If you're interested in a both-way integration with JIRA, please check the JIRA add-on installation procedure.


JIRA (REST)

The REST API is normally activated by default in your JIRA install.
Run XStudio and open the menu Settings > Server Settings > Connectors > Bug-Tracking.
   integration bugs jira rest

Then, select JIRA (REST) in the popup's selection combobox and set the following parameters (replace the login name, the password, the IP address and the port by your JIRA settings):
Field Description
authentication You can authenticate to JIRA using two methods:
  • use specific username and password (specified below)
  • use each user's XStudio credentials (the one used to log in XStudio
    Note: if you have LDAP/Active Directory enabled, then this would be the directory's user credentials and it would act as a SSO (Single sign-on).
username Username of a full-access JIRA account able to see all the bugs you wish to retrieve
For instance:
user1
password Password associated to the username or a dedicated API token
For instance:
user1_password
Starting from June 3rd, 2019, Atlassian deprecated the BasicAuth authentication with passwords.
Hence, API Tokens must be used rather than passwords.
So please generate an API token dedicated to XStudio and use this API token instead of the password in XStudio's configuration.
url pattern This indicates the URL to use with your JIRA instance to edit a bug.
The URL must include the tag 'bug_id' that will be dynamically replaced by the id of the bug to be displayed/edited
For instance:
http://192.168.100.123:8080/browse/bug_id
url new bug This indicates the URL to use with your JIRA instance to create a new bug.
The URL can include the tag 'project_id' that will be used as the default project when you create a new bug
The URL can include the tag 'bug_description' that will be used to prepopulate the summary of the new bug
The URL can include the tag 'step_to_reproduce' that will be used to prepopulate the description of the new bug

For instance:
http://192.168.100.104:8080/secure/CreateIssue.jspa?&pid=project_id&issuetype=1

If you wish to pre-populate your issue while executing the tests you can use a URL similar to:
http://192.168.100.104:8080/secure/CreateIssueDetails!init.jspa?pid=project_id&issuetype=1&summary=bug_description&description=step_to_reproduce
(note that there is some limitation on size for the URL - i.e. if the URL is too large, JIRA may not populate the description field)

You can also prepopulate custom fields if you wish by using their id:
http://192.168.100.104:8080/secure/CreateIssueDetails!init.jspa?pid=project_id&issuetype=1&customfield_10123=step_to_reproduce

How to find the Id of an issue type?

  • In JIRA, click Administration > Issues > Issue Types
  • On the Global Issue Types sub-tab, hover your mouse cursor over the Edit operation link of an issue type
  • JIRA will display the issue type's id appended to the URL shown in the browser's status bar.
    For example, the "id" in the following link represents the id of the issue type: http://<your-server>/secure/admin/EditIssueType!default.jspa?id=10006
url server This indicates the URL of your JIRA's REST-API server.
For instance:
http://192.168.100.123:8080/rest/api/latest
filter projects The list of project code names separated by ';' characters
For instance:
PROJ1;PROJ2
When left empty, issues from all projects are retrieved.
filter issue types The list of issue types that you wish to retrieve in the tree separated by ';' characters
For instance: Bug;Improvement;New Feature
When left empty, issues with any type are retrieved.
filter status The list of status that you wish to filter separated by ';' characters
For instance: Open;In Progress
When left empty, issues with any status are retrieved.
Accept ANY TLS/SSL certificate If you connect to your JIRA server using a SSL connection and you trust the network, just check this checkbox to accept any certificate.
Note that if you do so and if your environment is not safe, you're subject to a man-in-the-middle attack.
For more information on this, check the Secure connections chapter.
Certificate (needed only with https URL) If you connect to your JIRA server using a SSL connection (https:// url), you'll need to copy here the server's certificate.
For more information on this, check the Secure connections chapter.
The login and password provided will be used to authenticate to the JIRA server.
The keywords project_id and bug_id are dynamically replaced by XStudio when necessary.

Note: the configuration above will let you integrate perfectly with JIRA. This means you will be able to have all the JIRA main information directly from XStudio. The links in between the failed tests and the JIRA issues are stored in XStudio database.

In addition to this, if you have XStudio 3.1+, you can also benefit from a BOTH-WAY Integration if you install our JIRA add-on in your JIRA instance.

With this add-on, you'll be able to have the XStudio information (SUTs impacted by an issue, Test campaigns, sessions or exploratory sessions that found the issue and even Requirements impacted by the issue) available from JIRA without leaving JIRA. This is the perfect tool for the developers and testers to communicate efficiently.
If you're interested in a both-way integration with JIRA, please check the JIRA add-on installation procedure.


Mantis (SQL)

XStudio can connect directly to Mantis's database using SQL. Run XStudio and open the menu Settings > Server Settings > Connectors > Bug-Tracking.
   integration bugs mantis sql

Then, select Mantis (SQL) in the popup's selection combobox and set the following parameters (replace the login name, the password, the IP address and the port by your Mantis settings):
Field Description
driver jar path For instance:
  • MySql:  mariadb-java-client-1.1.5/mariadb-java-client-1.1.5.jar (or mysql-connector-java-5.1.12/mysql-connector-java-5.1.12-bin.jar if you prefer using the legacy MySQL Connector/J JDBC driver)
  • MariaDB:  mariadb-java-client-1.1.5/mariadb-java-client-1.1.5.jar
  • Oracle:  oracle-11g-R2/ojdbc6.jar
  • SQL Server:  sqljdbc_3.0/enu/sqljdbc4.jar
driver class path This indicates where XStudio can find the JDBC driver to connect to the Mantis database. This field must indicates a relative path from <Install_folder>\bin\jdbc folder to the jar file.
For instance:
  • MySql:  org.mariadb.jdbc.Driver (or com.mysql.jdbc.Driver if you prefer using the legacy MySQL Connector/J JDBC driver)
  • MariaDB:  org.mariadb.jdbc.Driver
  • Oracle: oracle.jdbc.driver.OracleDriver
  • SQL Server: com.microsoft.sqlserver.jdbc.SQLServerDriver
database server 192.168.100.101
database name mantis
connection template Connection template to use the JDBC driver.
WARNING: do not replace �database_server� and �database_name� fields in the connection template.
They will be automatically replaced by the system with what you specified in �database server� and �database name� fields.
For instance:
  • MySql:  jdbc:mysql://database_server:3306/database_name
  • MariaDB:  jdbc:mysql://database_server:3306/database_name
  • Oracle:  jdbc:oracle:thin:@//database_server:1521/database_name
  • SQL Server: jdbc:sqlserver://database_server;databaseName=database_name;
authentication You can authenticate to Mantis using two methods:
  • use specific username and password (specified below)
  • use each user's XStudio credentials (the one used to log in XStudio
    Note: if you have LDAP/Active Directory enabled, then this would be the directory's user credentials and it would act as a SSO (Single sign-on).
username Username of a full-access Mantis account able to see all the bugs you wish to retrieve
For instance:
user1
password Password associated to the username
For instance:
user1_password
url pattern This indicates the URL to use with your Mantis instance to edit a bug.
The URL must include the tag 'bug_id' that will be dynamically replaced by the id of the bug to be displayed/edited
For instance:
http://192.168.100.101:8080/view.php?id=bug_id
url new bug This indicates the URL to use with your Mantis instance to create a new bug.
The URL can include the tag 'bug_description' that will be used to prepopulate the summary of the new bug
The URL can include the tag 'step_to_reproduce' that will be used to prepopulate the description of the new bug

For instance:
http://192.168.100.101:8080/bug_report_page.php

If you wish to pre-populate your issue while executing the tests you can use a URL similar to:
http://192.168.100.101:8080/bug_report_page.php?summary=bug_description&description=step_to_reproduce
(note that there is some limitation on size for the URL - i.e. if the URL is too large, Mantis may not populate the description field)
filter Projects The list of project names separated by ';' characters
For instance:
Project1;Project2
When left empty, issues from all projects are retrieved.

The login and password provided will be used to connect via JDBC to the Mantis database.


Mantis (SOAP)

XStudio can connect to Mantis using SOAP protocol (tested with Mantis 1.2.18 but should be fine with any other version supporting SOAP). Run XStudio and open the menu Settings > Server Settings > Connectors > Bug-Tracking.
   integration bugs mantis soap

Then, select Mantis (SOAP) in the popup's selection combobox and set the following parameters (replace the login name, the password, the IP address and the port by your Mantis settings):
Field Description
authentication You can authenticate to Mantis using two methods:
  • use specific username and password (specified below)
  • use each user's XStudio credentials (the one used to log in XStudio
    Note: if you have LDAP/Active Directory enabled, then this would be the directory's user credentials and it would act as a SSO (Single sign-on).
username Username of a full-access Mantis account able to see all the bugs you wish to retrieve
For instance:
user1
password Password associated to the username
For instance:
user1_password
url pattern This indicates the URL to use with your Mantis instance to edit a bug.
The URL must include the tag 'bug_id' that will be dynamically replaced by the id of the bug to be displayed/edited
For instance:
http://192.168.100.124/view.php?id=bug_id
url new bug This indicates the URL to use with your Mantis instance to create a new bug.
The URL can include the tag 'bug_description' that will be used to prepopulate the summary of the new bug
The URL can include the tag 'step_to_reproduce' that will be used to prepopulate the description of the new bug

For instance:
http://192.168.100.124/bug_report_page.php

If you wish to pre-populate your issue while executing the tests you can use a URL similar to:
http://192.168.100.124/bug_report_page.php?summary=bug_description&description=step_to_reproduce
(note that there is some limitation on size for the URL - i.e. if the URL is too large, Mantis may not populate the description field)
url server This indicates the URL of your Mantis's SOAP server.
For instance:
http://192.168.100.124/api/soap/mantisconnect.php
filter Projects The list of project names separated by ';' characters
For instance:
Project1;Project2
When left empty, issues from all projects are retrieved.
filter status The list of status that you wish to filter separated by ';' characters
Note: If some status names contain special characters, you can use unicode sequences i.e. to specify status "Accepté", enter "Accept\u00e9"

For instance: Accepted;Done;In Progress
When left empty, issues with any status are retrieved.
Accept ANY TLS/SSL certificate If you connect to your Mantis server using a SSL connection and you trust the network, just check this checkbox to accept any certificate.
Note that if you do so and if your environment is not safe, you're subject to a man-in-the-middle attack.
For more information on this, check the Secure connections chapter.
Certificate (needed only with https URL) If you connect to your Mantis server using a SSL connection (https:// url), you'll need to copy here the server's certificate.
For more information on this, check the Secure connections chapter.
The login and password provided will be used to authenticate to the Mantis server.
The keywords project_id and bug_id are dynamically replaced by XStudio when necessary.

Bugzilla (SQL)

XStudio can connect directly to Bugzilla's database using SQL. Run XStudio and open the menu Settings > Server Settings > Connectors > Bug-Tracking.
   integration bugs bugzilla sql

Then, select Bugzilla (SQL) in the popup's selection combobox and set the following parameters (replace the login name, the password, the IP address and the port by your Mantis settings):
Field Description
driver jar path This indicates where XStudio can find the JDBC driver to connect to the Bugzilla database. This field must indicates a relative path from <Install_folder>\bin\jdbc folder to the jar file.
For instance:
  • MySql:  mariadb-java-client-1.1.5/mariadb-java-client-1.1.5.jar (or mysql-connector-java-5.1.12/mysql-connector-java-5.1.12-bin.jar if you prefer using the legacy MySQL Connector/J JDBC driver)
  • MariaDB:  mariadb-java-client-1.1.5/mariadb-java-client-1.1.5.jar
  • Oracle:  oracle-11g-R2/ojdbc6.jar
  • SQL Server:  sqljdbc_3.0/enu/sqljdbc4.jar
driver class path For instance:
  • MySql:  org.mariadb.jdbc.Driver (or com.mysql.jdbc.Driver if you prefer using the legacy MySQL Connector/J JDBC driver)
  • MariaDB:  org.mariadb.jdbc.Driver
  • Oracle: oracle.jdbc.driver.OracleDriver
  • SQL Server: com.microsoft.sqlserver.jdbc.SQLServerDriver
database server 192.168.100.100
database name bugzilla
connection template Connection template to use the JDBC driver.
WARNING: do not replace �database_server� and �database_name� fields in the connection template.
They will be automatically replaced by the system with what you specified in �database server� and �database name� fields.
For instance:
  • MySql:  jdbc:mysql://database_server:3306/database_name
  • MariaDB:  jdbc:mysql://database_server:3306/database_name
  • Oracle:  jdbc:oracle:thin:@//database_server:1521/database_name
  • SQL Server: jdbc:sqlserver://database_server;databaseName=database_name;
authentication You can authenticate to Bugzilla using two methods:
  • use specific username and password (specified below)
  • use each user's XStudio credentials (the one used to log in XStudio
    Note: if you have LDAP/Active Directory enabled, then this would be the directory's user credentials and it would act as a SSO (Single sign-on).
username Username of a full-access Bugzilla account able to see all the bugs you wish to retrieve
For instance:
user1
password Password associated to the username
For instance:
user1_password
url pattern This indicates the URL to use with your Bugzilla instance to edit a bug.
The URL must include the tag 'bug_id' that will be dynamically replaced by the id of the bug to be displayed/edited
For instance:
http://192.168.100.100/show_bug.cgi?id=bug_id
url new bug This indicates the URL to use with your Bugzilla instance to create a new bug.
The URL can include the tag 'project_id' that will be used as the default project when you create a new bug
The URL can include the tag 'bug_description' that will be used to prepopulate the summary of the new bug
The URL can include the tag 'step_to_reproduce' that will be used to prepopulate the description of the new bug

For instance:
http://192.168.100.100/enter_bug.cgi?product=project_id

If you wish to pre-populate your issue while executing the tests you can use a URL similar to:
http://192.168.100.100/enter_bug.cgi?product=project_id&short_desc=bug_description&comment=step_to_reproduce
(note that there is some limitation on size for the URL - i.e. if the URL is too large, Bugzilla may truncate the description field)
filter Projects The list of project names separated by ';' characters
For instance:
Project1;Project2
When left empty, issues from all projects are retrieved.
Accept ANY TLS/SSL certificate If you connect to your Bugzilla server using a SSL connection and you trust the network, just check this checkbox to accept any certificate.
Note that if you do so and if your environment is not safe, you're subject to a man-in-the-middle attack.
For more information on this, check the Secure connections chapter.
Certificate (needed only with https URL) If you connect to your Bugzilla server using a SSL connection (https:// url), you'll need to copy here the server's certificate.
For more information on this, check the Secure connections chapter.

The login and password provided will be used to connect via JDBC to the Bugzilla database.


Bugzilla (XML-RPC)

XStudio can connect to Bugzilla's using XML-RPC protocol. Run XStudio and open the menu Settings > Server Settings > Connectors > Bug-Tracking.
   integration bugs bugzilla xmlrpc

Then, select Bugzilla (XML-RPC) in the popup's selection combobox and set the following parameters (replace the login name, the password, the IP address and the port by your Mantis settings):
Field Description
authentication You can authenticate to Bugzilla using two methods:
  • use specific username and password (specified below)
  • use each user's XStudio credentials (the one used to log in XStudio
    Note: if you have LDAP/Active Directory enabled, then this would be the directory's user credentials and it would act as a SSO (Single sign-on).
username Username of a full-access Bugzilla account able to see all the bugs you wish to retrieve
For instance:
user1
password Password associated to the username
For instance:
user1_password
url pattern This indicates the URL to use with your Bugzilla instance to edit a bug.
The URL must include the tag 'bug_id' that will be dynamically replaced by the id of the bug to be displayed/edited
For instance:
http://192.168.100.125/show_bug.cgi?id=bug_id
url new bug This indicates the URL to use with your Bugzilla instance to create a new bug.
The URL can include the tag 'project_id' that will be used as the default project when you create a new bug
The URL can include the tag 'bug_description' that will be used to prepopulate the summary of the new bug
The URL can include the tag 'step_to_reproduce' that will be used to prepopulate the description of the new bug

For instance:
http://192.168.100.125/enter_bug.cgi?product=project_id

If you wish to pre-populate your issue while executing the tests you can use a URL similar to:
http://192.168.100.125/enter_bug.cgi?product=project_id&short_desc=bug_description&comment=step_to_reproduce
(note that there is some limitation on size for the URL - i.e. if the URL is too large, Bugzilla may truncate the description field)
url server This indicates the URL of your Bugzilla's XML-RPC server.
For instance:
http://192.168.100.125/xmlrpc.cgi
filter projects The list of project names separated by ';' characters
For instance:
TestProduct;Product 1;Product 2
When left empty, issues from all projects are retrieved.
filter status The list of status that you wish to filter separated by ';' characters
For instance: CONFIRMED;IN_PROGRESS;RESOLVED;UNCONFIRMED
When left empty, issues with any status are retrieved.
Accept ANY TLS/SSL certificate If you connect to your Bugzilla server using a SSL connection and you trust the network, just check this checkbox to accept any certificate.
Note that if you do so and if your environment is not safe, you're subject to a man-in-the-middle attack.
For more information on this, check the Secure connections chapter.
Certificate (needed only with https URL) If you connect to your Bugzilla server using a SSL connection (https:// url), you'll need to copy here the server's certificate.
For more information on this, check the Secure connections chapter.

The login and password provided will be used to connect via JDBC to the Bugzilla database.


Trac

You'll need to first ensure you have the XML-RPC plugin installed and activated in your trac install. Please check trac Hacks's website for more information on how to install/enable the XML-RPC plugin.
Once the XML-RPC plugin is activated, run XStudio and open the menu Settings > Server Settings > Connectors > Bug-Tracking.
   integration bugs tracking

Then, select Trac in the popup's selection combobox and set the following parameters (replace the login name, the password and the IP addressby your trac settings):
Field Description
authentication You can authenticate to trac using two methods:
  • use specific username and password (specified below)
  • use each user's XStudio credentials (the one used to log in XStudio
    Note: if you have LDAP/Active Directory enabled, then this would be the directory's user credentials and it would act as a SSO (Single sign-on).
username Username of a full-access trac account able to see all the bugs you wish to retrieve
For instance:
user1
password Password associated to the username
For instance:
user1_password
url pattern This indicates the URL to use with your trac instance to edit a bug.
The URL must include the tag 'bug_id' that will be dynamically replaced by the id of the bug to be displayed/edited
For instance:
http://192.168.10.102/example/ticket/bug_id
url new bug This indicates the URL to use with your trac instance to create a new bug.
The URL can include the tag 'bug_description' that will be used to prepopulate the summary of the new bug
The URL can include the tag 'step_to_reproduce' that will be used to prepopulate the description of the new bug

For instance:
http://192.168.10.102/example/newticket

If you wish to pre-populate your issue while executing the tests you can use a URL similar to:
http://192.168.10.102/example/newticket?summary=bug_description&description=step_to_reproduce
(note that there is some limitation on size for the URL - i.e. if the URL is too large, Bugzilla may truncate the description field)
url server This indicates the URL of your trac's XML-RPC server.
For instance:
http://192.168.10.102/example/login/xmlrpc
filter Projects The list of project names separated by ';' characters
For instance:
Milestone1;Milestone2
When left empty, issues from all projects are retrieved.

The login and password provided will be used to authenticate to the trac XML-RPC server.
The keyword bug_id is dyamically replaced by XStudio when necessary.

Note: If you intend to show also closed bugs in XStudio, then there is a specific settings to write into Trac's configuration:
tracking configuration


Clearquest

This connector is using OSLC standard API to access Clearquest database.
Run XStudio and open the menu Settings > Server Settings > Connectors > Bug-Tracking.
   integration bugs clearquest

Then, select Clearquest in the popup's selection combobox and set the following parameters (replace the login name, the password, the IP address and the Repository by your Clearquest settings):
Field Description
authentication You can authenticate to Clearquest using two methods:
  • use specific username and password (specified below)
  • use each user's XStudio credentials (the one used to log in XStudio
    Note: if you have LDAP/Active Directory enabled, then this would be the directory's user credentials and it would act as a SSO (Single sign-on).
username Username of a full-access Clearquest account able to see all the bugs you wish to retrieve
For instance:
user1
password Password associated to the username
For instance:
user1_password
url pattern This indicates the URL to use with your Clearquest instance to edit a bug.
The URL can include the tag 'project_id' that will be used as the default project when you create a new bug
The URL must include the tag 'bug_id' that will be dynamically replaced by the id of the bug to be displayed/edited
For instance:
https://192.168.100.115/cqweb/oslc/repo/example/db/project_id/record/bug_id
url new bug This indicates the URL to use with your Clearquest instance to create a new bug.
The URL can include the tag 'project_id' that will be used as the default project when you create a new bug
For instance:
https://192.168.100.115/cqweb/#/example/project_id/RECORD&autoSave\=false&fieldsXml\=&noframes\=true&format\=HTML&recordType\=Defect
url server This indicates the URL of your Clearquest's OSLC server.
For instance:
https://192.168.100.115/cqweb/oslc/repo/example
filter Projects The list of project names separated by ';' characters
For instance:
Project1;Project2
When left empty, issues from all projects are retrieved.
filter issue types The list of issue types that you wish to retrieve in the tree separated by ';' characters
For instance: Defect
When left empty, issues with any type are retrieved.
filter status The list of status that you wish to filter separated by ';' characters
For instance: Submitted;Assigned;Opened
When left empty, issues with any status are retrieved.
Accept ANY TLS/SSL certificate If you connect to your Clearquest server using a SSL connection and you trust the network, just check this checkbox to accept any certificate.
Note that if you do so and if your environment is not safe, you're subject to a man-in-the-middle attack.
For more information on this, check the Secure connections chapter.
Certificate (needed only with https URL) If you connect to your Clearquest server using a SSL connection (https:// url), you'll need to copy here the server's certificate.
For more information on this, check the Secure connections chapter.

The login and password provided will be used to authenticate to the Clearquest server.
The keywords project_id and bug_id are dyamically replaced by XStudio when necessary.

VersionOne

This connector is using a standard REST API to access VersionOne data.
run XStudio and open the menu Settings > Server Settings > Connectors > Bug-Tracking.
   integration bugs version one

Then, select VersionOne in the popup's selection combobox and set the following parameters (replace the login name, the password, the IP address and the Repository by your VersionOne settings):
Field Description
authentication You can authenticate to VersionOne using two methods:
  • use specific username and password (specified below)
  • use each user's XStudio credentials (the one used to log in XStudio
    Note: if you have LDAP/Active Directory enabled, then this would be the directory's user credentials and it would act as a SSO (Single sign-on).
username Username of a full-access VersionOne account able to see all the defects you wish to retrieve
For instance:
user1
password Password associated to the username
For instance:
user1_password
url pattern This indicates the URL to use with your VersionOne instance to edit a bug.
The URL must include the tag 'bug_id' that will be dynamically replaced by the id of the bug to be displayed/edited
For instance:
https://www1.v1host.com/Acme/Default.aspx?Page=Widgets/Details/QuickEditStory&AssetContext=Story\:bug_id
url new bug This indicates the URL to use with your VersionOne instance to create a new bug.
For instance:
https://www1.v1host.com/Acme/Default.aspx?page=Gadgets/AddNewAsset/DropDown/Controls/AddDefect
url server This indicates the URL of your VersionOne's server.
For instance:
https://www1.v1host.com/Acme
filter Projects The list of project ids separated by ';' characters
For instance:
1000;1001
When left empty, issues from all projects are retrieved.
filter issue types The list of issue types that you wish to retrieve in the tree separated by ';' characters
For instance: Defect
When left empty, issues with any type are retrieved.
filter status The list of status that you wish to filter separated by ';' characters
For instance: Future;In Progress;Accepted;;Done
When left empty, issues with any status are retrieved.
Accept ANY TLS/SSL certificate If you connect to your VersionOne server using a SSL connection and you trust the network, just check this checkbox to accept any certificate.
Note that if you do so and if your environment is not safe, you're subject to a man-in-the-middle attack.
For more information on this, check the Secure connections chapter.
Certificate (needed only with https URL) If you connect to your VersionOne server using a SSL connection (https:// url), you'll need to copy here the server's certificate.
For more information on this, check the Secure connections chapter.

The login and password provided will be used to authenticate to the VersionOne server.
The keywords project_id and bug_id are dyamically replaced by XStudio when necessary.

Redmine

This connector is using a standard REST API to access Redmine data.
run XStudio and open the menu Settings > Server Settings > Connectors > Bug-Tracking.
   integration bugs redmine

Then, select Redmine in the popup's selection combobox and set the following parameters (replace the login name, the password, the IP address and the Repository by your Redmine settings):
Field Description
authentication You can authenticate to Redmine using two methods:
  • use specific username and password (specified below)
  • use each user's XStudio credentials (the one used to log in XStudio
    Note: if you have LDAP/Active Directory enabled, then this would be the directory's user credentials and it would act as a SSO (Single sign-on).
username Username of a full-access Redmine account able to see all the defects you wish to retrieve
For instance:
user1
password Password associated to the username
For instance:
user1_password
url pattern This indicates the URL to use with your Redmine instance to edit a bug.
The URL must include the tag 'bug_id' that will be dynamically replaced by the id of the bug to be displayed/edited
For instance:
https://192.168.100.126/issues/bug_id
url new bug This indicates the URL to use with your Redmine instance to create a new bug.
For instance:
https://192.168.100.126/projects/project_id/issues/new?tracker_id=1
url server This indicates the URL of your Redmine's server.
For instance:
https://192.168.100.126
filter Projects The list of project ids separated by ';' characters
For instance:
Proj1;Proj2
When left empty, issues from all projects are retrieved.
filter issue types The list of issue types that you wish to retrieve in the tree separated by ';' characters
For instance: Bug;Feature
When left empty, issues with any type are retrieved.
filter status The list of status that you wish to filter separated by ';' characters
For instance: New;In Progress;Resolved;Feedback;Rejected
When left empty, issues with any status are retrieved.
Accept ANY TLS/SSL certificate If you connect to your Redmine server using a SSL connection and you trust the network, just check this checkbox to accept any certificate.
Note that if you do so and if your environment is not safe, you're subject to a man-in-the-middle attack.
For more information on this, check the Secure connections chapter.
Certificate (needed only with https URL) If you connect to your Redmine server using a SSL connection (https:// url), you'll need to copy here the server's certificate.
For more information on this, check the Secure connections chapter.

The login and password provided will be used to authenticate to the Redmine server.
The keywords project_id and bug_id are dyamically replaced by XStudio when necessary.

QC

This connector is using a standard REST API to access QC data.
run XStudio and open the menu Settings > Server Settings > Connectors > Bug-Tracking.
   integration bugs qc

Then, select QC in the popup's selection combobox and set the following parameters (replace the login name, the password, the IP address and the Repository by your QC settings):
Field Description
authentication You can authenticate to QC using two methods:
  • use specific username and password (specified below)
  • use each user's XStudio credentials (the one used to log in XStudio
    Note: if you have LDAP/Active Directory enabled, then this would be the directory's user credentials and it would act as a SSO (Single sign-on).
username Username of a full-access QC account able to see all the defects you wish to retrieve
For instance:
user1
password Password associated to the username
For instance:
user1_password
url pattern This indicates the URL to use with your QC instance to edit a bug.
The URL must include the tag 'bug_id' that will be dynamically replaced by the id of the bug to be displayed/edited
For instance:
td://my_project.my_domain.qc11.acme.fr/qcbin/DefectsModule-000000004243046514?EntityType=IBug&EntityID=bug_id
url new bug This indicates the URL to use with your QC instance to create a new bug.
For instance:
td://my_project.my_domain.qc11.acme.fr/qcbin/Defects?Action=createDefect
url server This indicates the URL of your QC's REST API server.
For instance:
http://qc11.acme.fr/qcbin
filter Projects The list of domains and projects. Ids must be provided this way 'Domain1:Project1;Domain2:Project2;...;DomainN:ProjectN'
For instance:
DOMAIN1:First_project;DOMAIN1:Second_project;DOMAIN2:Another_project
When left empty, issues from all domains and projects are retrieved.
filter issue types Not used, for bug-tracking only the type "Defect" will be used
filter status The list of status that you wish to filter separated by ';' characters
For instance: Resolved;Open
When left empty, issues with any status are retrieved.
Accept ANY TLS/SSL certificate If you connect to your QC server using a SSL connection and you trust the network, just check this checkbox to accept any certificate.
Note that if you do so and if your environment is not safe, you're subject to a man-in-the-middle attack.
For more information on this, check the Secure connections chapter.
Certificate (needed only with https URL) If you connect to your QC server using a SSL connection (https:// url), you'll need to copy here the server's certificate.
For more information on this, check the Secure connections chapter.

The login and password provided will be used to authenticate to the QC server.
The keywords project_id and bug_id are dyamically replaced by XStudio when necessary.

Both-way integration

JIRA

If you configured XStudio as described above, you have what we call a single-way integration with JIRA.
This means that:
  • you can see all the JIRA issues in XStudio's Requirements and/or Bugs trees
  • you can see all the JIRA issues linked with XStudio items in XStudio's GUI
  • you can create/update JIRA issues from XStudio:
    • either asynchronously (redirecting to JIRA appropriate URL)
    • or synchronously (using integrated GUI)

In addition to this, if you want to view/access XStudio items linked with your JIRA issues from JIRA, then you'll need to install our JIRA app on your JIRA. This is an easy setup as you'll see in the procedure below.

Benefits

When our JIRA app is installed on your JIRA instance, you'll get an additional XStudio Tests tab in the Activity section of each issue.
For bugs, the panel in this new tab includes 6 sections showing:
  • All the Tests that detected the selected issue
  • All the Test Campaigns that detected the selected issue
  • All the Sessions (campaign's execution instances) in which the selected issue has been observed
  • All the Exploratory Sessions where the selected issue has been observed
  • All the SUTs impacted by this issue
  • All the Requirements impacted by this issue

For requirements, the panel will include 3 sections showing:
  • All the SUTs covered by the selected issue
  • All the Tests verifying the selected issue
  • All the Bugs that are impacting the selected issue

All the items are clickable and redirect the user to the item in XStudio.


data

Compatibility matrix

You need to know which version of our JIRA app is appropriate for you.
Indeed, it will depends from which type of JIRA (JIRA Server or JIRA Cloud) and which version of XStudio you're using.
There have been many changes in Atlassian strategy, APIs and recommended frameworks so the following must be read carefully.
Breaking News: Atlassian has just announced they stop selling JIRA Server license, hence we've decided to not maintain anymore our JIRA app for JIRA Server. It is still available but we do not support it anymore.

As a result, here are the options you have:

XStudio Versions
<= 4.1sp10 >= 4.1sp11
JIRA Cloud
(Atlassian's Connect API)
Not Supported
(Atlassian deprecation)
Three ways to install it:
- From the Atlassian Marketplace (using our public Connect app server)
- Manually - with your own private Connect app server (Download)
- Manually - with our public Connect app server
JIRA Server & JIRA Data-center
(Atlassian's legacy API)
Not maintained anymore as Atlassian stopped JIRA Server.
However, you can still install the old legacy version if you wish.
Two ways to install it:
- From the Atlassian Marketplace
- Manually (Download)
Not maintained anymore as Atlassian stopped JIRA Server.
Not Supported

Install from Atlassian Marketplace our JIRA Connect app

XStudio's JIRA Connect app is available directly in the Atlassian Marketplace: XStudio Integration for JIRA Cloud.
Atlassian also provides an Installation section.

  • Log into your JIRA instance as an admin
  • Open the Apps menu and select Manage your apps
    manage apps

  • Click Find new apps from the left-hand side of the page
  • Search for "XStudio"
    find xstudio

  • Select XStudio integration for Jira Cloud and click Get app
    open xstudio

  • Confirm the installation by clicking on Get it now
    get xstudio

  • After a few seconds, the XStudio integration for Jira Cloud app is confirmed to be installed
  • Click Manage apps from the left-hand side of the page and select XStudio integration for Jira Cloud
    check xstudio

  • Click on Configure
    configuration

    The configuration panel must be provided with the following information:
    Field Description
    Requirement Mapping Which issue types in JIRA are considered as requirements in XStudio.
    For instance, New Feature, Improvement and Epic
    Bug Mapping Which issue types in JIRA are considered as bugs in XStudio.
    For instance, Bug
    XStudio Base-URL The URL of the XStudio's JIRA app front-end.
    If you're using XStudio on premises:
    https://<your xstudio domain>/xqual/plugins/jira
    More specifically, if you're using XStudio Cloud:
    https://<company-name>-prod1.myxqual.com/xqual/plugins/jira
    Username the username used to fetch data from the XStudio (this account must exists in XStudio)
    Password The password corresponding to the username above
    Show inline If ticked, all the data will be displayed embedded in JIRA's interface (for security reasons, it requires a XStudio https URL though).
    If not ticked, a separate page is opened in the browser

Install manually our JIRA Connect app

If you want to install our JIRA Connect app manually, you need to use a Connect app server. You can either host it yourself (for more control) or use our global public server.

Install your own private Connect app server

  • Download the latest version of the JIRA Connect App Server from our download section
  • Remember the version that you downloaded (i.e. "6")
  • Create a directory jira-xstudio-connect-plugin-<version> under the webapps folder on your XStudio server
  • Unzip the package
  • Copy the content in the newly created folder jira-xstudio-connect-plugin-<version> on your XStudio server
  • You need to configure your Tomcat so that it match Atlassian requirements in terms of security.
    Only TLSv1.2 should be enabled (TLSv1.0 and TLSv1.1 must be forbidden)
    Check your Tomcat's documentation for more details. Most of the time, you'll just need to add in your Tomcat's 8443 connector (in server.xml) something similar to:
    <Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
        port="8443" maxThreads="150"
        scheme="https" secure="true" SSLEnabled="true"
        keystoreFile="your_jks_file_path"
        keystorePass="you_keystore_password"
        clientAuth="false"
        sslProtocol="TLSv1.2"
        sslEnabledProtocols="TLSv1.2"
        useServerCipherSuitesOrder="true"
        ciphers="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_DHE_RSA_WITH_AES_128_GCM_SHA256,TLS_DHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA256,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,SSL_RSA_WITH_3DES_EDE_CBC_SHA">
    </Connector>


    HSTS should be enabled and X-Frame-Options should be authorized
    Check your Tomcat's documentation for more details. Most of the time, you'll just need to add a new filter in your Tomcat's web.xml similar to:
    <filter>
      <filter-name>httpHeaderSecurity</filter-name>
      <filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</filter-class>
      <async-supported>true</async-supported>
      <init-param>
        <param-name>hstsEnabled</param-name>
        <param-value>true</param-value>
      </init-param>
      <init-param>
        <param-name>hstsMaxAgeSeconds</param-name>
        <param-value>31536000</param-value>
      </init-param>
      <init-param>
        <param-name>hstsIncludeSubDomains</param-name>
        <param-value>true</param-value>
      </init-param>
      <init-param>
        <param-name>antiClickJackingEnabled</param-name>
        <param-value>false</param-value>
      </init-param>
    </filter>
    <filter-mapping>
      <filter-name>httpHeaderSecurity</filter-name>
      <url-pattern>/*</url-pattern>
      <dispatcher>REQUEST</dispatcher>
    </filter-mapping>

  • Restart Tomcat (for this specific service, you must use a Tomcat version >= 8.5, ideally 9)
  • Your XStudio server should look like this:
    connect server

Once this is done, you should be able to browse this url:
<your xstudio server>/jira-xstudio-connect-plugin-<version>/atlassian-connect.json
You should get a atlassian-connect.json file (probably just displayed in the page by your browser). Check this file contains correct path to this service.

Use our public Connect app server

You have nothing to do in this case.
Just check the service is up and running by browsing this url:
https://xqual-plugin-prod1.myxqual.com/jira-xstudio-connect-plugin-<version>/atlassian-connect.json.
i.e. https://xqual-plugin-prod1.myxqual.com/jira-xstudio-connect-plugin-6/atlassian-connect.json
You should get a atlassian-connect.json file (probably just displayed in the page by your browser). Check this file contains correct path to this service.

Installation

  • Log into your JIRA instance as an admin
  • Open the Apps menu and select Manage your apps
    manage apps

  • Click on the Upload app link
    upload

  • Provide the URL to the atlassian-connect.json file (served by the Connect App server we talked about above)
    i.e. https://xqual-plugin-prod1.myxqual.com/jira-xstudio-connect-plugin-6/atlassian-connect.json

    atlassian connect

  • After a few seconds, the XStudio integration for Jira Cloud app is confirmed to be installed
    upload

  • Click on Configure
    configuration

    The configuration panel must be provided with the following information:
    Field Description
    Requirement Mapping Which issue types in JIRA are considered as requirements in XStudio.
    For instance, New Feature, Improvement and Epic
    Bug Mapping Which issue types in JIRA are considered as bugs in XStudio.
    For instance, Bug
    XStudio Base-URL The URL of the XStudio's JIRA app front-end.
    If you're using XStudio on premises:
    https://<your xstudio domain>/xqual/plugins/jira
    More specifically, if you're using XStudio Cloud:
    https://<company-name>-prod1.myxqual.com/xqual/plugins/jira
    Username the username used to fetch data from the XStudio (this account must exists in XStudio)
    Password The password corresponding to the username above
    Show inline If ticked, all the data will be displayed embedded in JIRA's interface (for security reasons, it requires a XStudio https URL though).
    If not ticked, a separate page is opened in the browser

Install from Atlassian Marketplace our JIRA Legacy app

XStudio's JIRA Legacy app is available directly in the Atlassian Marketplace: XStudio JIRA Integration.
Atlassian also provides an Installation section.

  • Log into your JIRA instance as an admin
  • Open the Apps menu and select Manage your apps
    manage apps

  • Click Find new apps from the left-hand side of the page
  • Search for "XStudio"
  • Select XStudio JIRA Integration and click Get app
  • Confirm the installation by clicking on Get it now
  • After a few seconds, the XStudio JIRA integration app is confirmed to be installed
  • Click Manage apps from the left-hand side of the page and select XStudio JIRA integration
    check xstudio

  • Click on Configure The configuration panel must be provided with the following information:
    Field Description
    Requirement Mapping Which issue types in JIRA are considered as requirements in XStudio.
    For instance, New Feature, Improvement and Epic
    Bug Mapping Which issue types in JIRA are considered as bugs in XStudio.
    For instance, Bug
    REST Base-URL The URL of the REST API of your XStudio server.
    If you're using XStudio on premises:
    https://<your xstudio domain>/xqual/api
    More specifically, if you're using XStudio Cloud:
    https://<company-name>-prod1.myxqual.com/xqual/api
    XStudio Base-URL The URL of the XStudio's JIRA app front-end.
    If you're using XStudio on premises:
    https://<your xstudio domain>/xqual/plugins/jira
    More specifically, if you're using XStudio Cloud:
    https://<company-name>-prod1.myxqual.com/xqual/plugins/jira
    Username the username used to fetch data from the XStudio (this account must exists in XStudio)
    Password The password corresponding to the username above
    Show inline If ticked, all the data will be displayed embedded in JIRA's interface (for security reasons, it requires a XStudio https URL though).
    If not ticked, a separate page is opened in the browser

Install manually our JIRA Legacy app

If you don't have access to the Atlassian Marketplace (i.e. no internet acces) you can also install manually our JIRA Legacy app.

  • Log into your JIRA instance as an admin
  • Open the Apps menu and select Manage your apps
    manage apps

  • Click on the Upload app link
    upload

  • Provide the JIRA Legacy app jar file
    You can download the latest version here: JIRA Legacy app v6

    upload jar

  • After a few seconds, the XStudio JIRA integration app is confirmed to be installed
  • Click Manage apps from the left-hand side of the page and select XStudio JIRA integration
    check xstudio

  • Click on Configure The configuration panel must be provided with the following information:
    Field Description
    Requirement Mapping Which issue types in JIRA are considered as requirements in XStudio.
    For instance, New Feature, Improvement and Epic
    Bug Mapping Which issue types in JIRA are considered as bugs in XStudio.
    For instance, Bug
    REST Base-URL The URL of the REST API of your XStudio server.
    If you're using XStudio on premises:
    https://<your xstudio domain>/xqual/api
    More specifically, if you're using XStudio Cloud:
    https://<company-name>-prod1.myxqual.com/xqual/api
    XStudio Base-URL The URL of the XStudio's JIRA app front-end.
    If you're using XStudio on premises:
    https://<your xstudio domain>/xqual/plugins/jira
    More specifically, if you're using XStudio Cloud:
    https://<company-name>-prod1.myxqual.com/xqual/plugins/jira
    Username the username used to fetch data from the XStudio (this account must exists in XStudio)
    Password The password corresponding to the username above
    Show inline If ticked, all the data will be displayed embedded in JIRA's interface (for security reasons, it requires a XStudio https URL though).
    If not ticked, a separate page is opened in the browser

SSL/TLS connections

If you need to connect to a third-party bug-tracking server that uses SSL/TLS, you can provide the server certificate in the settings so that the connection can be established automatically.
For more details, please refer to the secure connections section of the documentation.