Share via


HOW TO:建立 Web 效能測試外掛程式

這個主題適用於:

Visual Studio Ultimate

Visual Studio Premium

Visual Studio Professional 

Visual Studio Express

標題適用於 標題不適用於 標題不適用於 標題不適用於

Web 效能測試外掛程式可以讓您在 Web 效能測試的主要宣告式陳述式之外找出及重複使用程式碼。 自訂的 Web 效能測試外掛程式則能讓您在執行 Web 效能測試時呼叫某些程式碼。 在每個測試反覆項目中,Web 效能測試外掛程式都會執行一次。 此外,如果您覆寫測試外掛程式中的 PreRequest 或 PostRequest 方法,這些要求外掛程式將會分別在每項要求之前或之後執行。

您可以建立自訂的 Web 效能測試外掛程式,方法是從 WebTestPlugin 基底類別中衍生您自己的類別。

自訂的 Web 效能測試外掛程式可以搭配您所錄製的 Web 效能測試使用,使您能夠以最少量的程式碼,達成對 Web 測試的更高層級控制。 但是,自訂的 Web 效能測試外掛程式也可以與 Web 效能測試程式碼搭配使用。 如需詳細資訊,請參閱 HOW TO:建立 Web 效能測試程式碼

注意事項注意事項

您還可以建立負載測試外掛程式, 如需詳細資訊,請參閱 HOW TO:建立負載測試外掛程式

若要建立自訂的 Web 效能測試外掛程式

  1. 開啟包含 Web 效能測試的測試專案。

    如需如何建立測試專案的詳細資訊,請參閱 HOW TO:建立和設定自動化測試的測試專案

  2. 在 [方案總管] 中,以滑鼠右鍵按一下方案、選取 [加入],然後按一下 [新增專案]。

    [加入新的專案] 對話方塊隨即出現。

  3. 在 [已安裝的範本] 底下,選取 [Visual C#]。

  4. 在範本清單中,選取 [類別庫]。

  5. 在 [名稱] 文字方塊中,輸入類別的名稱。

  6. 按一下 [確定]。

  7. 新的類別庫專案會加入至 [方案總管],而且新的類別會出現在 [程式碼編輯器] 中。

  8. 在 [方案總管] 中,以滑鼠右鍵按一下新類別庫中的 [參考] 資料夾,然後選取 [加入參考]。

  9. 接著會顯示 [加入參考] 對話方塊。

  10. 按一下 [.NET] 索引標籤並向下捲動,然後選取 [Microsoft.VisualStudio.QualityTools.WebTestFramework]。

  11. 按一下 [確定]。

    [Microsoft.VisualStudio.QualityTools.WebTestFramework] 的參考就會加入至 [方案總管] 中的 [參考] 資料夾。

  12. 在 [方案總管] 中,以滑鼠右鍵按一下測試專案的頂端節點,此測試專案包含要加入 Web 效能測試外掛程式的負載測試,然後選取 [加入參考]。

  13. [加入參考] 對話方塊隨即顯示。

  14. 按一下 [專案] 索引標籤並選取類別庫專案。

  15. 按一下 [確定]。

  16. 在 [程式碼編輯器] 中,撰寫外掛程式的程式碼。 首先,建立衍生自 WebTestPlugin 的新公用類別。

  17. PreWebTestPostWebTest 這兩個事件處理常式的其中一個或同時在兩個內實作程式碼。 如需範例實作,請參閱下列的<範例>一節。

  18. 程式碼撰寫完成之後,請建置新專案。

  19. 開啟 Web 效能測試。

  20. 若要加入 Web 效能測試外掛程式,請按一下工具列上的 [加入 Web 測試外掛程式]。

    [加入 Web 測試外掛程式] 對話方塊隨即出現。

  21. 在 [選取外掛程式] 底下,選取您的 Web 效能測試外掛程式類別。

  22. 在 [所選外掛程式的屬性] 窗格中,設定外掛程式要在執行階段中使用的初始值。

    注意事項注意事項

    您可以從外掛程式公開任意數目的屬性,只要讓這些屬性成為公用、可設定且屬於基底型別 (例如整數、布林或字串) 的屬性即可。 您之後也可以使用 [屬性] 視窗來變更 Web 效能測試外掛程式屬性。

  23. 按一下 [確定]。

    此外掛程式就會加入至 [Web 測試外掛程式] 資料夾。

    警告

    當您執行使用外掛程式的 Web 效能測試或負載測試時,可能會收到類似下面的錯誤:

    Request failed: Exception in <plug-in> event: Could not load file or assembly '<"Plug-in name".dll file>, Version=<n. n. n. n>, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.

    如果您對任何外掛程式進行程式碼變更並建立新的 DLL 版本 (Version=0.0.0.0),但是外掛程式仍然參考原始的外掛程式版本,就會導致此錯誤發生。 若要更正此問題,請依照下列步驟執行:

    1. 在測試專案中,您將會在參考中看見警告。 移除並重新加入外掛程式 DLL 的參考。

    2. 從測試或適當的位置中移除外掛程式,然後再重新加入。

範例

下列程式碼會建立自訂的 Web 效能測試外掛程式,它會將項目加入至代表測試反覆項目的 WebTestContext 中。

執行 Web 效能測試之後,使用此外掛程式即可在 [Web 效能結果檢視器] 的 [內容] 索引標籤中看見已加入名為 [TestIteratnionNumer] 的項目。

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.VisualStudio.TestTools.WebTesting;

namespace SampleRules
{
    public class SampleWebTestPlugin : WebTestPlugin
    {
        // start counting iterations at 1 not 0
        // so that the iteration number we give matches the run number
        static int testIterationNumber = 1;

        public override void PostWebTest(object sender, PostWebTestEventArgs e)
        {
        }

        public override void PreWebTest(object sender, PreWebTestEventArgs e)
        {
            e.WebTest.Context["TestIterationNumber"] = testIterationNumber;
            testIterationNumber++;
        }
    }
}

請參閱

工作

HOW TO:建立要求層級外掛程式

HOW TO:建立 Web 效能測試的自訂擷取規則

HOW TO:建立 Web 效能測試的自訂驗證規則

HOW TO:建立負載測試外掛程式

HOW TO:建立 Web 效能測試程式碼

HOW TO:使用 Web 效能測試編輯器編輯現有的 Web 效能測試

參考

WebTestRequestPlugin

其他資源

建立和使用負載和 Web 效能測試的自訂外掛程式