共用方式為


使用 Visual Studio 管理 Test Controller 和 Test Agent

如果您要使用 Visual Studio 在遠端執行測試,分散測試多部電腦或執行負載測試,必須設定測試控制器,測試代理程式,然後測試設定檔。本主題說明在您第一次安裝和設定它們時,如何管理測試控制器和測試代理程式。

注意事項警告

如果您使用 Microsoft Test Manager 對實驗室環境的測試,即可使用在 [實驗室中心] 的 [測試控制器管理員]Microsoft Test Manager的管理測試控制器及其代理程式。本主題僅適用於當您使用 Visual Studio 管理測試。

如需如何安裝和設定測試代理程式和測試控制器的資訊來執行 Visual Studio 的測試,請參閱 使用 Visual Studio 設定 Test Controller 和 Test Agent 以便管理測試

若要設定和監視測試控制器和任何已註冊的代理程式, 在[測試] 功能表上 Visual Studio 2012 選取 [管理測試控制器]。

在您安裝和設定測試控制器和測試代理程式之後,請使用下列程序來處理這些例外狀況:

  • 將測試代理程式加入至測試控制器

  • 從測試控制器移除測試代理程式

  • 變更測試代理程式的設定

  • 設定測試控制器

  • 執行測試時管理代理程式

  • 判斷用來執行測試的測試控制器

  • 從延遲簽署測試組件中載入測試

將測試代理程式加入至測試控制器

您可能想要將測試代理程式加入至其他測試控制器,或者可能不得不將測試代理程式加入至您剛剛安裝的測試控制器。

若要將測試代理程式加入至測試控制器

  1. 選取 [開始], [所有程式], [Microsoft Visual Studio], [Microsoft Visual Studio Test Agent 組態工具]。

    [設定測試代理程式] 對話方塊隨即顯示。

    注意事項注意事項

    您必須已安裝測試代理程式,才能將其加入至測試控制器。如需如何安裝測試代理程式的詳細資訊,請參閱安裝並設定 Test Agent 和 Test Controller

  2. 如果您想要變更執行測試代理程式的方式,請選 [執行選項]。

    此時,系統會針對即將執行測試代理程式的方式提供兩個選項:

    服務:如果您不需要執行與桌面互動的自動化測試,例如自動程式碼 UI 測試或在測試執行時建立視訊錄製,請選取 [以下列方式執行測試代理程式] 底下的 [服務]。測試代理程式會做為服務啟動。請選擇 [下一步]。

    您可以現在輸入當測試代理程式做為服務啟動時的使用者詳細資料。

    1. 在 [使用者名稱] 中輸入名稱。

    2. 在 [密碼] 輸入的密碼。

      重要的使用者帳戶資訊

      • 使用者帳戶不支援 Null 密碼。

      • 如果您要使用 IntelliTrace 收集器或網路模擬,使用者帳戶必須是 [Administrators] 群組的成員。

      • 如果代理程式使用者名稱不在代理程式服務中,它就會嘗試加入,而這項作業需要測試控制器的權限。

      • 嘗試使用測試控制器的使用者必須是在測試控制器的 Users 帳戶中,否則他們無法對控制器執行測試。

    互動式處理序:如果您想要執行必須與桌面互動的自動化測試,例如自動程式碼 UI 測試或在測試執行時建立視訊錄製,請選取 [互動式處理序]。測試代理程式會做為互動式處理序 (而非服務) 啟動。

    在下一頁,您可以現在輸入當測試代理程式做為處理序啟動時的使用者詳細資料,以及其他選項。

    1. 在 [使用者名稱] 中輸入名稱。

    2. 在 [密碼] 輸入的密碼。

      注意事項注意事項

      如果您設定測試代理程式當做互動式處理序方式執行所用的使用者不是目前作用中使用者,則您必須重新啟動電腦,再以該位使用者身分登入,才能啟動代理程式。此外,使用者帳戶不支援 null 密碼。如果您要使用 IntelliTrace 收集器或網路模擬,使用者帳戶必須是 [Administrators] 群組的成員。

      重要的使用者帳戶資訊

      • 使用者帳戶不支援 Null 密碼。

      • 如果您想要使用 IntelliTrace 或網路模擬資料和診斷配接器,使用者帳戶必須是 [Administrators] 群組的成員。如果執行測試代理程式的電腦使用的是 Windows Vista 或更新版本,或是具有最低權限使用者帳戶的任何作業系統,您也必須以系統管理員的身分執行它 (更高的權限)。

      • 如果代理程式使用者名稱不在代理程式服務中,它就會嘗試加入,而這項作業需要測試控制器的權限。

      • 嘗試使用測試控制器的使用者必須是在測試控制器的 Users 帳戶中,否則他們無法對控制器執行測試。

    3. 若要確定具有測試代理程式的電腦可以在重新啟動之後執行測試,您可以將電腦設定為自動以測試代理程式使用者身分登入。選取 [自動登入]。這會將使用者名稱和密碼以加密格式儲存在登錄中。

    4. 若要確定已停用螢幕保護裝置,因為這可能會妨礙必須與桌面互動的自動化測試,請選取 [確保已停用螢幕保護裝置]。

      注意事項警告

      如果自動登入或停用螢幕保護裝置,則會有安全性危險。啟用自動登入,您可讓其他使用者啟動此電腦,並且能夠使用自動登入的帳戶。如果停用螢幕保護裝置,則電腦可能不會提示使用者登入以解除鎖定電腦。只要任何人可以實際存取電腦,上述方式就能讓他們存取電腦。如果在電腦上啟用這些功能,則您要確保這些電腦的實際安全性。例如,這些電腦位於實際安全的實驗室中。(清除 [確定已停用螢幕保護裝置] 並不會啟用螢幕保護裝置)。

  3. 若要向不同的測試控制器註冊此代理程式,請選取 [向測試控制器註冊]。 在 [向下列測試控制器註冊測試代理程式] 中,輸入測試控制器的名稱,後面跟著 : 以及所使用的連接埠編號。例如,輸入 agent1:6901。

    注意事項注意事項

    預設通訊埠編號為 6901。

  4. 若要儲存變更,請按一下 [套用設定]。關閉 [組態摘要] 對話方塊,然後關閉 [Test Agent 組態工具]。

  5. 注意事項警告

    如果這個代理程式目前設定為在另一個測試控制器上執行,則您必須將其從該控制器中移除。如果測試控制器是向 Team 專案註冊的,則您可以在 Microsoft Test Manager的 [實驗室中心] 中使用 [測試控制器管理員],來移除測試代理程式。否則,若要移除測試代理程式,請在 Visual Studio 的功能表上,選取 [測試][管理測試控制器]。

