.Net:工具和技术的最新进展构架

时间:2010-08-25 15:22:31

标签: .net unit-testing frameworks continuous-integration

这对于那些在 .Net 工作的人来说是个问题,他们很好奇地扩展了他们的工具集,包括微软解决方案以外的东西。

来自Java世界,我会考虑使用每个新项目的工具集,例如:

  • IoC和MVC的春天。
  • JPA / Hibernate for persistence和ORM。
  • JUnit / TestNG用于单元测试。
  • Maven for build management。
  • 声纳代码质量指标。
  • CruiseControl / Hudson持续整合。

问题

高质量.Net项目的类似工具集是什么?

我的(基本)知识告诉我,我应该研究NHibernate和NUnit。此外,只要我的构建过程和测试脚本合理,我仍然可以使用CruiseControl for CI。 这有道理吗?还有其他有价值的工具吗? (来自MS或来自社区)

有些人告诉我微软最新的CI工具(团队系统等),但他们没有真正的实际操作经验。如果您有这样的经历,请随时分享。

5 个答案:

答案 0 :(得分:4)

我们目前的工作堆栈如下:

  • Castle Windsor for IoC
  • NHibernate for persistence / ORM
  • NUnit用于单元测试(我也在努力采用像Moq或Rhino.Mocks这样的模拟框架)
  • MSBuild for builds
  • 用于在Visual Studio中进行单元测试的TestDriven.NET
  • TeamCity for CI(虽然我们过去使用过CruiseControl.NET / NAnt)

答案 1 :(得分:3)

只需用'N'代替'J'即可完成......

  • Spring.Net(或Windsor / Castle或LinFu)
  • NHibernate的
  • NUnit(或我更喜欢的MbUnit,或xUnit.Net)
  • NDepend代码质量指标
  • CruiseControl.Net(或者,甚至更好:TeamCity)

也绝对有用:

  • NCover for code coverage analysis
  • 用于文本/静态代码分析的MS StyleCop / FxCop
  • 用于代码克隆检测的Simian

HTH
托马斯

答案 2 :(得分:1)

我会将TeamCity用作持续集成服务器 - 它易于使用和安装,可以运行NAnt,MSBuid等。

如果你计划使用NUnit,请确保你有办法在IDE中运行测试 - 使用TestDriven.NET或Resharper / CodeRush运行程序。

您可以将Spring.NET或StructureMap用于IoC(尽管任何其他框架都可以。)

答案 3 :(得分:1)

令人惊讶的是,我们目前的筹码是:

  • IoC的StructureMap
  • 我们推出了自己的ORM
  • MbUnit和Moq for Unit Testing
  • MSBuild for builds
  • 用于运行单元测试的Gallio Icarus / Visual Studio测试运行器
  • TeamCity for CI
  • FxCop / StyleCop代码质量

答案 4 :(得分:0)

使用TFS和TFS构建的Visual Studio 2010 Ultimate。

这涵盖了您列出的所有区域(以及更多)。如果我们需要更多(例如IoC),那么就会看看其他工具(第一个是用于模拟哪个VS不直接包含,然后可能是Moq(但是已经有一段时间了,因为我在那个领域的优点是))。