嗨!我最近尝试在C#
中开发一个小型项目,在整个项目中,我们的团队使用测试驱动开发(TDD
)技术(xunit, moq
)。C++&正确的TDD
我真的觉得这很棒,因为(当与C#
配对时)这种方法允许在编码时放松,在重构时放松和放松。我怀疑所有这些东西实际上简化了编码过程,并且它允许(最终,对我来说)以较少的脑细胞工作获得相同的结果。
之后当我尝试使用TDD
搭配C++
(我用Google Test
和Google Mock
库),而且,我也不知道为什么,但我倒认为TDD这里是退后一步,在快速应用开发方面。
我有些时候不得不花费大量时间思考我的测试,建立适当的嘲笑,重建它们并在我的显示器上发誓。
而且,我显然不能问“我做错了什么?或者“我的方法出了什么问题?”,因为我不知道要描述什么。但是,如果有人已经习惯TDD
在C++
(也可能是C#
),你能否告诉我如何正确地做到这一点。
框架建议,架构方法,普通的编码建议 - 如果您有TDD & C++
的经验,请回复。
你能描述一下你用于C#的设置和C++&gmoc&gtest的设置之间最恼人的区别是什么?我在C++中使用了gdock + gtest for TDD,但是我看不到这个工具有任何缺陷,但是我没有在C#中使用xunit + moq(地狱,我没有用C#编写这么多),所以我可能不知道我错过了什么。 – chalup 2010-05-25 15:47:04
嗯,我认为'jalf'实际上写了我的意见。我不能用比他更好的语言来解释这些,但是当你用C#编写代码并编写所有界面的东西等等时,它看起来很“天生”。当你试图在C++中做同样的事情时,它开始看起来像你试图强迫自己使用一些非常古怪的东西。也许这只是关于经验,并习惯以正确的方式思考。 – 2010-05-25 19:55:44