從測試控制器移除測試代理程式

必須將測試代理程式設定為離線狀態,才可以將其移除。

若要從測試控制器移除測試代理程式

  1. 如果測試控制器未向 Team 專案註冊,請遵循下列步驟進行。

    1. 在 Visual Studio 的 [測試] 功能表上,按一下 [管理測試控制器]。

      [管理測試控制器] 對話方塊隨即顯示。

    2. 在 [控制器] 下拉式清單中輸入電腦的名稱,而這部電腦上必須已經設定了測試控制器。如果您先前已經管理了一部特定的測試控制器,則可以從清單中選取該名稱。

    3. 在 [代理程式] 窗格中選取測試代理程式名稱。如果該代理程式仍在線上,請按一下 [離線]。 選取 [移除] .則可移除 。

      注意事項注意事項

      移除測試代理程式只會解除它與測試控制器的關聯。若要完全解除安裝測試代理程式,在測試代理程式電腦上,使用 [控制台] 中的 [新增或移除程式]。

  2. 如果測試控制器已向 Team 專案註冊,請遵循下列步驟進行。

    1. 開啟Microsoft Test Manager:

      選取 [開始], [所有程式], [Microsoft Visual Studio 2012], [Microsoft 測試管理員]。

    1. 選取 [實驗室中心], [控制器]。

      [測試控制器管理員] 檢視隨即顯示。

    2. 從測試控制器清單中選取您的測試控制器。

      任何向此測試控制器註冊的測試代理程式都應顯示在測試代理程式清單中。

    注意事項注意事項

    如果測試代理程式設定為當做可與桌面互動的處理序執行,此測試代理程式就會顯示在清單中,並在名稱前面加上星號。

    1. 選取想要移除的代理程式。如果該代理程式仍在線上,請按一下 [離線]。若要移除它,請選取 [移除] 按鈕。

      注意事項注意事項

      移除測試代理程式只會解除它與測試控制器的關聯。若要完全解除安裝測試代理程式,在測試代理程式電腦上,使用 [控制台] 中的 [新增或移除程式]。

    您無法透過使用此程序中的步驟,將測試代理程式移至另一個測試控制器。若要將測試代理程式移至另一個測試控制器,請將該測試代理程式從其目前的測試控制器中移除。然後,您可以遵照該程序中的步驟,將測試代理程式加入至測試控制器。

