連結類型項目參考
您可以使用不同的連結類型,在不同的工作項目類型 (WIT) 之間構成連結關聯性。 有三種連結類型的分類:系統定義、流程範本定義,以及使用者定義。 預設流程範本中定義的連結類型,支援在測試管理 WIT 之間的連結關聯性。
每個連結類型都會定義在建構工作項目之間的連結時,所使用的連結標籤、拓撲類型以及限制。 例如,父子式連結類型會定義兩個標籤 (父代和子系),支援階層式或樹狀拓撲,並避免在工作項目之間建立了循環參考。
若要自訂或建立連結類型,請使用 witadmin importlinktype,匯入連結類型定義檔到裝載 Team 專案的專案集合。
語法結構
您可以定義其他連結類型,方法是將它們加入為 Team 專案集合所定義的連結類型。 您可以根據連結類型定義結構描述所提供的結構,定義用於流程中的有效連結類型。 連結類型由連結類型 XML 檔案中的下列 XML 語法所定義:
<LinkTypes>
<LinkType ReferenceName="LinkTypeName" ForwardName="ForwardName" ReverseName="ReverseName" Topology="TopologyType" />
</LinkTypes>
下表中的描述適用於上述語法:
屬性 |
描述 |
---|---|
ReferenceName |
連結類型的名稱。 當您在兩個工作項目之間建立連結時,會在內部使用此名稱。 |
ForwardName |
來源工作項目上的連結名稱。 當您將連結加入來源工作項目時,即會顯示此名稱。 |
ReverseName |
目標工作項目上的連結名稱。 目標工作項目上的連結清單出現時,即會顯示此名稱。 |
TopologyType |
指定 DirectedNetwork、Network、Tree 或 Dependency 拓撲。 前三個拓撲具有方向性,因此您可以使用它們來定義附屬或循序關聯性。 您可以使用 Network 來定義對等項目或沒有隱含附屬項目之間的關聯性。 |
連結方向性取決於對 ForwardName 及 ReverseName 屬性所進行的指派。 如果您建立自訂連結,並將相同的名稱指派給正向名稱和反向名稱,則應該將連結類型設定為 Network,因為它是唯一不具方向性的拓撲。
需求
LINKTYPES 是一組由 Team 專案集合所儲存和使用的 LINKTYPE 元素。
每個連結類型都具有一個參考名稱和兩個選擇性易記名稱,或一些名稱標籤,而這些名稱在專案集合中不得重複。 每個連結類型名稱都必須符合下列需求:
名稱可以多達 254 個 Unicode 字元
名稱不得為空白。
名稱的開頭與結尾不可以有空格。
名稱不可包含反斜線 (\) 字元。
名稱不可包含兩個連續的空白字元。
系統定義的連結類型
下表摘要說明系統定義的連結類型。 您無法修改這些連結類型。
正向名稱 |
反向名稱 |
參考名稱 |
拓撲 |
---|---|---|---|
後置項 |
前置項 |
System.LinkTypes.Dependency |
相依性 |
子系 |
父代 |
System.LinkTypes.Hierarchy |
Tree |
相關 |
相關 |
System.LinkTypes.Related |
網路 |
此外,有一些其他連結類型可用於將工作項目連結至 Team 專案中的其他物件或其他元素 (例如,網頁或網路位置)。 例如,Storyboard 連結類型會將工作項目連結至網路共用上的分鏡腳本或任何檔案。 如需詳細資訊,請參閱連結工作項目以支援可追蹤性.
流程範本定義的連結類型
當您使用其中一個 TFS 提供的預設流程範本來建立 Team 專案時,下列連結類型會加入您的 Team 專案。 這些連結類型特別設計用來支援與 Team Foundation 和 Microsoft Test Manager 中追蹤工作項目互動。
正向名稱 |
反向名稱 |
連結類型參考名稱 |
拓撲 |
---|---|---|---|
影響 (請參閱第 1 點) |
影響者 |
Microsoft.VSTS.Common.Affects |
相依性 |
參考者 (請參閱第 2 點) |
參照 |
Microsoft.VSTS.TestCase.SharedParameterReferencedBy |
相依性 |
測試者 |
測試 |
Microsoft.VSTS.Common.TestedBy |
相依性 |
測試案例 |
共用步驟 |
Microsoft.VSTS.TestCase.SharedStepReferencedBy |
相依性 |
備註
影響/影響者連結類型會將變更要求連結至需求。 這個連結類型只會加入利用 CMMI 流程範本所建立的 Team 專案。
參考者/參考連結類型會連結共用參數與測試案例,以支援使用不同的資料執行測試。 當您使用 [設定功能精靈] 更新 Team 專案,或根據 TFS 2013.2 流程範本或更新版本建立 Team 專案時,這個連結類型會加入 Team 專案。
連結類型定義檔會在 Template.zip 檔的 WorkItem Tracking\LinkTypes 資料夾中定義。 Microsoft.VSTS.Common.TestedBy 連結類型的下列定義,則定義於 TestedBy.xml 檔中:
<?xml version="1.0" encoding="utf-8"?>
<LinkTypes>
<LinkType ReferenceName="Microsoft.VSTS.Common.TestedBy" ForwardName="Tested By" ReverseName="Tests" Topology="Dependency" />
</LinkTypes>
當您使用相對應的流程範本建立 Team 專案時,連結類型定義會滙入專案集合。
連結限制與拓撲
下表中所說明的拓撲類型,可判斷使用每個連結類型時所適用的限制。
拓撲類型 |
圖例 |
---|---|
網路:您可以使用網路連結,在工作項目之間建立較不嚴格的基本關聯性。 兩方端點上的連結都相同。 可以使用循環關聯性。 使用範例:使用網路連結 (例如,相關) 來記錄可能共用相依性的兩個功能之間的關聯性。 |
|
有向網路:您可以使用有向網路連結,在指出方向性的工作項目之間,建立關聯性。 端點上的連結名稱都不相同。 可以使用循環關聯性。 使用範例:使用有向網路連結,可記錄可能共用相依性,但您希望以某種形式彼此區分的兩個功能之間的關聯性。 |
|
相依性:您可以使用相依性連結,在具有方向性的工作項目之間,建立關聯性,並限制循環關聯性。 端點上的連結名稱都不相同。 在圖例中,您無法對包含相同工作項目之相依連結關聯性的工作項目,建立相依的連結。 使用範例:使用相依性連結,可記錄必須完成才可符合使用者需求的功能。 |
|
樹狀結構:您可以使用樹狀連結,在工作項目之間建立多層級的階層式關聯性。 樹狀連結支援多層級階層式視圖,同時具有方向性且限制循環關聯性。 端點上的連結名稱都不相同。 樹狀連結是 [工作項目的樹狀結構] 查詢所支援的唯一一種連結類型。 在圖例中,您無法將兩個父代指派給某個子系。 使用範例:使用樹狀連結,可記錄小組中必須完成才可提供功能的工作與子工作。 |
連結類型結構描述定義
下列程式碼列出連結類型的結構描述定義:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema
id="WorkItemLinkTypeDefinition"
elementFormDefault="unqualified"
attributeFormDefault="unqualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="https://schemas.microsoft.com/VisualStudio/2005/workitemtracking/WorkItemLinkTypeDefinition.xsd"
xmlns="https://schemas.microsoft.com/VisualStudio/2005/workitemtracking/WorkItemLinkTypeDefinition.xsd"
xmlns:mstns="https://schemas.microsoft.com/VisualStudio/2005/workitemtracking/WorkItemLinkTypeDefinition.xsd"
xmlns:typelib="https://schemas.microsoft.com/VisualStudio/2005/workitemtracking/typelib"
version="1.0">
<xs:import namespace="https://schemas.microsoft.com/VisualStudio/2005/workitemtracking/typelib"/>
<xs:simpleType name="TopologyTypes">
<xs:restriction base="xs:string">
<xs:enumeration value="Network" />
<xs:enumeration value="DirectedNetwork" />
<xs:enumeration value="Dependency" />
<xs:enumeration value="Tree" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="LinkTypeType">
<xs:attribute name="ReferenceName" type="typelib:ReferenceName" use="required" />
<xs:attribute name="Topology" type="TopologyTypes" use="optional" />
<xs:attribute name="ForwardName" type="typelib:FriendlyName" use="optional" />
<xs:attribute name="ReverseName" type="typelib:FriendlyName" use="optional" />
</xs:complexType>
<xs:complexType name="LinkTypesType">
<xs:sequence>
<xs:element name="LinkType" type="LinkTypeType" minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:element name="LinkTypes" type="LinkTypesType" />
</xs:schema>
問與答
問:如何加入自訂連結類型?
**答:**根據此主題中所提供的內容,定義 XML 定義檔,然後使用 witadmin importlinktype,匯入連結類型定義檔至裝載 Team 專案的專案集合。
問:用以將測試案例連結至測試套件,以及將測試套件連結至測試計劃的連結類型為何?
**答:**您可以使用 Team Web Access 或 Test Manager,檢視為測試套件所定義的測試案例,以及為測試計劃所定義的測試套件。 但是,這些物件不會透過連結類型彼此連結。