【Testing】Visual Studio Web 效能測試結合 Token 驗證模式

  • 652
  • 0

在現今的時代下,Web API 是一個頗為流行的標準。

過往在做壓力測試,可能面對的是做畫面上的錄製進行。

在倡導前後端分離的世代,只針對 Web API 進行壓力測試反而是比較常遇到的狀況。

而 API 間的認證,很常見的是 Token Base 的驗證方式。

這篇文章就是為了解決測試 Web API 時,我們要怎麼動態的處理 Token 。

這篇文章參考來源:Visual Studio Web Tests and OAuth: Taming the elusive Access Token

一個好的測試,應該不會因應時間的變化而改變結果。

Token Base 的驗證方式往往會有時效性的問題,所以,我們不該將 Token 設定成一個固定的變數。

在 Visual Studio 2017 的 Web效能測試中,我們可以設定一個變數。

設定方式如下:

透過屬性再進行 Key 和 Value 的調整與設定。

使用方式,只需要在你想使用變數的地方改用兩個大刮號包覆變數。

Bearer {{AccessToken}}

這時候我們這狀態會變成如下:

我們可以手動一直去變更 AccessToken 內的內容,但是,這個測試就有點變調了。

他不會是一個好的測試。

這時候我們加入去取 Token 這支 API 的動作在最上面。

重點就在擷取規則這個部分。

當初我看英文原文時,找這個項目找好久。

這邊透過【擷取規則運算式】來擷取 Response 的內容,透過正規表達式來過濾你想要的內容。

變且在 Step 4 的時候填入你的內容變數的 Key 值,以這邊來說會是 【AccessToken】

做到這邊,我覺得這個測試就算一個完整了。

每次執行測試 Token 都會重新取得。