有什么建议吗?在C#中使用visual studio。
是否有任何特定的工具或方法可以解决这个问题?
对不起,我应该更具体一点。我正在使用ASP.Net 2.0,并且正在寻找更多像jUnit for Java这样的工具。我看了一下NUnit和NUnitAsp,看起来很有前途。我甚至不知道Visual Studio Pro有一个测试套件,所以我会看看所有这些选项(今年夏天我刚刚开始使用Visual Studio / Asp.net / C#)。
答案 0 :(得分:32)
男孩,这是一个很普遍的问题。我会尽我所能,但要准备好让我想念一英里。
假设
要做的第一件事就是组织(或计划)您的代码,以便对其进行测试。当时最流行的两种设计模式似乎是MVP和MVC。两者都将应用程序的逻辑与视图分开,这样您就可以在没有视图(网页)阻碍的情况下测试逻辑。
无论是MVP还是MVC都会有效。 MVC具有使用Microsoft框架almost ready to go的优势。
一旦选择了鼓励可测试性的框架模式,就需要使用单元测试工具。 NUnit是一个很好的起点。 Visual Studio Professional有testing suite built it,但NUnit + TestDrive.NET也适用于IDE。
这是一种霰弹枪的信息爆炸。我希望有一些如果它击中。实用书架有一个good book covering the topic。
答案 1 :(得分:4)
大约一年前有一个关于Polymorphic Podcast的截屏系列,它在ASP.NET中对MVP实现进行了很好的介绍。通过这种方式实施,单元测试更加自然地落实到位。
答案 2 :(得分:4)
这些框架对于集成测试非常有用,但它们无法提供单元测试,即测试与持久性,业务逻辑等无关的View。
对于单元测试Asp.Net Webforms以及MVC,您可以使用Ivonna。例如,您可以模拟数据库访问并验证模拟的记录是否显示在数据网格中。或者,您可以模拟成员资格提供程序并测试登录方案,而无需导航到登录页面并输入凭据,就像集成测试一样。
答案 3 :(得分:3)
WatiN是我发现的最好的。它集成到Visual Studio单元测试或nunit&你可以在浏览器中做任何你需要的东西(单击链接,提交表单,查找文本/图像等),再加上用.net写的,这样你就不需要安装ruby了(就像你为watir做的那样) ,这是一个非常棒的工具)
答案 4 :(得分:2)
NUnit是您的最佳选择。 你可以在这里找到一些链接:
答案 5 :(得分:2)
看一下http://selenium.openqa.org/它提供了一种很好的自动化方法来构建连接到浏览器的单元测试。有一个很好的firefox插件用于记录测试,可以使用几乎任何单元测试框架。我们上个月在本地用户组会议上进行了演示/演示,看起来很棒。
答案 6 :(得分:2)
您最好的选择是将模型逻辑与演示文稿分开,并使用NUnit或类似工具对模型进行彻底的单元测试。测试用户与网页的交互可能很繁琐。
如果您确实希望对用户与网页的互动进行单元测试,那么一些提供的工具(例如waitn)似乎很好,我听说过的是Selenium