HOW TO:在建置應用程式之後設定和執行已排程的測試

您可以在組建已完成之後執行測試,以評估組建的品質。 這些測試通常稱為組建驗證測試 (BVT) 或煙霧測試。 這些測試通常由廣泛的測試套件所組成,可用來驗證特定組建的應用程式關鍵區域。 如果在 BVT 中的所有測試都能成功,就會當做是建置成功。

您可以使用一種或多種類型的自動化測試做為組建驗證測試的一部分。 您可以執行下列類型的測試:

  • 單元測試

  • 自動程式碼 UI 測試

  • Web 效能測試

  • 負載測試

  • 一般測試

建立 BVT 會使用 Visual Studio、Team Foundation 版本控制和 Team Foundation Build。 首先,您要使用 Team Foundation 版本控制簽入您想要為 BVT 會使用到原始檔控制的自動化測試。 接著將測試加入至您的組建定義。 最後,您可使用 Team Foundation Build 將組建加入佇列,如果該組建成功,則該組建會執行測試。

注意事項注意事項

用戶端電腦必須安裝 Team Explorer,而且您的 Visual Studio 使用者工作階段必須連接至到 Team Foundation Server 電腦。如需如何連接到 Team Foundation Server 的詳細資訊,請參閱 How to: Connect to a Team Project in Team Foundation Server

本主題將說明用來建立和執行組建驗證測試的所有必要程序:

  • 簽入組建驗證測試

  • 建立組建定義

  • 將建置和測試代理程式的電腦或使用者帳戶加入至 TeamTestControllerUsers 群組

  • 將您的代理程式設定為執行自動程式碼 UI 測試

  • 執行 BVT 組建定義

簽入組建驗證測試

在此程序中,您會簽入方案中的所有檔案,

若要將組建驗證測試簽入至原始檔控制

  1. 連接至 Team Foundation Server 電腦。 如需詳細資訊,請參閱How to: Connect to a Team Project in Team Foundation Server

  2. 如果您的方案尚未在來源控制項中,請將它加入至來源控制項。 如需詳細資訊,請參閱Add a Project or Solution to Version Control

  3. 選取 [Team 總管] 然後選取 [暫止簽入]。 [暫止簽入] 視窗隨即顯示。

  4. 簽入方案的所有檔案。 如需詳細資訊,請參閱Check In Pending Changes

    注意事項注意事項

    您可能會有一套特定的小組流程,用來控制建立和管理 BVT 的方式。例如,這套流程可能會要求您先在本機驗證建置後,才能簽入該程式碼以及將會在其上執行的測試。

    在簽入作業完成後,一個掛鎖圖示便會出現在 [方案總管] 中的每個檔案旁,表示「已簽入」(Checked In) 狀態。 如需詳細資訊,請參閱Identify Version Control Item Status in Solution Explorer

    已簽入的測試可在組建中使用。 現在您可以建立包含要在 BVT 中執行之測試的組建定義。

建立組建定義

