如何:配置单元测试以面向 .NET Framework 的早期版本
在 Microsoft Visual Studio 中创建一个测试项目,.NET framework 的最新版本设置为目标,默认情况下。 此外,在中,如果升级测试从 Visual Studio 的早期版本的项目,它们升级面向 .NET framework 的最新版本。 通过编辑项目属性,可以显式重定将项目的目标重定向到 .NET framework 的早期版本。
可以创建单元测试以 .NET framework 的特定版本的项目。 目标版本必须 3.5 或更高版本,并且不能是客户端版本。 Visual Studio 启用的单元测试提供以下基本支持目标特定版本:
可以创建单元测试项目并使其面向 .NET framework 的特定版本。
可以运行单元测试面向 .NET framework 的特定版本从 Visual Studio 的在本地计算机上。
通过使用命令提示,的 MSTest.exe 可以运行单元测试面向 .NET framework 的特定版本。
您可以在生成代理(作为生成的一部分)上运行单元测试。
测试 SharePoint 应用程序
上文列出的功能还可以编写单元测试使用 Visual Studio,并且,对于 SharePoint 应用程序的总体测试。 使用 Visual Studio 中,有关以下内容的更多信息 如何开发 SharePoint 应用程序,请参见 Visual Studio 中的 SharePoint 开发、生成和调试 SharePoint 解决方案 和 验证和调试 SharePoint 代码。
限制
当您重定目标测试项目使用 .NET framework 的早期版本,应用以下限制:
在 .NET Framework 3.5 中,仅包含单元测试的测试项目支持多定向功能。 .NET Framework 3.5 不支持任何其他测试类型,如编码的 UI 或负载测试。 已阻止对单元测试以外的测试类型执行重定向操作。
执行测试所用的默认值主机适配器面向 .NET framework 早期版本只支持。 在 ASP.NET 主机适配器中不支持。 必须在 ASP.NET development server 环境中运行的 ASP.NET 应用程序必须与 .NET framework 兼容的最新版本。
当您运行支持 .NET Framework 3.5 多定向功能的测试时,将禁用数据收集支持。 您可以使用 Visual Studio 命令行工具来运行代码覆盖率。
使用 .NET Framework 3.5 的单元测试不能在远程计算机上运行。
不能以单元测试设置为 framework 的早期客户端版本。
重定目标为 .NET framework 的特定版本 Visual Basic 单元测试项目
创建新的 Visual Basic 单元测试项目。 在**“文件”菜单上选择“新建”,再选择“项目”**。
将显示**“新建项目”**对话框。
在**“已安装的模板”下,展开“Visual Basic”。 选择“测试”,然后选择“测试项目”**模板。
在 名称 文本框中,键入一个名称为您的 Visual Basic 测试项目并选择 确定。
在解决方案资源管理器中,从新的 Visual Basic 的快捷菜单中选择 属性 测试项目。
将显示 Visual Basic 测试项目的属性。
如下图所示,在 编译 选项中选择 高级编译选项。
使用的 以框架 (所有配置) 下拉列表将目标 framework 更改为 .NET Framework 3.5 或更高版本如下图的标注 B 所示。 不应指定客户端版本。
重定目标为 .NET framework 的特定版本 Visual C# 单元测试项目
创建新的 Visual C# 单元测试项目。 在**“文件”菜单上选择“新建”,再选择“项目”**。
将显示**“新建项目”**对话框。
在**“已安装的模板”下,展开“Visual C#”。 选择“测试”,然后选择“测试项目”**模板。
在 名称 文本框中,键入一个名称为您的 Visual C# 测试项目并选择 确定。
在解决方案资源管理器中,从您的新 Visual C# 快捷菜单中选择 属性 测试项目。
将显示 Visual C# 测试项目的属性。
在 应用程序 选项中选择 目标框架 然后选择 .NET Framework 3.5 或从中将一个最新版本下拉列表更改在下图 framework.as 显示的目标。 不应指定客户端版本。
重定目标为 .NET framework 的特定版本 C++/CLI 单元测试项目
创建新的 C++ 单元测试项目。 在**“文件”菜单上,选择“新建”,然后单击“项目”**。
将显示**“新建项目”**对话框。
警告
若要生成 C++/CLI 单元测试 .NET framework,则早期版本的 Visual C++ 中必须使用 Visual Studio 的对应版本。例如,若要面向 .NET framework 3.5,必须安装 Visual Studio 2008 和 Visual Studio 2008 Service Pack 1。
在**“已安装的模板”下,展开“Visual C++”。 选择“测试”,然后选择“测试项目”**模板。
在**“名称”文本框中,键入 Visual C++ 测试项目的名称,然后单击“确定”**。
在解决方案资源管理器中,从您的新 Visual C++ 选择 卸载项目 测试项目。
在解决方案资源管理器中,选择卸载的 Visual C++ 测试项目并选择 编辑 <project name>.vcxproj。
.vcxproj 文件将在编辑器中打开。
设置 TargetFrameworkVersion 于 3.5 版或在 PropertyGroup 的更高版本标记为 "Globals"。 不应指定客户端版本:
<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>
保存并关闭 .vcxproj 文件。
在解决方案资源管理器中,从您的新 Visual C++ 快捷菜单中选择选择的 重新加载项目 测试项目。