Visual Studio 2008的单元测试入门介绍

11
我是一个自学成才的开发者,我的经验都是在我自己开发的一些小应用程序中积累的。
我目前正在开发一个公开的应用程序,意识到我需要开始进行良好的单元测试,以便捕捉回归并确保一切正常运行。
我已经看过一个之前的问题。我想知道是否有任何在线资源专门处理在Visual Studio 2008中使用C#单元测试,最好有示例。
编辑:我使用的是Visual Studio 2008专业版,用于Windows应用程序开发,没有网页开发。
6个回答

10
您没有说明使用的是哪个VS2008版本。如果是专业版或更高版本,则包含MSTest,但很多人与它有问题——它并不总是非常直观,并且需要进行过多的设置才能完成简单的事情,例如覆盖范围/文件部署。

这里提供了一个演示

作为建议,我建议使用带有NUnit(免费)和TestDriven.NET(非免费)的VS2008。它消除了所有痛苦,让你只需编写简单的东西,如:

[TestFixture]
public class Foo {
    [Test]
    public void Bar() {
        Assert.AreEqual(2, 1+1);
    }
}

然后只需右键单击(在类、方法、项目或解决方案上),并使用TestDriven.NET提供的测试选项,包括(如果您有MSTest)"Test With -> Team Coverage",它使用MSTest覆盖工具运行您的NUnit测试,包括将颜色反馈到IDE中以显示哪些行被执行。无需处理MSTest要求您使用的"testrunconfig"和其他文件。


4

1

您没有说明您是在开发Web还是Windows应用程序,但如果您也正在学习ASP.NET,那么Richard Dingwall有一些优秀的链接可以提供给您,这些链接包含使用TDD的示例ASP.NET MVC应用程序。这些示例使用了nUnit以及Rhino.Mocks和Moq等模拟框架。

请看他的博客文章,其中包含一些链接:

http://richarddingwall.name/2008/11/02/best-practice-dddtdd-aspnet-mvc-example-applications/

James Gregory在这里发布了一份关于单元测试的很好的入门指南:

http://blog.jagregory.com/2007/07/17/getting-with-it-test-driven-development/

希望这能帮到你!



0

0

如果你对于不仅仅是普通单元测试感兴趣,那么可以看看PEX


我听说Code Contracts和PEX工具将成为.NET 4.0的一部分。 - MattValerio

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接