c# - .net 中的测试驱动开发和单元测试

标签 c# .net unit-testing testing tdd

好的,所以我是一名新的 .net 开发人员,我在大学里做过一些,但大学毕业后从事 Coldfusion 工作,现在已经切换到 MVC3 中的一个新项目,使用 TDD、EF,整个九码。

我正在努力解决 TDD 的一个问题。

首先,据我所知,TDD 更像是一种“设计实践”,而不是在代码之前编写单元测试的实际方法?

大多数情况下,我对单元测试和 TDD 如何共存感到困惑。

我的 TDD 测试实际上是单元测试,还是我的 TDD 测试只是一种辅助设计的方式,然后我仍然使用单元测试来覆盖代码?

有人有什么想法吗?

最佳答案

TDD 测试通常(但不总是)是单元测试。非单元测试的示例可能是使用 WaitiN 的 UI 测试.考虑 TDD 最简单的方法是将其视为一门学科,确保以编程方式表达尽可能多的需求(业务和技术需求),以便您可以始终如一地定期将它们应用到您的代码库中,以确保当您进行更改时,您仍然满足要求。

在实践中,这往往会在您的架构中产生不同的(有些人会认为更好)模式,通常是为了解耦以允许模块被隔离测试。在更严格的 TDD 环境中,先开发测试(以使其失败)然后开发代码以满足测试的情况并不少见。此原则可确保您的测试完全表达您的要求的意图。

关于c# - .net 中的测试驱动开发和单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6770775/

相关文章:

c# - Java 的 Canvas 对象在 C# 中的等价物是什么?

android - 无法在 robolectric 的 android studio 中创建 "test"文件夹

c# - 如何对预期编译失败的 C# 代码进行单元测试以进行负面测试?

c# - ASP.NET Core 1.0 (vNext) 中的引用库

c# - 什么时候应该使用 IEnumerable 和 GetEnumerator?

c# - 当我运行 WPF MVVM 应用程序时,显示主窗口的两个实例

c# - 在扩展类的情况下如何处理非托管资源?

android - Robolectric:测试取消对话不会启动新 Activity

c# - C# 中的 Ironpython 导入模块导入 csv 模块时出错

c# - LINQ to Entities 仅支持无参数构造函数和初始值设定项。 (ASP.NET 网络 API)