我正在考虑将单元测试添加到正在生产的现有项目中.它是在18个月之前开始的,之前我真的看到了TDD (面掌)的任何好处,所以现在它是一个包含大量项目的相当大的解决方案,我没有最模糊的想法从哪里开始添加单元测试.是什么让我觉得这是偶尔一个旧的bug似乎重新出现,或者一个错误被检查为固定而没有真正修复.单元测试可以减少或防止出现这些问题.
通过阅读有关SO的类似问题,我看到了一些建议,例如从错误跟踪器开始,并为每个错误编写测试用例以防止回归.但是,我担心我最终会错过大局并最终错过了如果我从开始使用TDD就会包含的基本测试.
是否有任何应遵循的流程/步骤,以确保现有解决方案经过适当的单元测试而不仅仅是提交?如何确保测试质量良好,并且不仅仅是测试的情况比没有测试更好.
所以我想我也要问的是;
(显然,第三点的答案完全取决于您是否与管理层或开发人员交谈)
增加赏金以尝试吸引更广泛的答案,这不仅证实了我现有的怀疑,这是一件好事,而且还有一些很好的理由.
我的目标是稍后用优点和缺点写出这个问题,试图向管理层表明,值得花费时间将产品的未来发展转移到TDD上.我希望在没有自己偏见的观点的情况下接近这一挑战并发展我的推理.
也许我的问题是一个新手,但我不能真正理解我将使用junit的情况?
无论我是编写简单的应用程序还是更大的应用程序,我都会使用System.out语句测试它们,并且它对我来说很容易.
为什么在项目中创建带有JUnit的测试类,如果我们仍然需要调用相同的方法,检查它们返回的内容,那么我们是否需要注释所有内容?
为什么不写一个类并一次测试它System.out而不是创建Test-classes?
PS.我从未参与过我刚刚学习的大型项目.
那么目的是什么?
测试驱动开发在过去几年中一直是.NET社区的风靡一时.最近,我听到了ALT.NET社区关于BDD的抱怨.它是什么?是什么让它与TDD不同?
使用C#,我需要一个名为User具有用户名,密码,活动标志,名字,姓氏,全名等的类.
应该有方法来验证和保存用户.我只是为这些方法编写测试吗?我甚至需要担心测试属性,因为它们是.Net的getter和setter?
单元测试对我来说听起来很棒,但我不确定我是否应该花时间真正学习它,除非我能说服其他人具有重要价值.我必须说服其他程序员,更重要的是说服管理中的bean计数器,所有额外的时间花在学习测试框架,编写测试,保持更新等等......将为自己付出代价,然后是一些.
有什么证据?有没有人真正用两个独立的团队开发相同的软件,一个使用单元测试而另一个没有,并比较结果?我对此表示怀疑.我只是应该证明这一点,"在互联网上查找,每个人都在谈论它,所以它一定是正确的做法"?
哪些证据可以说服外行人员单位测试值得付出努力?
我最近看完了敏捷秋天的截屏视频,我正在寻找更多类似范围的材料.基本上,我正在寻找提供TDD/BDD流程的截屏视频,同时开发一些"真实"应用程序(或部分内容) - 所以请不要20分钟.我很惊讶没有找到这样的东西.如果您知道任何符合要求的资源,请列出它们.
我不知道如何在流星中进行测试驱动开发.
我在文档或常见问题解答中没有提到它.我没有看到任何例子或类似的东西.
我看到有些软件包正在使用Tinytest.
我需要开发人员的回应,这是什么路线图.有点像:
我的公司对我们的代码进行单元测试是相当新的.我已经阅读了一段时间关于TDD和单元测试的信息并且确信它们的价值.我试图让我们的团队相信TDD值得学习和改变我们的编程思路,但这是一场斗争.这让我想到了我的问题.
TDD社区中有很多人非常虔诚地写测试然后编写代码(我和他们一起),但对于一个正在与TDD斗争的团队来说,妥协仍然会带来额外的好处吗?
编写代码后,我可能成功让团队编写单元测试(可能是检查代码的要求),我的假设是编写单元测试仍然有价值.
将陷入困境的团队带入TDD的最佳方式是什么?如果失败的话,即使代码写完之后仍然值得编写单元测试吗?
编辑
我从这里得到的是,在编码过程中的某个地方开始进行单元测试非常重要.对于那些接受概念的团队成员,开始更多地转向TDD并首先进行测试.感谢大家的投入.
跟进
我们最近开始了一个新的小项目,并且团队的一小部分使用了TDD,其余的在代码之后编写了单元测试.在我们完成了项目的编码部分之后,那些编写单元测试代码后,他们惊讶地看到TDD编码器已经完成并且代码更加可靠.这是赢得怀疑论者的好方法.我们仍然有很多成长的痛苦,但意志之战似乎已经结束.感谢所有提供建议的人!
在模拟框架中,您可以模拟对象或监视它.这两者之间有什么区别?我应该/何时使用一个而不是另一个?例如,看看mockito,我看到使用间谍和嘲讽做类似的事情,但我不确定两者之间的区别.
我有6个月的Rails开发经验.我已经构建了一个现在正在使用的Web应用程序,它具有身份验证和授权以及postgresql db.
我正在继续我的第二个Rails应用程序,但这一次,经过经验教训,我想用TDD开发它,因为我注意到它更容易扩展它并修复bug.它发展缓慢,但从长远来看,它更容易处理.
我听说过Rspec和Cucumber,但他们完全被他们搞糊涂了.
我想知道RSpec和Cucumber之间的区别以及它们的用途.
从初学者(也是唯一的开发者)的角度来看,是否确实需要测试框架也是有用的.