我正在写一篇简短的论文来阐述单元测试和TDD的好处.我在最后加入了一个名为"超越TDD"的简短部分,其中我希望能够涵盖基于TDD,BDD和ATDD的几种不同方法.
我对BDD很熟悉(我使用过SpecFlow),但在读完ATDD之后,听起来非常相似.BDD和ATDD只是基本上相同过程的两个名称 - 以"无处不在的"语言记录行为,生成自动验收测试套件,然后继续进行验收测试?
我是Stack Overflow的新手,所以请放轻松我吧!我正在深入阅读C#,但我遇到了一个我不相信的情景.快速搜索网络也没有产生任何结果.
假设我定义了以下重载方法:
void AreEqual<T>(T expected, T actual)
void AreEqual(object expected, object actual)
Run Code Online (Sandbox Code Playgroud)
如果我在AreEqual()不指定类型参数的情况下调用:
AreEqual("Hello", "Hello")
Run Code Online (Sandbox Code Playgroud)
是否调用了该方法的通用或非泛型版本?是通过推断类型参数调用泛型方法,还是使用隐式转换为方法参数调用的非泛型方法System.Object?
我希望我的问题很明确.提前感谢任何建议.