在 Visual Studio 11 中将会拥有新的单元测试管理器、在每个构建版本上运行测试的能力、更好的代码覆盖率工具、对第三方框架的支持、新的 VS Fakes 框架、更好的性能等,从而为开发者提供更好的单元测试体验。
我们最近报道过 VS11 Beta 支持多个测试框架。 这本身就是一项重大改善,另外,其中还对 MSUnit 和 Visual Studio 单元测试工作流做出了多项改善:
- 更好的单元测试管理器——像红绿条之类的指示器,通过记号搜索(例如,只搜索“失败的”测试),记录以优先显示失败的测试,对更多故障细节的链接(像错误信息和堆栈跟踪信息)。
- MS-Test 的改善——性能提升,对更多测试更好的处理,对 64 位.NET 的支持,多目标(multi-targeting),异步单元测试支持,本地单元测试支持。
- VS Fakes 框架——Stubs 和 Shims(运行时方法拦截程序)。 Shims 尤其有趣,因为它让你可以用自己的实现替换所有已经存在的方法,包括基础的类型和方法。 你可以阅读 MSDN 上更多关于Shims 的资料。 Mocks 对象消失了,但是你可以在 stub 方法的实现中做断言,从而在某些情况下克服这一点。
- 其他工具的改善——更简单的代码覆盖率工具(不需要安装),在每次构建之后自动运行测试。
还有更多特性没有在 VS11 beta 中发布,但是还在开发之中,像更好的启动性能,在单元测试管理器中分组和排序等等。 Peter Provost 写了一篇包括所有这些新特性的详细文章。
另外,微软不建议使用 VS 10 的一些单元测试特性:
- 测试列表
- 私有存取器
- 测试影响
- 生成单元测试向导
使用这些特性的遗留测试在 VS 11 中仍然有效,但是你无法使用它们创建新的测试。 之所以裁掉这些特性,主要是因为它的体验很差或者性能方面的原因。 在 VS 11 的最终版本中,其中的一些特性会被更好的功能所替代。
你可以从这里下载Visual Studio 11 的beta 版以及相关资料。
扩展阅读
Visual Studio 11 Beta 支持多种测试框架
预览Visual Studio11: 敏捷的支持、团队协作以及代码克隆监测
查看英文原文: VS11 Gets Better Unit Testing Tools, Fakes Framework
评论