(分散式的負載測試(Distributed Load Test) - 各角色的職責關係圖:ref from:http://bit.ly/2nbqsbY)
參考文章:
■ 使用 Visual Studio 設定 Test Controller 和 Test Agent 以便管理測試
來自 <https://msdn.microsoft.com/zh-tw/library/hh546459.aspx>
>>
■ 使用 Visual Studio 管理 Test Controller 和 Test Agent
來自 <https://msdn.microsoft.com/zh-tw/library/dd695837.aspx>
>>
■ Will保哥的VS2010安裝設定方式
>> 基礎的測試概念實務說明~
■ VS2017 建立 WebTest / LoadTest 官方說明
https://docs.microsoft.com/en-us/visualstudio/test/quickstart-create-a-load-test-project
>>一步步的教學文。
緣由 & 開始疑問點:
原本自已熟悉的壓測模式,是直接由各自的機器(NoteBook)發動Visual Studio (Enterprise版本),壓測目標環境。
而此次,計畫由 Test Controller / Test Agent (控制器 /代理)來發動壓力測試。
如此一來,可省下 各台都需安裝 VS Enterprise 版本。而變成只要安裝一台即可。
Q1:它本身的架構是什麼?各自的職責是什麼??最小建置單位是什麼??
>>最初就是架構不熟,花了不少時間在看這資訊。(即上述的參考資料)
Q2:驗証這架構OK的方式是什麼?如何Run起這壓測情境?
>>這就關系到VS / TC / TA之間的測試&驗証了。
(VS=visual Studio / TC = Test Controller / TA = Test Agent)
本篇重點:
■ 不是 一步步的教學文,僅是列出重要的Key Point 。
■ 環境以2017為版本: Visual Studio 2017 / Test Controller 2017 / Test Agent 2017
■ 負載測試的架構模式 (可單機版 / 也可多機器版)。
■ Test Controller / Test Agent 的重點Port:6901(連至TC)、6910(連至TA)。
■ 安裝 Visual Studio / Test Controller / Test Agent 重點圖
■ 彼此之間的溝通,需借由 一個 網域身份 執行 (或是 採用同帳密 這種偷吃步的方式處理 XD)
■ 錯誤排除
環境準備:
Visual Stuido (Enterprise):
參考文:https://docs.microsoft.com/en-us/visualstudio/test/quickstart-create-a-load-test-project
1. 只有在 Enterprise 版本才可以使用 Web performance & load test
2. 啟用方式,要在安裝檔勾選這項目,到時VS 才可以建立 WebTest / LoadTest
才可建立的專案類型:
建立相關的檔案類型:WebTest(錄製腳本的)、LoadTest(負載測試)
Test Controller / Test Agent :
下載:
https://visualstudio.microsoft.com/zh-hant/downloads/?q=agents
(安裝時要連網路:Test Controller 要 1.5G / Test Agent 要367MB)
註2:可於Test Controller 那安裝 Sql Express 版本,讓它數據資料直接寫至此 Sql Express 資料庫內。
建置架構:
建置的架構:
三個角色:VS / TC / TA ,由VS授權&發動,TC觸發TA,且收集各Agent的資料數據 (ref from http://bit.ly/2nbqsbY )
而也可以「多角色」彙集於一身(同台機器上)。
另一張權責分工架構圖: (ref from http://bit.ly/2ne3ocv )
各個機器間的Port關聯:
關鍵: 連至Test Controller (6901 port )、連至Test Agent (6910 port)
而這Port是預設的,若要修改,可至各機器的下述位置修改: (ref from http://bit.ly/2LV5sVU)
安裝Test Controller重點:
1. 至官網下載 Test Controller (詳見上述:環境準備)
2. 開始安裝 & 設定 Test Controller
a. 使用網域身份帳號
b. 設定 負載測試 資料庫的儲存位置
(此為建立好的資料庫樣式)
安裝Test Controller後,會產生 三個 使用者群組:再將剛剛設定的網域身份,加入至此三個群組之下 (ref from http://bit.ly/2ObzNMr )
- TeamTestControllerAdmins
- TeamTestControllerUsers
- TeamTestAgentService
如有遇到此 防火牆 設定的問題:
啟用對應的 應用程式,讓它可以允許通訊:
(安裝完成)
安裝Test Agent 重點:
1. 至官網下載 Test Agent (詳見上述:環境準備)
2. 設定Test Agent :
a. 選擇以「服務」方式運作
b. 設定下述資訊:執行身份 / 向Test Controller 註冊
3. 設定Agent 完成。
驗証LoadTest安裝狀態:
在「loadTest」檔案下,點選「Manage Test Controller」,設定「Controller」(自行輸入)、若是有看到各Agent 狀態,即是成功
(另一個範例圖示)
要調整它的測試方法:改為 Remote Execution
開啟測試專案的 Local.testsettings 檔案: (是用Open 開,而非是選它的Property )
調整它的「角色」執行方法,採用「遠端執行」,然後設定「控制器」(自行輸入)
再來就是 原先 觸發 Load Test 的方式,開始進行 壓力測試。
(註:自行再調整 壓測人數 / 負載模式(常數or逐步..) / 混合模型 )
(THE END)
0 意見 :
張貼留言