HOW TO:將單元測試設定成以 .NET Framework 3.5 為目標

當您使用 Visual Studio 2010 時,測試專案中的預設目標 .NET Framework 版本是 .NET Framework 4。 此外,如果測試專案是從 Visual Studio 2008 升級,升級的測試專案預設會以 .NET Framework 4 為目標。 您可以編輯專案屬性,將專案明確重設為以 .NET Framework 3.5 為目標。

警告

若要將測試專案重設為以 .NET Framework 3.5 為目標,您必須安裝 Visual Studio 2010 Service Pack 1。

Visual Studio 2010 Service Pack 1 為以 .NET Framework 3.5 為目標的單元測試提供下列基本支援:

  • 您可以建立單元測試專案,將專案設定為以 .NET Framework 3.5 為目標。

  • 您可以在本機電腦的 Visual Studio 2010 Service Pack 1 中,執行以 .NET Framework 3.5 為目標的單元測試。

  • 您可以在命令提示字元中使用 MSTest.exe,執行以 .NET Framework 3.5 為目標的單元測試。

  • 您可以在組建代理程式上執行單元測試做為組建一部分。

測試 SharePoint 2010 應用程式

上列功能也讓您使用 Visual Studio 2010 Service Pack 1 撰寫 SharePoint 2010 應用程式的單元測試和整合測試。 如需詳細資訊以了解如何使用 Visual Studio 2010 開發 SharePoint 2010 應用程式,請參閱 Visual Studio 中的 SharePoint 開發建置和偵錯 SharePoint 方案使用 ALM 功能驗證及偵錯 SharePoint 程式碼

使用限制

當您將測試專案重設為以 .NET Framework 3.5 為目標時,適用下列限制:

  • 在 .NET Framework 3.5 中,針對只包含單元測試的測試專案才支援多目標。 .NET Framework 3.5 不支援任何其他測試類型,例如自動程式碼 UI 或負載測試。 針對非單元測試的測試類型則會禁止重設目標。

  • 只有在預設主機介面卡才支援執行 .NET Framework 3.5 測試。 ASP.NET 主機介面卡不支援執行這類測試。 必須在 ASP.NET 程式開發伺服器內容中執行的 ASP.NET 應用程式,必須與 .NET Framework 4 相容。

  • 當您執行支援 .NET Framework 3.5 多目標的測試時,會停用資料收集支援。 您可以使用 Visual Studio 命令列工具執行程式碼涵蓋範圍。

  • 使用 .NET Framework 3.5 的單元測試無法在遠端電腦上執行。

將 Visual Basic 單元測試專案重設為以 .NET Framework 3.5 為目標

  1. 建立新的 Visual Basic 單元測試專案。 選取 [檔案] 功能表上的 [新增],然後按一下 [專案]。

    [新增專案] 對話方塊隨即出現。

  2. 展開 [已安裝的範本] 底下的 [Visual Basic]。 選取 [測試],然後選取 [測試專案] 範本。

  3. 在 [名稱] 文字方塊中輸入 Visual Basic 測試專案的名稱,然後按一下 [確定]。

  4. 在 [方案總管] 中,以滑鼠右鍵按一下新 Visual Basic 測試專案,然後選取 [屬性]。

    Visual Basic 測試專案的屬性隨即顯示。

  5. 選取 [編譯] 索引標籤,然後按一下 [進階編譯選項] 按鈕,如下圖所示。

    進階編譯選項

  6. 使用 [目標 Framework (所有組態)] 下拉式清單,將目標 Framework 從 [.NET Framework 4] 變更為 [.NET Framework 3.5],如下圖中的圖說文字 B 所示。

    目標 Framework 下拉式清單

    注意事項注意事項

    如果出現錯誤訊息提示,請依照訊息中的連結所提供的指示進行,或請參閱下列程序將測試專案重設為以 .NET Framework 3.5 為目標所需的可能額外步驟。