若要建立 BVT 組建定義

  1. 在 Team Explorer,選取您的 Team 專案。

  2. 在 Team Explorer首頁,選取 [組建]。

    [組建] 頁面隨即顯示。

  3. 選取 [新增組建定義]。

    [新增組建定義] 索引標籤隨即顯示。

  4. 輸入新組建定義的資訊。 如需詳細資訊,請參閱建立組建定義

  5. [組建定義名稱] 文字方塊內指定要與組建定義產生關聯的名稱。

  6. (選擇性) 在 [描述] 方塊中,加入適當的描述。

  7. 選取 [工作區]。

    [工作資料夾] 資料表包含 Team 專案的原始檔控制資料夾 (您將為該專案建立新的組建定義) 和組建代理程式上的本機資料夾。 組建代理程式上的本機資料夾列示於 [本機資料夾] 資料行內。 組建代理程式上的所有工作區路徑會對應至顯示的預設根目錄。

  8. 若要將現有的工作區複製到工作資料夾清單中,請按 [複製現有工作區] 開啟 [選取工作區] 對話方塊。

    您選取的工作空間會正規化為組建代理程式上的通用根目錄 $(SourceDir)。 SourceDir 是展開至 $(BuildDir)\Sources 的環境變數。

    您也可以在 [原始檔控制資料夾] 內選取空的資料表儲存格,然後再按一下省略符號 (…),瀏覽要加入成為工作資料夾的原始檔控制資料夾。 您選取的原始檔控制資料夾也會正規化為組建代理程式上的通用根目錄。

  9. 選取 [組建預設值]。

    在 [組建預設值] 窗格中,您可以從 [組建控制器] 下拉式清單選擇組建控制器 (若存在的話)。

    在 [將組建輸出複製至下列置放資料夾] 中,輸入 UNC 路徑,例如 (\\server\share) 位置。 當組建完成時,建置的二進位檔和記錄檔將會置於此資料夾中。 如需如何設定置放資料夾的詳細資訊,請參閱選取預備環境位置與設定置放資料夾

    如果您計劃執行自動程式碼 UI 測試、Web 效能測試或負載測試做為組建定義的一部分,就必須使用位於這個位置之組建的輸出來啟動或安裝應用程式。 若要在組建完成之後而在執行測試之前自動安裝應用程式,您可以使用可將應用程式部署至SCVMM環境的實驗室預設範本,也可以修改此實驗室預設範本,以便將應用程式部署至標準環境。

    注意事項注意事項

    完成此步驟之前,您必須在建立公用資料夾,並賦予 TFSService 帳戶完整權限。如需 Team Foundation 服務帳戶的詳細資訊,請參閱檢視 Team Foundation Server 服務

  10. 選取 [流程]。 在 [流程] 窗格中,選取 [顯示詳細資料]。

  11. 在 [必要的] 區段,請在 [要建置的項目] 選取第二個資料行中的省略符號。

    [要建置的項目] 對話方塊隨即出現。

  12. 選擇 [加入]。 然後在版本控制樹狀結構中尋找方案或專案,然後按一下 [確定]。

  13. 按一下 [要建置的項目] 對話方塊中的 [確定]。

  14. 若要指定尋找測試組件的搜尋模式,請點選 [測試組件檔案規格]。 輸入搜尋字串。 例如,如果所有 DLL 的名稱中都包含 "test",則為 **\*test*.dll。

    注意事項注意事項

    此搜尋字串會以遞迴方式搜尋目錄,以尋找二進位檔目錄中符合 *test*.dll 的任何 DLL。如需詳細資訊,請參閱定義您的建置流程

  15. (選擇性) 若要選取執行測試時要使用的測試設定檔,請依序開啟 [自動化測試] 和 [測試組件],按一下 [測試設定檔] 再按一下省略符號 (…)。

    [瀏覽] 對話方塊隨即顯示。 尋找包含想要使用之測試設定的 .test 設定檔案,然後選 [確定]。

    如果測試設定檔使用測試控制器和測試代理程式,請參閱下列程序:將組建和測試代理程式的使用者帳戶或電腦加入至 TeamTestControllerUsers 群組。

    如果正在執行自動程式碼 UI 測試,請參閱下列程序,以根據測試設定檔來設定代理程式:將您的代理程式設定為執行自動程式碼 UI 測試。

    注意事項注意事項

    您可以使用 [進階] 區段中的 [代理程式設定],來指定要使用的特定代理程式。例如,如果您正在執行自動程式碼 UI 測試,且必須選取正在做為互動式處理序執行的代理程式,則您可在這裡選取它。

    如需測試設定檔的詳細資訊,請參閱指定 Visual Studio 測試的測試設定

  16. (選擇性) 若要做為組建處理序的一部分來執行載入測試,您必須設定載入測試結果儲存機制,並設定測試設定中指定的測試控制器使用該儲存機制。 如需詳細資訊,請參閱HOW TO:選取負載測試結果儲存機制

  17. 若要儲存新的組建定義,請按一下 [儲存]。

    新組建定義隨即出現在 Team Explorer視窗中的 [組建] 資料夾下。

將組建和測試代理程式的使用者帳戶或電腦加入至 TeamTestControllerUsers 群組

如果您已加入至組建定義的測試設定檔使用測試控制器和測試代理程式,則必須針對用於測試控制器電腦上 TeamTestControllerUsers 安全性群組的任何組建或測試代理程式,加入電腦。 例如,如果想要做為組建處理序的一部分來執行自動程式碼 UI 測試,則必須將這些電腦加入至這個安全性群組。