變更測試代理程式的設定

測試代理程式的狀態可以是下列其中一個值:

狀態

描述

正在執行測試

正在執行測試

就緒

可執行測試或收集資料與診斷資訊

離線

無法執行測試或收集資料與診斷資訊

已中斷連接

測試代理程式未啟動

  • 您可以透過使用下列程序,變更測試代理程式的狀態及其他設定。

如果測試控制器是向 Team 專案註冊的,則您可以在 Microsoft Test Manager的 [實驗室中心] 中使用 [測試控制器管理員],來設定和監視該控制器和任何已註冊的測試代理程式。除此之外,要設定和監視測試控制器和任何已註冊的代理程式,請在 Visual Studio 的功能表 [負載測試] 並點選 [管理測試控制器] 或從 [負載測試] 工具列中選取 [管理測試控制器] 。

若要變更測試代理程式的設定

  1. 如果測試代理程式註冊至已向 Team 專案註冊的測試控制器,請遵循下列步驟進行:

    1. 在 Microsoft Test Manager,選取 [實驗室中心], [控制器]。
  2. 如果測試代理程式註冊至未向 Team 專案註冊的測試控制器,請遵循下列步驟進行:

    1. 在 Visual Studio 中, [負載測試] 在功能表上,選擇 [管理測試控制器] 或從 [負載測試] 工具列中選取 [管理測試控制器] 。

      [管理測試控制器] 對話方塊隨即顯示。

  3. 在測試控制器清單中,選取您想要變更其測試代理程式的測試控制器名稱。如果測試控制器未出現在清單中,請檢查是否已正確註冊測試控制器。如需詳細資訊,請參閱下列關於如何設定測試控制器的程序。

  4. (選擇性) 在 [測試代理程式] 窗格中,選擇您想要進行屬性變更的測試代理程式電腦。

  5. 如果您正在使用 Microsoft Test Manager,請選擇 [設定]。

    -或-

    如果您正在使用 Visual Studio,選取 [內容]。

  6. 視需要變更下列測試代理程式屬性。

測試代理程式屬性

描述

加權

當您以不同的效能層級使用測試代理程式時,是用以分散負載。例如,加權值 100 之測試代理程式所接收的負載,是加權值 50 之測試代理程式的兩倍。

IP 切換

用來設定 IP 切換。IP 切換可讓測試代理程式利用某個 IP 位址的範圍,將要求傳送至伺服器。這會模擬來自不同用戶端電腦的呼叫。

若您的測試負載會存取 Web 伺服陣列,「IP 切換」便很重要。大多數的負載平衡器會使用用戶端的 IP 位址,將用戶端導引到特定的 Web 伺服器。如果所有的要求似乎都來自單一用戶端,負載平衡器將不會平衡負載。若要在 Web 伺服陣列中獲得較佳的負載平衡,確定讓要求都來自某一範圍的 IP 位址。

注意事項注意事項
您可以指定網路介面卡,或是使用 [(全未指派)] 自動選取目前未使用的網路介面卡。

若要使用 IP 切換功能, Visual Studio Test Agent 服務必須以該代理程式電腦之 Administrators 群組中的使用者身分來執行。在代理程式安裝期間選取此使用者,透過修改服務屬性然後重新啟動服務可對其進行變更。

若要驗證 IP 切換是否正確運作,請啟用 Web 伺服器上的 IIS 記錄,並使用 IIS 記錄功能來驗證要求是否都來自您所設定的 IP 位址。

屬性

可以在測試代理程式選取項目中使用的名稱/值對集合。例如,測試可能必須在特殊作業系統上執行。您可以在測試設定 [角色] 索引標籤的屬性檔案,以及可用來選取具有相符屬性的測試代理程式。如果您想要在多部電腦上執行測試,請在您的測試配置建立測試設定的屬性,然後在您在該角色所要使用的每個測試代理程式配置相符的屬性。如需將屬性的相關資訊加入至您的測試設定中的角色的定義檔,請參閱 指定 Visual Studio 測試的測試設定

