2008-11-30 87 views
5

在过去,我使用C#编写了大部分单元测试,即使实际的软件开发采用另一种.NET语言(VB.NET,C++。NET等),但我可以使用VB来获得相同的结果。我想我使用C#的唯一原因是因为互联网中的大多数示例都是用C#编写的。你用什么.NET语言编写单元测试?

我使用单元测试.NET软件开发用什么语言你喜欢使用的,什么是您选择使用它的原因的一部分吗?

我知道它在proect的被测的语言,但我感兴趣的是找出什么是是否有特定的语言,而单元测试使用的偏好很大程度上依赖。

回答

6

你应该使用任何语言都适合你的开发团队。

我没有看到你会用除编写项目其余部分的语言以外的语言编写单元测试,因为它可能会导致混淆,或者需要开发人员知道两种不同的语言在这个项目上工作。

试验应遵循KISS原则。

1

我写我所有的.NET应用/业务代码在C#中,所以它是很自然的C#编写单元测试也是如此。我认为用另一种语言编写测试代码会在测试代码和应用程​​序代码之间引入不必要的分隔。

+0

因此,如果将不得不测试VB.NET,你会写在VB测试? – 2008-11-30 21:52:42

+0

是的,我个人会尽量保持测试代码使用相同的语言,以便尽可能方便地在测试代码和应用程​​序代码之间切换。 – 2008-11-30 21:55:00

2

C#,因为这是所有新的代码库正被写入。我会说这在很大程度上取决于公司的首选语言是什么。如果可能的话,我认为如果可能的话,最好修复一个,这也是测试写入的内容。如果只使用C++编写一些代码,那么将更常用的语言作为测试保留下来,以便更好地使用它们。

1

我几乎一直在写,我开发的应用程序相同的语言我的单元测试。除了最合理的想法之外,我并没有其他理由。我可以使用各种语言进行编程,但这并不意味着我可以随时获取代码。

我确实有一个例外。当我用F#编写代码时,我经常用C#编写单元测试。这是因为IDE不支持F#单元测试。

的第二个原因是,单元测试很多时候都不是很大的代码。它可能需要经常进行一些awkard设置来测试角落场景。在这种情况下,我经常发现F#类型的安全性很难测试这种情况。这可能只是我缺乏F#的经验,但我发现使用C#创建这些场景更容易。