警告

如果組建代理程式或測試代理程式設定為使用不同的使用者,且不是 Network Service 帳戶,則您必須確定此網域使用者帳戶已加入至 TeamTestControllerUsers 群組。

若要將組建和測試代理程式的使用者或電腦加入至 TeamTestControllerUsers 群組

  1. 從測試控制器電腦上,依序選擇 [開始]、[控制台]、[系統管理工具],再按一下 [電腦管理]。

    [電腦管理] 對話方塊隨即顯示。

  2. 開啟 [本機使用者和群組],然後按一下 [群組]。

    群組隨即顯示。

  3. 若要加入使用者或電腦,請以滑鼠右鍵按一下 [TeamTestControllerUsers],然後指向 [加入群組]。

    [TeamTestControllerUsers 屬性] 對話方塊隨即顯示。

  4. 查看成員清單以查看是否已經加入網域使用者帳戶或電腦。 如果尚未加入,請點 [加入]。

    [選取使用者、電腦或群組] 對話方塊隨即出現。

  5. 根據預設,只會顯示使用者或群組。 若要加入電腦,請按一下 [物件類型],選取 [電腦],然後按一下 [確定]。

  6. 若要加入電腦,請在 [請輸入物件名稱來選取] 中輸入電腦名稱,然後按一下 [確定]。

    警告

    您必須同時加入執行組建代理程式的電腦和用於測試代理程式的電腦。

  7. 若要加入網域使用者帳戶,請驗證位置是否正確,在 [請輸入物件名稱來選取] 中輸入使用者帳戶名稱,然後按一下 [確定]

    重要

    重複此步驟,加入您需要的所有使用者帳戶。

  8. 按一下 [確定] 套用變更。

將您的代理程式設定為執行自動程式碼 UI 測試

如果在建置應用程式之後想要做為排程測試的一部分執行自動程式碼 UI 測試,則您必須執行下列其中一項:

  • 使用測試設定檔,這個檔案會指定測試控制器和應用程式的角色,以執行測試。 使用 Visual Studio 建立這些測試設定。 對於在測試設定中指派給執行測試角色的任一測試代理程式,您必須遵循這個程序中的步驟,以設定測試代理程式做為處理序 (而非服務) 執行。 如需測試控制器和測試代理程式的詳細資訊,請參閱設定測試電腦以便執行測試或收集資料安裝並設定 Test Agent 和 Test Controller

  • 使用不會指定測試控制器的測試設定。 如果這樣做,則必須將組建代理程式服務設定為可以與桌面互動。 選取服務屬性,以 [允許服務與桌面互動]。 這樣可讓組建代理程式執行自動程式碼 UI 測試。

    警告

    如果您正在執行啟動瀏覽器的自動程式碼 UI 測試,則組建服務的服務帳戶可用於啟動該瀏覽器。這個服務帳戶必須與此電腦上現用使用者的使用者帳戶相同。如果這不是相同的使用者帳戶,瀏覽器將不會啟動。

將您的測試代理程式設定為執行自動程式碼 UI 測試

若要使用 Team Build 執行 BVT

若要使用 Team Build 執行 BVT

  1. 在 Team Explorer,選取您的小組專案。

  2. 以滑鼠右鍵按一下 [組建],然後按一下 [佇列新組建]。

  3. (選擇性) 變更建置位置和目錄。

  4. 選擇佇列

    此時組建會啟動,並會顯示 [Build 總管] 對話方塊。

  5. 當組建完成時,請按一下 [已完成] 以查看詳細資料。

  6. 若要檢視組建的詳細資料,請按兩下清單中的組建。

    新的索引標籤隨即顯示,並且具有組建資訊。 您可以檢視測試執行的狀態。

  7. 若要檢視測試結果詳細資料,請按一下箭號以開啟測試,然後按一下 [檢視測試結果]。

  8. 選取資料夾以在本機儲存測試結果。

    現在,測試結果便會顯示在 [測試結果] 視窗中。

    如需詳細資訊,請參閱建置應用程式

請參閱

概念

在 Microsoft Test Manager 中執行自動化測試

使用 Visual Studio Web 效能和負載測試來測試效能與壓力

其他資源

使用版本控制