共用方式為


HOW TO:從舊版升級自訂測試條件

本主題適用於 Visual Studio Premium 和 Visual Studio Ultimate,但不適用於 Visual Studio 2010 Professional 或 Visual Studio Express 版本。

為了讓您在舊版 Visual Studio 中建立的現有測試單元條件正確運作,您必須升級它。 升級所需步驟如下:

  • 更新參考

  • 加入擴充相容性屬性

  • 套用新的註冊程序

更新參考

若要更新專案參考

  1. (僅限 Visual Basic) 在 [方案總管] 中按一下 [顯示所有檔案]。

  2. 在 [方案總管] 中,展開 [參考] 節點。

  3. 以滑鼠右鍵按一下舊版 [Microsoft.Data.Schema.UnitTesting] 參考,然後按一下 [移除]。

  4. 在 [方案總管] 中,以滑鼠右鍵按一下 [參考] 節點,然後按一下 [加入參考]。

    -或-

  5. 在 [專案] 功能表上,按一下 [加入參考]。

    [加入參考] 對話方塊隨即出現。

  6. 按一下 [.NET] 索引標籤。 在 [元件名稱] 清單中,選取 [Microsoft.Data.Schema] 和 [Microsoft.Data.Schema.UnitTesting],然後按一下 [確定]。

    您的「測試條件」(Test Condition) 現在會使用正確的參考。

加入擴充相容性屬性

接下來,您必須確認您的測試條件類別具有擴充相容性屬性,如下列程序所示。 當您定義「擴充功能」(Feature Extension) 時,會使用特定「資料庫結構描述提供者」(Database Schema Provider,DSP) 或基底資料庫結構描述提供者宣告該擴充的相容性,以便針對正確的專案類型載入擴充。 如需擴充相容性屬性的詳細資訊,請參閱擴充 Visual Studio 的資料庫功能

若要加入擴充相容性屬性

  • 加入資料庫服務提供者擴充相容性屬性,如下列範例所示:

    <DatabaseServicesProviderCompatibility (GetType(DspCompatibilityCategory.None))> _
    <DisplayName("NewTestCondition")> _
    Public Class NewTestCondition
        Inherits TestCondition
    
    End Class
    
    [DatabaseServicesProviderCompatibility(DspCompatibilityCategory.None)]
    [DisplayName("NewTestCondition")]
    public class NewTestCondition:TestCondition
    {
       // Additional implementation to be added here
    }
    

套用新的註冊程序

在舊版 Visual Studio 中,您必須將測試條件安裝到全域組件快取。 這個版本的 Visual Studio Premium 或 Visual Studio Ultimate 則變更了註冊程序,如下列程序所示。 如需詳細資訊,請參閱 HOW TO:註冊和管理功能擴充

設好更新的參考之後,請確認您的組件是否已簽署和編譯。

下一個步驟是收集專案中產生的組件資訊,包括版本、文化特性 (Culture) 和 PublicKeyToken,以加快註冊自訂擴充組件的速度。

若要收集組件資訊

  1. 按照上面程序所示設好更新的參考並加入擴充相容性屬性之後,確認您的組件是否已簽署和編譯。

  2. 按一下 [檢視] 功能表上的 [其他視窗],然後按一下 [命令視窗] 開啟 [命令視窗]。

  3. 在 [命令] 視窗中輸入下列程式碼。 將 FilePath 替代為已編譯之 .dll 檔案的路徑和檔案名稱。 請在路徑和檔案名稱周圍加上引號。

    注意事項注意事項

    根據預設,已編譯之 .dll 檔案的路徑為 SampleGenerator\bin\Debug。

    ? System.Reflection.Assembly.LoadFrom(@"<FilePath>").FullName
    
  4. 按 ENTER。 該行應該看起來如下,其中含有您的特定 PublicKeyToken:

    " GeneratorDateRanges, Version=1.0.0.0, Culture=neutral, PublicKeyToken=nnnnnnnnnnnnnnnn"
    

    標記或複製此組件資訊;此資訊將用於下一個程序。

接下來,您將使用在上一個程序中收集的組件資訊來建立 XML 檔案。

若要建立 XML 檔

  1. 在 [方案總管] 中選取專案。

  2. 在 [專案] 功能表中選取 [加入新項目]。

    [加入新項目] 對話方塊隨即出現。

  3. 在 [範本] 窗格中,找出並選取 [XML 檔] 項目。

  4. 在 [名稱] 文字方塊中,輸入應用程式名稱,然後按一下 [加入] 按鈕。

    XML 檔會加入至 [方案總管] 中的專案。

    注意事項注意事項

    您必須使用您的 dll 名稱 (在此例中為 "myDllName" 後面接著 ".Extensions.xml"),組件才能正確註冊。

  5. 開啟並更新 XML 檔,以與此程序稍後的 XML 程式碼相符。 取代您在前面程序擷取的組件版本、文化特性和 PublicKeyToken。

    <?xml version="1.0" encoding="utf-8"?>
    <extensions assembly=""
                version="1" xmlns="urn:Microsoft.Data.Schema.Extensions"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xsi:schemaLocation="urn:Microsoft.Data.Schema.Extensions 
    
      Microsoft.Data.Schema.Extensions.xsd"> <extension type=" myDllName.myClassName" assembly="myDllName, Version=1.0.0.0, Culture=neutral, PublicKeyToken=nnnnnnnnnnnnnnnn" enabled="true"/>
    
    </extensions>
    
  6. 按一下 [檔案] 功能表上的 [全部儲存]。

接下來,您會將組件和 XML 檔複製到 Extensions 目錄。 當 Visual Studio Premium 啟動時,它會識別和註冊 <Microsoft Visual Studio 10.0>\VSTSDB\Extensions 目錄和子目錄中的任何擴充,以在工作階段中使用。

若要複製並註冊組件和 XML 檔到 Extensions 目錄

  1. 在 <Microsoft Visual Studio 10.0>\VSTSDB\Extensions\ 目錄中建立名為 CustomGenerators 的新資料夾。

  2. 將組件檔從 My Documents\Visual Studio 2008\Projects\<projectName>\<projectName>\bin\Debug\ 目錄複製到您剛才建立的 <Microsoft Visual Studio 10.0>\VSTSDB\Extensions\CustomGenerators 目錄中。

  3. 將 XML 檔從 My Documents\Visual Studio 2008\Projects\<projectName>\<projectName>\ 目錄複製到您剛才建立的 <Microsoft Visual Studio 10.0>\VSTSDB\Extensions\CustomGenerators 目錄。

    秘訣秘訣

    最佳做法是將擴充組件置於 <Microsoft Visual Studio 10.0>\VSTSDB\Extensions 目錄中的資料夾。 這有助您識別哪些擴充功能已包含在產品中,哪些是自訂建立的。 也建議使用資料夾,將擴充功能組織到特定類別。

請參閱

工作

HOW TO:建立資料庫單元測試設計工具的測試條件

逐步解說:使用自訂測試條件驗證預存程序的結果