將 Visual C# 單元測試專案重設為以 .NET Framework 3.5 為目標

  1. 建立新的 Visual C# 單元測試專案。 選取 [檔案] 功能表上的 [新增],然後按一下 [專案]。

    [新增專案] 對話方塊隨即出現。

  2. 展開 [已安裝的範本] 底下的 [Visual C#]。 選取 [測試],然後選取 [測試專案] 範本。

  3. 在 [名稱] 文字方塊中輸入 Visual C# 測試專案的名稱,然後按一下 [確定]。

  4. 在 [方案總管] 中,以滑鼠右鍵按一下新 Visual C# 測試專案,然後選取 [屬性]。

    Visual C# 測試專案的屬性隨即顯示。

  5. 選取 [應用程式] 索引標籤,然後使用 [目標 Framework] 下拉式清單,將目標 Framework 從 [.NET Framework 4] 變更為 [.NET Framework 3.5],如下圖所示。

    目標 Framework 下拉式清單

    注意事項注意事項

    如果出現錯誤訊息提示,請依照訊息中的連結所提供的指示進行,或請參閱下列程序將測試專案重設為以 .NET Framework 3.5 為目標所需的可能額外步驟。

將 Managed C++/CLI 單元測試專案重設為以 .NET Framework 3.5 為目標

  1. 建立新的 C++ 單元測試專案。 選取 [檔案] 功能表上的 [新增],然後按一下 [專案]。

    [新增專案] 對話方塊隨即出現。

    警告

    如果您的測試專案是使用 Visual Studio 2008 建立的,而您想要使用 Visual Studio 2010 Service Pack 1 來建置以 .NET Framework 3.5 為目標的 C++/CLI 單元測試專案,則必須先在 Visual Studio 2008 上安裝 Visual Studio 2008 Service Pack 1,然後才能在 Visual Studio 2008 中使用專案。 這是以 Framework 3.5 為目標版本的需求。 只安裝 .NET Framework 3.5 可轉散發套件是行不通的。 Visual Studio 2010 中的 Visual C++ 工具 (例如 cl.exe) 只能以 .NET Framework 4 為目標。 因此,若要以 .NET Framework 3.5 為目標,您必須有來自該舊版的工具。 這些工具隨著 Visual Studio 一起發行,而不是隨著 .NET Framework。

  2. 展開 [已安裝的範本] 底下的 [Visual C++]。 選取 [測試],然後選取 [測試專案] 範本。

  3. 在 [名稱] 文字方塊中輸入 Visual C++ 測試專案的名稱,然後按一下 [確定]。

  4. 在 [方案總管] 中,以滑鼠右鍵按一下新 Visual C++ 測試專案,然後選取 [卸載專案]。

  5. 在 [方案總管] 中,以滑鼠右鍵按一下卸載的 Visual C++ 測試專案,然後選取 [編輯 <專案名稱>.vcxproj]。

    .vcxproj 檔案隨即在編輯器中開啟。

  6. 在標示為 "Globals" 的 PropertyGroup 中,將 TargetFrameworkVersion 設為 3.5 版。

    <PropertyGroup Label="Globals">
        <TargetName>DefaultTest</TargetName>
        <ProjectTypes>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}</ProjectTypes>
        <ProjectGUID>{CE16D77A-E364-4ACD-948B-1EB6218B0EA3}</ProjectGUID>
        <TargetFrameworkVersion>3.5</TargetFrameworkVersion>
        <Keyword>ManagedCProj</Keyword>
        <RootNamespace>CPP_Test</RootNamespace>
      </PropertyGroup>
    
  7. 儲存並關閉 .vcxproj 檔案。

  8. 在 [方案總管] 中,以滑鼠右鍵按一下新 Visual C++ 測試專案,然後選取 [重新載入專案]。

將測試專案重設為以 .NET Framework 3.5 為目標所需的可能額外步驟

如果您在將 Service Pack 1 安裝到 Visual Studio 2010 之前修改了 devenv.exe.config 檔案,需要額外步驟才能啟用以 .NET Framework 3.5 為目標。 Service Pack 1 的安裝若偵測到組態檔已修改,並不會覆寫它。

注意事項注意事項

如果您已經安裝 Visual Studio 附加元件或外掛程式,可以修改 devenv.exe.config 檔案。

如果您在安裝 Service Pack 1 之前修改了 devenv.exe.config 檔案,而檔案不正確,在下列情況下會出現錯誤訊息:

  • 您嘗試使用已安裝 Service Pack 1 的 Visual Studio 2010,將測試專案重設為以 .NET Framework 3.5 為目標。

  • 您嘗試開啟已重設目標的測試專案。

若要更正此錯誤,請使用下列程序。

若要將遺失的 XML 項目加入至組態檔

  1. 關閉 Visual Studio 2010 的所有執行個體。

  2. 以系統管理員身分開啟 Visual Studio 2010 命令提示字元。

  3. 如果您使用的是 32 位元 Windows,則變更目錄至 "%programfiles%\MicrosoftVisual Studio 10.0\Common7\IDE",如果使用的是 64 位元 Windows,則變更目錄至 "%programfiles(x86)%\MicrosoftVisual Studio 10.0\Common7\IDE"

  4. 在文字編輯器 (例如 notepad.exe) 中開啟 devenv.exe.config 檔案。

  5. 在 <assemblyBinding> 節點底下,加入下列項目:

    <dependentAssembly>
    
            <assemblyIdentity name="Microsoft.VisualStudio.QualityTools.UnitTestFramework" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
    
            <bindingRedirect oldVersion="10.1.0.0" newVersion="10.0.0.0"/>
    
          </dependentAssembly>
    
          <dependentAssembly>
    
            <assemblyIdentity name="Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Adapter" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
    
            <bindingRedirect oldVersion="10.1.0.0" newVersion="10.0.0.0"/>
    
          </dependentAssembly>
    
          <dependentAssembly>
    
            <assemblyIdentity name="Microsoft.VisualStudio.QualityTools.Tips.UnitTest.ObjectModel" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
    
            <bindingRedirect oldVersion="10.1.0.0" newVersion="10.0.0.0"/>
    
          </dependentAssembly>
    
          <dependentAssembly>
    
            <assemblyIdentity name="Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Tip" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
    
            <bindingRedirect oldVersion="10.1.0.0" newVersion="10.0.0.0"/>
    
          </dependentAssembly>
    
  6. 在 <configuration> 節點底下,加入下列項目:

    <appSettings>
        <add key="TestProjectRetargetTo35Allowed" value="true" />
     </appSettings>
    
  7. 儲存 devenv.exe.config 檔案。

  8. 重新啟動 Visual Studio 2010。

    現在您應該可以將測試專案重設為以 .NET Framework 3.5 為目標。

請參閱

概念

針對現有的程式碼建立和執行單元測試

其他資源

Visual Studio 中的 SharePoint 開發

建置和偵錯 SharePoint 方案