|
|
|
|
|
|
|
|
|
|
|
|
|
|
VersionOne Community > Downloads > Integration Documentation > QualityCenter
|
|
|
VersionOne Quality Center Integration
The VersionOne Quality Center Integration (V1QualityCenter) allows an organization to leverage its investment in Quality Center as part of an integrated platform for agile development. This integration affords agile teams the ability to:
-
Create Test in Quality Center from Test defined in VersionOne
-
Update the status of a VersionOne Test from the corresponding Quality Center Test
-
Create Defects in VersionOne from Defects in Quality Center
-
Mark Quality Center Defects as Fixed when the corresponding VersionOne Defect is closed
-
Operating System — Windows 2003, 2008
-
Framework — Microsoft .Net 2.0 SP1
-
VersionOne — Release 8.3 and above
-
Quality Center — Release 9.1.0.4353 — 9.2.0.4862
These installation instructions assume that Quality Center is already installed, configured, and working properly.
1. Determine Install Location
V1QualityCenter can be installed on any server with access network access to both your VersionOne installation and Quality Center. Exact placement should be determined by your internal software management requirements. The integation server must meet the System Requirements stated above.
Download V1QualityCenter using the link above and extract it into a folder of your choice.
Configuration for the Quality Center Integration is a 3 step process.
Open up the command prompt, navigate to your installation folder, and run the following command: VersionOne.ServiceHost.exe
If you have configured your system properly, you should see several [Info] messages followed by a [Startup] message.
-
To test pushing VersionOne Tests to Quality Center
-
In VersionOne
-
Select a project you configured in the TestPublishProjectMap section of VersionOne.ServiceHost.exe.config
-
Set the owner of a test to the "Quality Center" user
-
In Quality Center
-
Connect to the project you expected the test to appear
-
Verify that the test appears in the Test Plan section under the folder you configured in the TestFolder section of VersionOne.ServiceHost.exe.config
-
To test Updating VersionOne Test Status with values from Quality Center
-
In Quality Center
-
Assign the test created from VersionOne to a TestSet
-
Change the status of this test
-
In VersionOne
-
Verify that the test status changes
-
To test pushing Quality Center Defects to VersionOne
-
In Quality Center
-
Assign a Defect to the "Version One" user
-
Set the Defect State to "New"
-
Verify that the defect state changes to Open
-
In VersionOne
-
Verify that the defect is in the backlog for the VersionOne project specified in QCProjects map in VersionOne.ServiceHost.exe.config
-
To test closing a defect in VersionOne that was created from a Quality Center defect
-
In VersionOne
-
Close a Defect that was created from Quality Center
-
In Quality Center
-
Verify that the defect status is set to 'Fixed'
Shut down the service host by pressing "Q" in the console window.
6. Install as a Windows Service
Run the following command from the console window: VersionOne.ServiceHost.exe --install
This command installs the service so it will will run under the account NT AUTHORITY\Local Service. Local Service must be given access privileges to the directory where the V1QualityCenter was installed so it can store its state and write to log files. Follow the steps below to change the security on the installation directory:
-
Right click the installation folder from Windows Explorer.
-
Select "properties".
-
Select the "Security" tab.
-
Click the "Add" button.
-
Enter "Local Service" and click "OK".
-
Click the "Allow" checkbox for the "Full Control" row .
-
Click "OK" to save the changes.
For more information on how the Windows Service is configured see Service Host Configuration.
Quality Center Configuration
This section describes how to configure Quality Center for use with VersionOne
-
Create a User Field on Test for storing the VersionOne identifier (Tools | Customize | Customize Project Entities).
-
Select or Create a user in Quality Center to represent the VersionOne system. This user must have sufficient rights to accept and modify defects. Additionally, this user must have access to all Quality Center projects that contain defects that will be pushed to VersionOne
-
Add "Quality Center" to the list of valid Source
-
Select or Create a user to represent the Quality Center system. This user must have sufficient rights to create Defects, and accept and modify Tests in VersionOne. Additionally, this user must have access to all VersionOne projects that contain Test that will be pushed to Quality Center and Defects. The default filters expect this user to be Quality Center.
-
Optional: The integration needs a text field in VersionOne store the Quality Center identifier. By default this is the Reference field. If you are already using this field, you'll need to create a custom text field and note the name
ServiceHost Configuration
The configuration file for the Quality Center Integration is VersionOne.ServiceHost.exe.config. This section describes the elements in the ServiceHost configuration file.
Table 1. QualityCenterService Element
| Name |
Description |
| Connection |
| Name |
Description |
| ApplicationUrl |
Quality Center Application URL |
| Username |
Valid Quality Center Username. |
| Password |
Password for specified user | |
| QCProjects |
A Collection of Project elements that map to VersionOne Projects. Each element has an ID that must be declared in the TestPublishProjectMap element.
Table 2. Project Element
| Name |
Description |
| Domain |
Quality Center Domain Name |
| Project |
Quality Center Project Name |
| TestFolder |
Name of the folder in Quality Center where test are created. If this folder does not exist it will be created |
| VersionOneIdField |
Quality Center custom field that will hold the VersionOne Display ID |
| VersionOneProject |
The name of the VersionOne project that maps to this Quality Center Project |
|
| DefectFilters |
Quality Center Search Criteria used to find Defects to move into VersionOne
Table 3. DefectFilter
| Name |
Description |
| FieldName |
Quality Center Field Name |
| FieldValue |
Value to look for in specified Field |
|
| CreateStatusValue |
Quality Center Defect Status value to set after a Defect is created in VersionOne |
| CloseStatusValue |
Quality Center Defect Status value to set after a VersionOne Defect is closed |
| SourceFieldValue |
VersionOne 'Source' value to use when Defect was created from Quality Center artifact |
Example 1. QualityCenterService Element
<QualityCenterService class="VersionOne.ServiceHost.QualityCenterServices.QualityCenterHostedService, VersionOne.ServiceHost.QualityCenterServices">
<!-- Connection Information -->
<Connection>
<ApplicationUrl>http://192.168.36.52/qcbin/</ApplicationUrl>
<Username>alex_qc</Username>
<Password></Password>
</Connection>
<!-- Quality Center Projects Supported By This Instance -->
<QCProjects>
<!-- Each Project has an ID that must match an entry in the VersionOne Project Map (See TestPublishProjectMap below) -->
<Project id="CallCenter">
<!-- QC Domain for this project -->
<Domain>Default</Domain>
<!-- QC Project for this project -->
<Project>CallCenter</Project>
<!-- Name of folder for test creation, if it does not exist it will be created -->
<TestFolder>VersionOne</TestFolder>
<!-- QC Field used for holding the VersionOne Display ID (The ID you see in the Grid) -->
<VersionOneIdField>TS_USER_01</VersionOneIdField>
<!-- The name of the VersionOne project that maps to this QC Project -->
<VersionOneProject>Call Center</VersionOneProject>
</Project>
</QCProjects>
<!-- Quality Center Search Criteria to find Defects to move into VersionOne -->
<DefectFilters>
<!-- User the Defect is Assigned To-->
<DefectFilter>
<FieldName>BG_RESPONSIBLE</FieldName>
<FieldValue>VersionOne</FieldValue>
</DefectFilter>
<!-- Status of the Defect -->
<DefectFilter>
<FieldName>BG_STATUS</FieldName>
<FieldValue>New OR Reopen</FieldValue>
</DefectFilter>
</DefectFilters>
<!-- Quality Center change after a Defect is created in VersionOne -->
<CreateStatusValue>Open</CreateStatusValue>
<!-- Quality Center change after a VersionOne Defect is closed -->
<CloseStatusValue>Fixed</CloseStatusValue>
<!-- VersionOne 'Source' value to use when Defect was created from Quality Center artifact -->
<SourceFieldValue>Quality Center</SourceFieldValue>
</QualityCenterService>
Table 4. QCTestReadTimer Elements
| Name |
Description |
| Interval |
Number of milliseconds to wait between polls to the Quality Center system |
| PublishClass |
Do Not Change |
Example 2.
This example polls every 60 seconds <QCTestReadTimer disabled="0" class="VersionOne.ServiceHost.Core.Services.TimePublisherService, VersionOne.ServiceHost.Core">
<Interval>60000</Interval>
<PublishClass>VersionOne.ServiceHost.QualityCenterServices.QualityCenterReaderService+IntervalSync, VersionOne.ServiceHost.QualityCenterServices</PublishClass>
</QCTestReadTimer>
Table 5. DefectWriterService Elements
| Name |
Description |
| Settings |
| Name |
Description |
| ApplicationUrl |
VersionOne Application URL |
| Username |
Valid VersionOne Username. This user must have authority to create defects in the VersionOne projects being processed. |
| Password |
Password for specified user |
| APIVersion |
The minimum application version required for this hosted service. |
| IntegratedAuth |
False if using VersionOne native security, true is using Windows Integrated Security. If VersionOne is configured to use Windows Integrated Security, the account the service is running as must be a configured VersionOne user with a project role of Team Member or higher. Also, Username and Password should be empty if IntegratedAuth is true. |
| ExternalIdFieldName |
Name of VersionOne field that holds the ID of the Quality Center Defect. Must be a text field | |
Example 3.
<DefectWriterService disabled="0" class="VersionOne.ServiceHost.DefectServices.DefectWriterHostedService, VersionOne.ServiceHost.DefectServices">
<ExternalIdFieldName>Reference</ExternalIdFieldName>
<Settings>
<ApplicationUrl>http://v1host/VersionOne/</ApplicationUrl>
<Username>admin</Username>
<Password>admin</Password>
<APIVersion>7.2.0.0</APIVersion>
<IntegratedAuth>false</IntegratedAuth>
</Settings>
</DefectWriterService>
Table 6. V1TestService Element
| Name |
Description |
| Settings |
| Name |
Description |
| ApplicationUrl |
VersionOne Application URL |
| Username |
Valid VersionOne Username. This user must have authority to create defects in the VersionOne projects being processed. |
| Password |
Password for specified user |
| APIVersion |
The minimum application version required for this hosted service. |
| IntegratedAuth |
False if using VersionOne native security, true is using Windows Integrated Security. If VersionOne is configured to use Windows Integrated Security, the account the service is running as must be a configured VersionOne user with a project role of Team Member or higher. Also, Username and Password should be empty if IntegratedAuth is true. | |
| PassedOid |
The TestStatus asset Oid in VersionOne that indicates test a test succeeded |
| FailedOid |
The TestStatus asset Oid in VersionOne that indicates that a test failed |
| TestReferenceAttribute |
The cross-reference used to associate tests in VersionOne to test in the external test system ('Number' is the default, 'Reference' another option) |
| ChangeComment |
The change comment put into history for any modifications the service makes in VersionOne |
| DescriptionSuffix |
A suffix for the description of any defects that the service creates; Embedded Rich Text (HTML) is valid in this suffix |
| CreateDefect |
Indicates whether the TestWriterService should create defects when automated tests fail for closed tests in VersionOne. Valid values are:
-
All: creates a 'failed test' defect for any closed tests in the project
-
CurrentIteration: only creates a 'failed test' defect for closed tests within the current iteration
-
None: never creates defects |
| BaseQueryFilter |
Filter used when selecting VersionOne Test to push to Quality Center. This filter must include the attribute defined in TestReferenceAttribute |
| TestPublishProjectMap |
Contains a collection of V1Project elements that describe the VersionOne Projects that should be considered when publishing Test information.
Table 7. Attributes on the V1Project Element
| Name |
Description |
| Name |
Name of V1 project |
| IncludeChildren |
Should Child projects be considered |
The Inner Text for each V1Project Element defines a destination project name. The destination listener must know how to interpert this value. For Quality Center this is a Project entry in QCProjects.
|
Example 4. V1TestService
<V1TestService class="VersionOne.ServiceHost.TestServices.TestService, VersionOne.ServiceHost.TestServices">
<!-- VersionOne connection settings -->
<Settings>
<ApplicationUrl>http://localhost/VersionOne/</ApplicationUrl>
<Username>admin</Username>
<Password>admin</Password>
<APIVersion>6.5.0.0</APIVersion>
<IntegratedAuth>false</IntegratedAuth>
</Settings>
<!-- OIDs for passed and failed status. -->
<PassedOid>TestStatus:129</PassedOid>
<FailedOid>TestStatus:155</FailedOid>
<!-- Comments used when making changes -->
<ChangeComment>Updated by VersionOne.ServiceHost</ChangeComment>
<!-- Embedded Rich Text (HTML) is valid in this suffix -->
<DescriptionSuffix>Check the external test system for more details.</DescriptionSuffix>
<!-- Valid values are All, CurrentIteration, None -->
<CreateDefect>All</CreateDefect>
<!-- Field to set with test reference data -->
<TestReferenceAttribute>Reference</TestReferenceAttribute>
<!-- Base filter used when selecting tests to push to partner system -->
<!-- This filter must include the attribute defined in TestReferenceAttribute -->
<BaseQueryFilter>Reference='';Owners.Nickname='qc';Status.Name=''</BaseQueryFilter>
<!-- VersionOne projects that should be considered when publishing Test information -->
<TestPublishProjectMap>
<!-- Each Map entry specifies a V1 project to query and the name of that project in the partner system
Name - Name of V1 project
IncludeChildren - Should Child projects be considered
The Inner Text for each Map element defines the destination project name. The destination listener must know how to interpert this value
-->
<V1Project Name="Call Center" IncludeChildren="Y">CallCenter</V1Project>
</TestPublishProjectMap>
</V1TestService>
Table 8. V1TestReadTimer Elements
| Name |
Description |
| Interval |
Number of milliseconds to wait between polls to the VersionOne |
| PublishClass |
Do Not Change |
Example 5.
This example polls every 60 seconds <V1TestReadTimer disabled="0" class="VersionOne.ServiceHost.Core.Services.TimePublisherService, VersionOne.ServiceHost.Core">
<Interval>60000</Interval>
<PublishClass>VersionOne.ServiceHost.TestServices.TestReaderService+IntervalSync, VersionOne.ServiceHost.TestServices</PublishClass>
</V1TestReadTimer>
Copyright © 2008, VersionOne, Inc. All rights reserved. This document was generated 2008-10-15 18:43:52. |
|
|
|
|
|
|
 |
 |
 |
 |
|