使用 Visual Studio 管理 Test Controller 和 Test Agent
如果您要使用 Visual Studio 從遠端執行測試、將測試分散到多部電腦上,或是執行負載測試,則必須設定測試控制器、測試代理程式和測試設定檔。 本主題將描述如何在第一次安裝及設定測試控制器和測試代理程式之後進行管理。
如果您是在執行負載測試,那麼您不需要使用您的資源和設定自己的機器,就能建立此負載。 您可以使用雲端負載測試在雲端中提供虛擬機器,產生多位使用者同時存取網站之負載。 您只需要有 Visual Studio Online 帳戶即可。 深入了解每月免費提供 15,000 個虛擬使用者分鐘數的雲端負載測試服務。
如果您使用 Microsoft Test Manager 在實驗室環境中執行測試,可以使用 的 [實驗室中心] 中的 [Microsoft Test Manager測試控制器管理員] 管理測試控制器及其代理程式。 本主題僅適用於使用 Visual Studio 執行測試的情況。
如需了解如何安裝及設定測試代理程式和測試控制器,以便在 Visual Studio 中執行測試,請參閱使用 Visual Studio 設定 Test Controller 和 Test Agent 以便管理測試。
要設定和監視測試控制器與任何已註冊的代理程式,您的測試專案中必須有包含要執行之測試的測試設定檔。 開啟測試設定檔,選擇 [角色],然後從 [控制器] 欄位的下拉式清單中選擇 [管理測試控制器]。
針對負載測試專案,您也可以從 [負載測試] 功能表中選擇 [管理測試控制器]。
在您安裝和設定測試控制器和測試代理程式之後,請使用下列程序進行管理:
將測試代理程式加入至測試控制器
從測試控制器移除測試代理程式
變更測試代理程式的設定
設定測試控制器
執行測試時管理代理程式
判斷用來執行測試的測試控制器
從延遲簽署測試組件中載入測試
將測試代理程式加入至測試控制器
您可能想要將測試代理程式加入至其他測試控制器,或者可能必須將測試代理程式加入至您剛剛安裝的測試控制器。
若要將測試代理程式加入至測試控制器
依序選擇 [開始]、[所有程式]、[Microsoft Visual Studio]、[Microsoft Visual Studio Test Agent 組態工具]。
[設定測試代理程式] 對話方塊隨即顯示。
注意事項 您必須已安裝測試代理程式,才能將其加入至測試控制器。如需有關如何安裝測試代理程式的詳細資訊,請參閱安裝並設定 Test Agent 和 Test Controller。
如果您想要變更執行測試代理程式的方式,請選擇 [執行選項]。
此時,系統會針對即將執行測試代理程式的方式提供兩個選項:
服務:如果您不需要執行與桌面互動的自動化測試,例如自動程式碼 UI 測試或在測試執行時建立視訊錄製,請選取 [以下列方式執行測試代理程式] 底下的 [服務]。 測試代理程式會做為服務啟動。 選擇 [下一步]。
您可以現在輸入當測試代理程式做為服務啟動時的使用者詳細資料。
在 [使用者名稱] 中輸入名稱。
在 [密碼] 中輸入密碼。
重要的使用者帳戶資訊
使用者帳戶不支援 Null 密碼。
如果您要使用 IntelliTrace 收集器或網路模擬,使用者帳戶必須是 [Administrators] 群組的成員。
如果代理程式使用者名稱不在代理程式服務中,它就會嘗試加入,而這項作業需要測試控制器的權限。
嘗試使用測試控制器的使用者必須是在測試控制器的 Users 帳戶中,否則他們無法對控制器執行測試。
互動式處理序:如果您想要執行必須與桌面互動的自動化測試,例如自動程式碼 UI 測試或在測試執行時建立視訊錄製,請選取 [互動式處理序]。 測試代理程式會做為互動式處理序 (而非服務) 啟動。
在下一頁中,輸入當測試代理程式做為處理序啟動時的使用者詳細資料,以及其他選項。
在 [使用者名稱] 中輸入名稱。
在 [密碼] 中輸入密碼。
注意事項 如果您設定測試代理程式當做互動式處理序方式執行所用的使用者不是目前作用中使用者,則您必須重新啟動電腦,再以該位使用者身分登入,才能啟動代理程式。此外,使用者帳戶不支援 null 密碼。如果您要使用 IntelliTrace 收集器或網路模擬,使用者帳戶必須是 [Administrators] 群組的成員。
重要的使用者帳戶資訊
使用者帳戶不支援 Null 密碼。
如果您想要使用 IntelliTrace 或網路模擬資料和診斷配接器,使用者帳戶必須是 [Administrators] 群組的成員。 如果執行測試代理程式的電腦使用的是 Windows Vista 或更新版本,或是具有最低權限使用者帳戶的任何作業系統,您也必須以系統管理員的身分執行它 (更高的權限)。
如果代理程式使用者名稱不在代理程式服務中,它就會嘗試加入,而這項作業需要測試控制器的權限。
嘗試使用測試控制器的使用者必須是在測試控制器的 Users 帳戶中,否則他們無法對控制器執行測試。
若要確定具有測試代理程式的電腦可以在重新啟動之後執行測試,您可以將電腦設定為自動以測試代理程式使用者身分登入。 選取 [自動登入]。 這會將使用者名稱和密碼以加密格式儲存在登錄中。
若要確定已停用螢幕保護裝置,因為這可能會妨礙必須與桌面互動的自動化測試,請選取 [確保已停用螢幕保護裝置]。
警告
如果自動登入或停用螢幕保護裝置,則會有安全性危險。啟用自動登入,您可讓其他使用者啟動此電腦,並且能夠使用自動登入的帳戶。如果停用螢幕保護裝置,則電腦可能不會提示使用者登入以解除鎖定電腦。只要任何人可以實際存取電腦,上述方式就能讓他們存取電腦。如果在電腦上啟用這些功能,則您要確保這些電腦的實際安全性。例如,這些電腦位於實際安全的實驗室中。(清除 [確定已停用螢幕保護裝置] 並不會啟用螢幕保護裝置)。
若要向不同的測試控制器註冊此代理程式,請選取 [向測試控制器註冊]。 在 [向下列測試控制器註冊測試代理程式] 中,輸入測試控制器的名稱,後面跟著 : 以及所使用的連接埠編號。 例如,輸入 agent1:6901。
注意事項 預設通訊埠編號為 6901。
若要儲存變更,請選擇 [套用設定]。 關閉 [組態摘要] 對話方塊,然後關閉 [Test Agent 組態工具]。
-
警告
如果這個代理程式目前設定為在另一個測試控制器上執行,則您必須將其從該控制器中移除。如果測試控制器是向 Team 專案註冊的,則您可以在 的 [實驗室中心] 中使用 [Microsoft Test Manager測試控制器管理員],來移除測試代理程式。否則,若要移除測試代理程式,請在 Visual Studio 中的 [測試] 功能表上選擇 [管理測試控制器]。
從測試控制器移除測試代理程式
必須將測試代理程式設定為離線狀態,才可以將其移除。
若代理程式已在控制器中註冊為實驗室環境的一部分,則無法使用此程序加以移除。 您必須先使用 Microsoft Test Manager 移除環境,才能從控制器中移除這類代理程式。
若要從測試控制器移除測試代理程式
如果測試控制器未向 Team 專案註冊,請遵循下列步驟進行。
從 Visual Studio 中,開啟測試專案的測試設定檔,選擇 [角色],然後從 [控制器] 欄位的下拉式清單中選擇 [管理測試控制器]。
[管理測試控制器] 對話方塊隨即顯示。
在 [控制器] 下拉式清單中輸入電腦的名稱,而這部電腦上必須已經設定了測試控制器。 如果您先前已經管理了一部特定的測試控制器,則可以從清單中選取該名稱。
在 [代理程式] 窗格中選取測試代理程式名稱。 如果代理程式仍在線上,請選擇 [離線]。 若要將它移除,請選擇 [移除]。
注意事項 移除測試代理程式只會解除它與測試控制器的關聯。若要完全解除安裝測試代理程式,請使用測試代理程式電腦上 [控制台] 中的 [程式和功能]。
如果測試控制器已向 Team 專案註冊,請遵循下列步驟進行。
開啟 [Microsoft Test Manager]:
依序選擇 [開始]、[所有程式]、[Microsoft Visual Studio 2013]、[Microsoft Test Manager]。
選擇 [實驗室中心]、[控制器]。
[測試控制器管理員] 檢視隨即顯示。
從測試控制器清單中選取您的測試控制器。
任何向此測試控制器註冊的測試代理程式都會顯示在測試代理程式清單中。
注意事項 如果測試代理程式設定為當做可與桌面互動的處理序執行,此測試代理程式就會顯示在清單中,並在名稱前面加上星號。
選取想要移除的代理程式。 如果代理程式仍在線上,請選擇 [離線]。 若要將它移除,請選擇 [移除] 按鈕。
注意事項 移除測試代理程式只會解除它與測試控制器的關聯。若要完全解除安裝測試代理程式,請使用測試代理程式電腦上 [控制台] 中的 [程式和功能]。
您無法透過使用此程序中的步驟,將測試代理程式移至另一個測試控制器。 若要將測試代理程式移至另一個測試控制器,請將該測試代理程式從其目前的測試控制器中移除。 然後,您可以遵照該程序中的步驟,將測試代理程式加入至測試控制器。
變更測試代理程式的設定
測試代理程式的狀態可以是下列其中一個值:
狀態 |
描述 |
---|---|
正在執行測試 |
正在執行測試 |
就緒 |
可執行測試或收集資料與診斷資訊 |
離線 |
無法執行測試或收集資料與診斷資訊 |
已中斷連接 |
測試代理程式未啟動 |
- 您可以透過使用下列程序,變更測試代理程式的狀態及其他設定。
若要變更測試代理程式的設定
如果測試代理程式註冊至已向 Team 專案註冊的測試控制器,請遵循下列步驟進行:
- 在 Microsoft Test Manager 中選擇 [實驗室中心]、[控制器]。
如果測試代理程式註冊至未向 Team 專案註冊的測試控制器,請遵循下列步驟進行:
若要為負載測試設定和監視測試控制器與任何已註冊的代理程式,請選擇 Visual Studio 中的 [負載測試] 功能表,並指向 [管理測試控制器]。 針對其他的任何測試,在 Visual Studio 中開啟測試專案的測試設定檔,選擇 [角色],然後從 [控制器] 欄位的下拉式清單中選擇 [管理測試控制器]。
[管理測試控制器] 對話方塊隨即顯示。
在測試控制器清單中,選取您想要變更其測試代理程式的測試控制器名稱。 如果測試控制器未出現在清單中,請檢查是否已正確註冊測試控制器。 如需詳細資訊,請參閱下列關於如何設定測試控制器的程序。
(選擇性) 在 [測試代理程式] 窗格中,選取要變更其屬性的測試代理程式電腦。
如果您使用的是 Microsoft Test Manager,請選擇 [設定]。
-或-
如果您使用的是 Visual Studio,請選擇 [屬性]。
視需要變更下列測試代理程式屬性。
測試代理程式屬性 |
描述 |
||
---|---|---|---|
加權 |
當您以不同的效能層級使用測試代理程式時,是用以分散負載。 例如,加權值 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 測試的測試設定。
|
測試代理程式權重和測試代理程式屬性變更會立即生效,但不會影響到正在執行的測試。 而「IP 位址範圍」會在測試控制器重新啟動之後生效。
(選擇性) 若要變更測試代理程式的狀態,請選取清單中的代理程式,然後根據代理程式的目前狀態從可用選項中選取動作。
注意事項 如果您的測試代理程式以處理序的方式執行,則您可從測試代理程式安裝所在電腦上執行的告知區域圖示中,管理測試代理程式的狀態。如此便會顯示測試代理程式的狀態。您可以使用此工具啟動、停止或重新啟動以處理序方式執行的代理程式。若要將測試代理程式做為處理序啟動 (如果尚未執行),請依序選擇 [開始]、[所有程式]、[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 專案集合,並對其重新註冊測試控制器,該環境仍會存在。 |
若要設定測試控制器
若要執行工具以便隨時重新設定測試控制器,請依序選擇 [開始]、[所有程式]、[Microsoft Visual Studio]、[Microsoft Visual Studio Test Controller 組態工具]。
[設定測試控制器] 對話方塊隨即顯示。
選取用做您測試控制器服務登入帳戶的使用者。
注意事項 使用者帳戶不支援 Null 密碼。
(選擇性) 如果您想要藉由 Microsoft Test Manager 將此測試控制器與實驗室環境搭配使用,則必須在包含該環境之 Team 專案的 Team 專案集合中註冊控制器。 選取 [向 Team 專案集合註冊]。 若要尋找您的 Team 專案集合,請選擇 [瀏覽],或者可以在 [向下列 Team 專案集合註冊測試控制器] 中輸入名稱。 確定輸入完整路徑。 例如,http://<伺服器名稱>:8080/tfs/DefaultCollection。
注意事項 如需有關環境的詳細資訊,請參閱設定測試電腦以便執行測試或收集資料。
(選擇性) 如果您不想將測試控制器與實驗室環境搭配使用,而僅想要從 Visual Studio 執行測試,請清除 [向 Team 專案集合註冊]。
(選擇性) 若要設定您的測試控制器以用於負載測試,請選取 [設定以進行負載測試]。 然後在 [SQL Server在下列 SQL Server 執行個體中建立負載測試結果資料庫] 中輸入您的 執行個體。
如需有關負載測試的詳細資訊,請參閱[已停用] Visual Studio 中的 Web 效能測試和負載測試以及搭配測試控制器和測試代理程式使用負載測試。
注意事項 |
---|
如需有關測試控制器疑難排解的詳細資訊,請參閱安裝並設定 Test Agent 和 Test Controller。 |
判斷用來執行測試的測試控制器
如果在您使用測試控制器來執行測試時發生問題,可能必須判斷所使用的測試控制器,以便驗證測試控制器服務是否正常執行,或是測試控制器電腦是否已啟動。
使用 Visual Studio 執行測試
如果您使用 Visual Studio 執行測試,您的測試設定中就會顯示用來執行測試的測試控制器。 您可使用本主題中的程序來檢視您的測試設定:如何:從 Microsoft Visual Studio 編輯測試設定檔案。
使用 Microsoft 測試管理員執行測試
如果您使用 Microsoft Test Manager來執行測試,就必須建立環境才能使用測試控制器。 當您執行測試時,請選取下列其中一個選項:
執行:這個選項會使用測試計劃中指定的環境來執行測試。
以選項執行:您可以使用這個選項,以不同的環境執行測試。
若要尋找測試計劃中指定的環境,請使用下列主題,在測試計劃的 [屬性] 檢視中檢視環境:如何:選擇測試計劃的測試設定和環境。
當您知道用以執行測試的環境時,就可以使用下列程序來檢視這個環境的詳細資料。
若要判斷環境的測試控制器
開啟 [Microsoft Test Manager]:
依序選擇 [開始]、[所有程式]、[Microsoft Visual Studio 2013]、[Microsoft Test Manager]。
選擇 [實驗室中心]、[實驗室]。
[環境] 檢視隨即顯示。
從清單中選取您用來執行測試的環境,然後選擇 [開啟]。
環境隨即顯示。 您現在就可以檢視針對環境所選取的測試控制器。 測試控制器名稱與它執行所在的電腦名稱相同。
注意事項 測試控制器服務名為 Visual Studio Test Controller。如果測試控制器發生問題,您可能會想要驗證電腦是否已啟動,以及此服務是否在電腦上執行。
利用測試控制器執行測試時管理您的代理程式
當您將應用程式的角色加入至 Visual Studio 2013 的測試設定時,可以針對每一個角色加入代理程式屬性。 這樣就會決定適用於這個角色的測試代理程式。當您使用這些測試設定執行測試時,針對測試設定選取的測試控制器就會判斷所需的代理程式是否可用。 以下是決定代理程式可用性時可能發生的狀況:
必須執行測試的角色沒有可用的代理程式。 您的測試無法執行。 您可以執行下列其中一項動作,然後重新執行您的測試:
您可以等待代理程式可用於此角色,以執行測試。
如果有任何可用於此角色的代理程式離線,則您可以重新啟動代理程式以便其可用。
您可以將具有該角色正確代理程式屬性的其他代理程式加入至測試控制器。
您可以在測試設定中變更此角色的代理程式屬性,來啟用想要使用的其他代理程式。
執行診斷資料配接器的一個或多個角色沒有可用的代理程式。 可以執行您的測試,但是無法執行診斷資料配接器。 您可以在沒有診斷資料配接器的情況下執行測試,或者可以執行下列其中一項動作並重新執行測試:
您可以等待代理程式可用於這些角色。
如果有可用於此角色的任何代理程式離線,則您必須從 [測試] 功能表上的 [管理測試控制器] 中,將代理程式的狀態變更為線上。 此外,如果代理程式已與控制器中斷連線,則您可能不得不重新啟動該代理程式。
請驗證此測試回合可能需要的任何代理程式目前未執行測試。 您可以從 [測試] 功能表上的 [管理測試控制器] 中,檢查任何代理程式的狀態。
您可以將具有該角色正確代理程式屬性的其他代理程式加入至測試控制器。
您可以在測試設定中變更該角色的代理程式屬性,來啟用想要使用的其他代理程式。
從延遲簽署組件中載入測試
測試控制器和測試代理程式只能載入屬於強式簽署的組件或未簽署組件的測試組件。 有些測試組件為延遲簽署,因為它們對於應用程式必須具有實際執行組件的存取權。 不過,這些組件不是強式簽署,因為它們只是測試組件而且未發佈。 因為這些組件是延遲簽署所以無法載入,因此您必須在即將載入組件的所有電腦中 (包括測試控制器電腦),針對這些組件停用強式名稱驗證。 若要停用延遲簽署驗證,請使用 sn.exe。 也可能必須併入延遲簽署組件 (會要求略過其強式名稱驗證) 的公開金鑰語彙基元。
請使用Sn.exe (強式名稱工具),以停用延遲簽署驗證。
這將在您執行命令的電腦上,僅針對指定的組件停用強式名稱驗證。 您必須具有足夠權限才能執行此作業。
在測試回合完成後,請使用 SN.exe 命令重新啟用延遲簽署驗證。
停用與重新啟用簽署驗證的建議作法是在指令碼中使用 SN.exe 命令。 您可以在安裝指令碼中停用驗證,在清除指令碼中重新啟用驗證。
請參閱
概念
安裝並設定 Test Agent 和 Test Controller