使用单元测试验证代码

通过单元测试,开发人员和测试人员可以快速查找 Visual C#、Visual Basic 和 Visual C++ 项目中各个类的方法中的逻辑错误。 单元测试可以创建一次,并在每次更改源代码时运行,以确保不引入 Bug。

关键任务

下面的主题可帮助您了解和创建单元测试:

任务

相关主题

了解单元测试的结构:介绍单元测试的各个部分,以及在使用 Visual Studio 测试工具创建单元测试时添加到解决方案中的文件。

创建和运行单元测试:介绍如何创建单元测试,包括数据驱动的单元测试以及针对没有源代码的 .dll 和 .exe 文件的单元测试。

创建特定类型单元测试时的注意事项:提供指向一些主题的链接,这些主题介绍针对 C++、泛型方法和 Web 服务进行的单元测试之间的差异及其他信息。

通过对单元测试使用负载测试来执行压力和性能分析:可以创建负载测试并向其添加单元测试,以帮助隔离应用程序中的性能和压力问题。

注意注意
创建和使用负载测试需要 Visual Studio 2010 旗舰版。

使用代码覆盖率确定通过单元测试进行测试的项目代码的比例:了解 Visual Studio Application Lifecycle Management 测试工具的代码覆盖率功能。

设置和强制实施质量要求:可以创建质量要求以在签入代码之前强制运行测试,从而帮助确保代码质量。

扩展单元测试类型:可以向可能不在单元测试框架内的测试添加功能。 例如,可以添加一个指定某个测试是否应以普通用户身份运行的测试属性。 也可以扩展框架,将行特性添加到某个方法并在测试内使用该行中的数据。

有关如何扩展单元测试框架的代码示例,请参见以下 Microsoft 网站

相关任务

查看测试结果

介绍测试结果及其处理方法,包括如何查看、保存和删除它们。

使用 Microsoft Visual Studio 运行自动测试

提供指向关于使用 Visual Studio 而不是使用 Microsoft 测试管理器来运行自动测试的信息的链接。

用于单元测试的强大工具

  • Pex   Pex 是一个 Visual Studio 外接程序,用于补充 .NET Framework 应用程序上的单元测试。 Pex 在 Visual Studio 代码编辑器中查找您的方法的输入和输出值。 您可以将这些值另存为将具有高代码覆盖率的小型测试套件。

  • Moles   Moles 允许您将任何 .NET 方法替换为委托。 Moles 通过使用 Detour 和 Stub 提供隔离来支持单元测试。 因为 Moles 在方法级别工作,所以当目标 API 不支持它时,它提供替代项进行模拟。 SharePoint 是一个受益于隔离的常见 API 示例,但不直接支持模拟。 Moles 还可用于错误植入,因为它使得在测试下向代码中注入任意行为变得轻松。

    Pex 仅对 MSDN 订户可用,并包含 Moles。 只有公众才可下载 Moles。 您可在 Pex and Moles(Pex 和 Moles)上查看有关这些工具的更多信息并下载它们。

参考

请参见

概念

执行常规开发任务

测试应用程序