注意事項注意事項
此設定僅可用於向未曾向小組專案註冊之測試控制器註冊的代理程式,原因是這些屬性僅用在Visual Studio的測試設定中。

測試代理程式權重和測試代理程式屬性變更會立即生效,但不會影響到正在執行的測試。而「IP 位址範圍」會在測試控制器重新啟動之後生效。

  1. (選擇性) 若要變更測試代理程式的狀態,請選取清單中的代理程式,然後根據代理程式的目前狀態從可用選項中選取動作。

    注意事項注意事項

    如果您的測試代理程式以處理序的方式執行,則您可從測試代理程式安裝所在電腦上執行的告知區域圖示中,管理測試代理程式的狀態。如此便會顯示測試代理程式的狀態。您可以使用此工具啟動、停止或重新啟動以處理序方式執行的代理程式。若未執行就要啟動測試代理程式做為處理序,請選取 [開始], [所有程式], [Microsoft Visual Studio] , [Microsoft Visual Studio Test Agent]。如此便會加入告知區域圖示。

設定測試控制器

若要設定測試控制器,您必須使用 [Team Test Controller 組態工具]。當您設定測試控制器時,可以向其他 Team 專案集合註冊測試控制器,或者從 Team 專案集合解除測試控制器的註冊。

如果您要向 Team Foundation Server 專案集合註冊測試控制器,則您用於測試控制器服務的帳戶必須是 Team 專案集合之 [Project Collection Test Service Accounts] 群組的成員,或者您用來執行測試控制器組態工具的帳戶必須是 Project Collection Administrator。

注意事項注意事項

如果您從具有現有環境的 Team 專案集合解除測試控制器的註冊,則即使您移動該 Team 專案集合,並對其重新註冊測試控制器,該環境仍會存在。

若要設定測試控制器

  1. 若要隨時執行工具來重新設定測試控制器,請選取 [開始], [所有程式], [Microsoft Visual Studio], [Microsoft Visual Studio Test Controller 組態工具]。

    [設定測試控制器] 對話方塊隨即顯示。

  2. 選取用做您測試控制器服務登入帳戶的使用者。

    注意事項注意事項

    使用者帳戶不支援 Null 密碼。

  3. (選擇性) 如果您想要藉由Microsoft Test Manager將此測試控制器與實體或實驗室環境搭配使用,則必須讓控制器包含該環境之小組專案的小組專案集合進行註冊。選取 [向 Team 專案集合註冊]。若要找出您的小組專案集合,請按一下 [瀏覽],或者可以在 [向下列 Team 專案集合註冊測試控制器] 中輸入名稱。確定輸入完整路徑。例如, http://<server name>:8080/tfs/DefaultCollection

    注意事項注意事項

    如需環境的詳細資訊,請參閱設定測試電腦以便執行測試或收集資料

  4. (選擇性) 如果您不想將測試控制器與實體或實驗室環境搭配使用,而僅想要從Visual Studio執行測試,請清除 [向 Team 專案集合註冊]

  5. (選擇性) 若要設定您的測試控制器以用於負載測試,請選取 [設定以進行負載測試]。然後在 [在下列 SQL Server 執行個體中建立負載測試結果資料庫] 中輸入您的 SQL Server 執行個體。

    如需負載測試的詳細資訊,請參閱使用 Visual Studio Web 效能和負載測試來測試效能與壓力搭配測試控制器和測試代理程式使用負載測試

注意事項注意事項

如需測試控制器的疑難排解資訊,請參閱安裝並設定 Test Agent 和 Test Controller

判斷用來執行測試的測試控制器

如果在您使用測試控制器來執行測試時發生問題,可能必須判斷所使用的測試控制器,以便驗證測試控制器服務是否正常執行,或是測試控制器電腦是否已啟動。

使用 Visual Studio 執行測試

如果您使用 Visual Studio,來執行測試,用以執行測試的測試控制器就會顯示在測試設定中。請使用下列主題中的程序來檢視測試設定:HOW TO:從 Microsoft Visual Studio 編輯測試設定檔案

使用 Microsoft 測試管理員執行測試

如果您使用 Microsoft Test Manager來執行測試,就必須建立環境才能使用測試控制器。當您執行測試時,請選取下列其中一個選項:

  • 執行:這個選項會使用測試計劃中指定的環境來執行測試。

  • 以選項執行:您可以使用這個選項,以不同的環境執行測試。

