使用程式碼變換和執行程式碼涵蓋範圍透視圖,分析和報告程式碼變換和程式碼涵蓋範圍
您可使用 SQL Server Analysis Services Cube 中的程式碼變換和回合涵蓋範圍檢視方塊從Visual Studio Team Foundation Server來報告軟體品質。 您可以使用這些檢視方塊,您可以檢視與在程式碼執行和範圍的變更程式碼在建置和測試回合所涵蓋的量值、維度和屬性。
這些檢視方塊是以您可以使用會報告程式碼變更並涵蓋範圍做為建置屬性、建置組件或平台、測試回合、變更集的關聯式資料表。 如需詳細資訊,請參閱程式碼變換資料表與回合涵蓋範圍資料表。
使用程式碼變換檢視方塊,您可以建立回答下列問題的報表:
|
|
您可以使用 Run Coverage 檢視方塊,您可以建立回答下列問題的報表:
注意事項
如果您的 Visual Studio Application Lifecycle Management (ALM) 資料倉儲使用的是 SQL Server Enterprise Edition,則 Cube 清單將包含 Team System 與一組檢視方塊。這些檢視方塊可對資料提供更深入的檢視,如此一來,您就不用捲動整個 Team System Cube 中的全部維度與量值群組。
|
本主題內容
範例:程式碼變換] 報表
程式碼變換測量
Run Coverage 測量
支援篩選的維度和屬性在 [程式碼變換檢視方塊和分類
支援篩選和分類的維度和屬性在回合涵蓋範圍檢視方塊
監視的程式碼變換和程式碼涵蓋範圍時的必要活動
範例:程式碼變換] 報表
您可以使用在 Excel 的樞紐分析圖報表,您可以建立經過一段時間後顯示程式碼變換的趨勢] 報表,類似下圖顯示的報表。
Microsoft Solutions Framework (MSF) v5.0 的流程範本會自動提供 Excel 中的程式碼變換] 報表。 如需詳細資訊,請參閱程式碼變換 Excel 報表。
回到頁首
選取和篩選樞紐分析欄位
您可以執行下列步驟來建立程式碼變換] 報表:
在 Excel 中,連接到給 Visual Studio Team Foundation Server的 Analysis Services Cube 的 SQL Server,並插入樞紐分析圖報表。
如需詳細資訊,請參閱在 Microsoft Excel 中建立 Visual Studio ALM 的報表。
以滑鼠右鍵按一下圖表上的 [變更圖表類型]],則 [區域], [堆疊區域]。
對於每個報表的篩選,請開啟下列欄位中的捷徑功能表,指定階層架構、週,或其他項目,然後將欄位設為 [報告篩選條件] 區域。
從 [Team 專案] 維度的 [Team 專案階層架構] 。
從 [工作項目] 維度的 [Work Item.Iteration Hierarchy] 。
從 [工作項目] 維度的 [Work Item.Area Hierarchy] 。
從 [日期] 維度的 [年週日] 。
在 [日期] 維度,展開 [其他欄位],並拖曳 [日期]、 [星期] 或 [月] 欄位會根據細微報告您如何使用的 [座標軸欄位 (類別)] 地區要產生。
將 [加入的程式行]、 [修改的程式行] 和 [刪除的程式行] 欄位從 [程式碼變換] 量值群組加入至 [值] 區域。 您必須分別將每個欄位。
回到頁首
程式碼變換測量
程式碼變換測量指定有多少變更會在您的專案所發生的事件。 一般而言,變換較高層級表示專案不穩定。 在產品週期初期或小組實作多項變更後,預期應該會有較高的變換率。 而到反覆項目結尾或發行之前,您應該預期變換層級降低,這表示您的專案較為穩定。
下表顯示在程式碼變換測量群組中描述測量。 您可以使用這些方法,您可以建立顯示的報表多少檔案的版本。 Team Foundation 版本控制 儲存,以及程式碼變更。 您可以依照檔案目錄、組建或簽入變更的小組成員進行分析度量資訊,然後,您可以判斷這些度量資訊隨著時間的變化。
如需可用於建置收集的類似度量資訊的詳細資訊,請參閱 使用組建透視圖分析和報告組建詳細資料和組建涵蓋範圍。
量值 |
描述 |
---|---|
程式碼變換的計數。 |
小組變更版本控制檔案的次數。 |
加入的程式行 |
小組加入維度之檔案的程式碼行數您指定。 |
刪除的程式行 |
小組自維度的檔案刪除指定的程式碼行數。 |
修改的程式行 |
程式碼行數您所指定的佇列時修改的持續期間。 |
變換總計 |
在 [程式碼變換的計算,如下所示:[加入的程式行] + [刪除的程式行 [+] 修改過的行]。 |
總行數。 |
說明如何在您指定檔案路徑階層架構的一部分的。 您也必須指定一個或多個組建表示執行這項作業的點或點。 如果您沒有指定一個或多個組建,則傳回 NULL。 程式行數是將組建類型與作業系統的特定組合之中已加入的程式行數與已刪除的程式行數彙總之後所計算出來的。
提示
永遠行量值會造成 OLAP 查詢為暫停。如果您的報表太長的時間來呈現,請考慮縮短變更集、組建、測試回合或日期範圍。
|
回到頁首
Run Coverage 測量
下表顯示在 Run Coverage 測量群組中描述測量。 您可以使用這些方法,您可以建立顯示程式碼範圍會在測試回合的測試所涵蓋的報表。 如需可用於建置收集的類似度量資訊的詳細資訊,請參閱 使用組建透視圖分析和報告組建詳細資料和組建涵蓋範圍。
量值 |
描述 |
---|---|
回合涵蓋範圍 |
有相關聯之程式碼涵蓋範圍統計資料的測試回合數。 |
執行報告 Coverage 區塊 |
區塊數在回合涵蓋的所有測試。 不過,跨不同測試的涵蓋範圍可能會重疊。 |
執行未涵蓋的區塊涵蓋範圍 |
不是由執行的任何測試所涵蓋的區塊數目。 不過,跨不同測試的涵蓋範圍可能會重疊。 |
回合涵蓋範圍未涵蓋的行。 |
行數回合涵蓋的所有測試。 不過,跨不同測試的涵蓋範圍可能會重疊。 |
執行未涵蓋的程式碼行涵蓋範圍 |
不是由執行的任何測試所涵蓋的程式行數。 不過,跨不同測試的涵蓋範圍可能會重疊。 |
執行部分涵蓋的程式碼行涵蓋範圍 |
在回合涵蓋部分測試的行數。 不過,跨不同測試的涵蓋範圍可能會重疊。 |
回到頁首
支援篩選的維度和屬性在 [程式碼變換檢視方塊和分類]
下表描述維度,而且在屬性的程式碼變換檢視方塊。 這些屬性來補充 [Team 專案] 和 [日期] 共用維度, 使用共用維度搭配使用。 描述。 您可以彙總隨著這些屬性中的測量。
維度 |
屬性 |
描述 |
---|---|---|
建置 |
組建定義名稱 |
指派組建定義執行組建的名稱。 |
build id |
指派組建的編號。 每當特定組建定義執行,則這個屬性會由 1. 加入。 |
|
組建名稱 |
唯一識別某個組建的名稱或運算式。 如需詳細資訊,請參閱使用組建編號。 |
|
建置開始時間 |
日期和時間,在建置開始時。 |
|
組建類型 |
原因執行組建 (Build)。 組建類型與用於組建定義的觸發程序。 Team Foundation Server 支援下列的組建:手動、連續 (由每個簽入觸發)、正在復原 (累積簽入,直到前一次組建完成)、閘道簽入和排程。 如需詳細資訊,請參閱指定組建觸發程序和原因。 |
|
置放位置 |
已完成之組建的統一資源定位器 (URL) (URL)。 URL 指定 Web 瀏覽器會設定網際網路資源的通訊協定。 每個 URL 包含組建詳細資料所在的伺服器名稱。 您也可以包含資源的路徑。 |
|
版本控制變更集 |
Changeset ID |
指派到變更集包括檔案的數值變更。 |
簽入者 |
簽入變更集的小組成員使用者名稱。 |
|
描述 |
與變更集關聯的簽入註解。 |
|
原則覆寫註解。 |
提供的註解,在原則覆寫。 如果原則未使用這個變更集覆寫,這個欄位是空白的。 |
|
版本控制檔案 |
版本控制 File.File 階層架構 |
原始程式檔的完整網路路徑。 |
版本控制 File.File 副檔名 |
原始程式檔的副檔名。 |
|
工作項目 |
工作項目和其他項目 |
如需詳細資訊,請參閱使用工作項目透視圖分析和報告工作項目與測試案例資料。 |
回到頁首
支援篩選和分類的維度和屬性在回合涵蓋範圍檢視方塊
下表顯示在 Run Coverage 遠近景深描述維度的屬性。 這些屬性來補充 使用共用維度搭配使用。 本主題中稍後說明的 [Team 專案] 和 [日期] 共用維度。 您可以彙總隨著這些屬性中的測量。
注意事項 |
---|
在您可以使用 [組件] 或 [組建類別] 屬性之前,測試小組必須指定以及將測試結果發行至資料存放區的 Team Foundation Server。如需詳細資訊,請參閱 管理組建和測試時的必要活動 本主題後面的。 |
維度 |
屬性 |
描述 |
---|---|---|
Assembly |
Assembly |
(僅限發行的測試結果) 應用程式之程式碼的名稱當做組建的一部分,會測試。 如需詳細資訊,請參閱在建置流程中執行測試。 |
建置 |
組建定義名稱 |
指派組建定義執行組建的名稱。 |
build id |
指派組建的編號。 每當特定組建定義執行, [組建 ID] x 1. 加入。 |
|
組建名稱 |
唯一識別某個組建的名稱或運算式。 如需詳細資訊,請參閱使用組建編號。 |
|
建置開始時間 |
日期和時間,在建置開始時。 |
|
組建類型 |
原因執行組建 (Build)。 組建類型與用於組建定義的觸發程序。 Team Foundation Server 支援下列的組建:手動、連續 (由每個簽入觸發)、正在復原 (累積簽入,直到前一次組建完成)、閘道簽入和排程。 如需詳細資訊,請參閱指定組建觸發程序和原因。 |
|
置放位置 |
已完成之組建的統一資源定位器 (URL) (URL)。 URL 指定 Web 瀏覽器會設定網際網路資源的通訊協定。 URL 也包含資源所在的伺服器名稱。 您也可以指定資源的路徑。 |
|
組建類別 |
組建類別 |
(僅限發行的測試結果) 為測試回合時,一併將分類指派給一組完整建置發行的名稱。 例如,您可以使用組建類別指定為 Beta 版或最終版本。 如需詳細資訊,請參閱發行測試結果的命令列選項。 |
組建平台 |
組建平台 |
(僅限發行的測試結果) 端對端機器平台 (非桌面) 組建進行該名稱發行為測試回合的一部分 (例如, [x86] 或 [任何 CPU])。 如需使用此屬性的範例,請參閱組建摘要報表。 如需詳細資訊,請參閱發行測試結果的命令列選項。 |
測試回合 |
完成日期階層架構中在週或月之前 建立日期階層架構中在週或月之前 |
限制會根據日期的維度,測試回合建立且已完成。 如需詳細資訊,請參閱在 Analysis Services Cube 中使用共用維度。 |
回到頁首
監視的程式碼變換和程式碼涵蓋範圍時的必要活動
若要建立包含有用的資料的組建報表,小組成員必須執行下列活動來管理組建和測試:
設定建置系統: 若要使用 Team Foundation Build,小組必須建置系統。
如需詳細資訊,請參閱Configure Your Build System。
建立組建定義: 小組必須至少會建立一個組建定義。 小組可以建立多個定義,每一個都可以執行於不同平台或不同的組態產生程式碼。
如需詳細資訊,請參閱建立組建定義。
(建議) 定期執行組建。 小組可以自動執行建置它們在每次簽入之後或指定的時間間隔。 使用排程觸發程序,小組可以同時自動執行其指定的組建或時間和日期或日期。 如需詳細資訊,請參閱指定組建觸發程序和原因與執行、監視和管理組建。
(選擇性的) 定義要隨組建自動執行的測試: 做為組建定義的一部分,小組可以定義自動化測試當做組建的一部分,並分析程式碼的影響在測試變更。
如需詳細資訊,請參閱在建置流程中執行測試。
設定測試來收集程式碼涵蓋範圍資料: 若要在報表中顯示程式碼涵蓋範圍資料,小組成員必須設定測試來收集該資料。
重要
要收集程式碼涵蓋範圍資料,小組必須已安裝 Visual Studio Premium 或 Visual Studio Ultimate 電腦具有組建代理程式的。如需詳細資訊,請參閱部署和設定組建代理程式。
如需詳細資訊,請參閱使用測試設定來設定程式碼涵蓋範圍的方式已被取代與How to: Gather Code-Coverage Data with Generic Tests。
發行測試結果。 做為組建和測試活動中,測試小組必須將測試結果發行至 Team Foundation Server的資料存放區。
如需詳細資訊,請參閱Team Foundation Build 活動與發行測試結果的命令列選項。
回到頁首
請參閱
概念
Team System 之 Analysis Services Cube 中提供的透視圖和測量群組