【问题标题】:What .NET language you use to write Unit Tests? [closed]您使用什么 .NET 语言编写单元测试? [关闭]
【发布时间】:2008-11-30 21:43:29
【问题描述】:

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

您将单元测试用作 .NET 软件开发的一部分,您更喜欢使用哪种语言?您选择使用它的原因是什么?

我知道这在很大程度上取决于被测项目的语言,但我感兴趣的是在单元测试时是否有特定语言的偏好。

【问题讨论】:

    标签: .net unit-testing


    【解决方案1】:

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

    除了项目其余部分所用的语言之外,我看不出你会用什么语言编写单元测试,因为这可能会引起混淆,或者要求开发人员知道两种不同的语言才能工作在项目上。

    测试应遵循 KISS 原则。

    【讨论】:

    • 你有没有用 C# 以外的语言写过单元测试?
    • KISS 原则+1,测试是为了让事情变得更容易、易于理解和可维护。
    • 不,我们是 C# 开发公司,因此为了单元测试的目的引入 C# 以外的语言是不合逻辑的。在 VB 中进行测试(例如)不会提供任何优势,并且会妨碍未来的开发工作
    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

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

      【讨论】:

      • 那么如果必须测试 VB.NET 你会用 VB 编写测试吗?
      • 是的,我个人会尽量保持测试代码使用相同的语言,以尽可能轻松地在编写测试代码和应用程​​序代码之间切换。
      【解决方案4】:

      我几乎总是用开发应用程序的语言编写单元测试。除了这似乎是最合乎逻辑的想法之外,我真的没有理由这样做。我可以用多种语言编程,但这并不意味着在我之后拿起代码的人可以。

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-09-08
        • 2018-01-18
        • 1970-01-01
        • 1970-01-01
        • 2019-02-15
        • 2011-05-10
        • 1970-01-01
        相关资源
        最近更新 更多