若要尋找測試計劃中指定的環境,請使用下列主題,在測試計劃的 [屬性] 檢視中檢視環境:HOW TO:選擇測試計劃的測試設定和環境

當您知道用以執行測試的環境時,就可以使用下列程序來檢視這個環境的詳細資料。

若要判斷環境的測試控制器

  1. 開啟Microsoft Test Manager:

    選取 [開始], [所有程式], [Microsoft Visual Studio 2012], [Microsoft 測試管理員]。

  2. 選取 [實驗室中心], [實驗室]。

    [環境] 檢視隨即顯示。

  3. 從清單中選取您用來執行測試的環境,然後按一下 [開啟]。

    環境隨即顯示。您現在就可以檢視針對環境所選取的測試控制器。測試控制器名稱與它執行所在的電腦名稱相同。

    注意事項注意事項

    測試控制器服務名為 Visual Studio Test Controller。如果測試控制器發生問題,您可能會想要驗證電腦是否已啟動,以及此服務是否在電腦上執行。

利用測試控制器執行測試時管理您的代理程式

當您將應用程式的角色加入至 Visual Studio 2012 的測試設定時,可以針對每一個角色加入代理程式屬性。此屬性決定哪些測試代理程式適用於此角色。 當您使用具有測試設定的環境來執行測試時,針對回合選取的測試控制器會決定所需代理程式的可用性。以下是決定代理程式可用性時可能發生的狀況:

  • 沒有可供必須執行測試的角色使用的代理程式。您的測試無法執行。您可以執行下列其中一項動作,然後重新執行您的測試:

    • 您可以等待代理程式可用於此角色,以執行測試。

    • 如果有任何可用於此角色的代理程式離線,則您可以重新啟動代理程式以便其可用。

    • 您可以將具有該角色正確代理程式屬性的其他代理程式加入至測試控制器。

    • 您可以在測試設定中變更此角色的代理程式屬性,來啟用想要使用的其他代理程式。

  • 執行診斷資料配接器的一個或多個角色沒有可用的代理程式。可以執行您的測試,但是無法執行診斷資料配接器。您可以在沒有診斷資料配接器的情況下執行測試,或者可以執行下列其中一項動作並重新執行測試:

    • 您可以等待代理程式可用於這些角色。

    • 如果有可用於此角色的任何代理程式離線,則您必須從 [測試] 功能表上的 [管理測試控制器] 中,將代理程式的狀態變更為線上。此外,如果代理程式已經與控制器中斷連線,您可能必須重新啟動該代理程式。

    • 請驗證此測試回合可能需要的任何代理程式目前未執行測試。您可以從 [測試] 功能表上的 [管理測試控制器] 中,檢查任何代理程式的狀態。

    • 您可以將具有該角色正確代理程式屬性的其他代理程式加入至測試控制器。

    • 您可以在測試設定中變更該角色的代理程式屬性,來啟用想要使用的其他代理程式。

從延遲簽署組件中載入測試

測試控制器和測試代理程式只能載入屬於強式簽署的組件或未簽署組件的測試組件。有些測試組件為延遲簽署,因為它們對於應用程式必須具有實際執行組件的存取權。不過,這些組件不是強式簽署,因為它們只是測試組件而且未發佈。因為這些組件是延遲簽署所以無法載入,因此您必須在即將載入組件的所有電腦中 (包括測試控制器電腦),針對這些組件停用強式名稱驗證。若要停用延遲簽署驗證,請使用 sn.exe。也可能必須併入延遲簽署組件 (會要求略過其強式名稱驗證) 的公開金鑰語彙基元。

請使用Sn.exe (強式名稱工具),以停用延遲簽署驗證。

這將在您執行命令的電腦上,僅針對指定的組件停用強式名稱驗證。您必須具有足夠權限才能執行此作業。

在測試回合完成後,請使用 SN.exe 命令重新啟用延遲簽署驗證。

停用與重新啟用簽署驗證的建議作法是在指令碼中使用 SN.exe 命令。您可以在安裝指令碼中停用驗證,在清除指令碼中重新啟用驗證。

請參閱

概念

安裝並設定 Test Agent 和 Test Controller

在 Microsoft Test Manager 中執行測試

其他資源

指定 Visual Studio 測試的測試設定