团队建设练习教授写作单元测试

时间:2013-05-31 23:06:05

标签: unit-testing legacy-code

我最近开始为一家拥有非常大的遗留代码库的公司工作。产品非常好,我们有一个庞大而快乐的客户群......但是!

代码库很乱。它是Classic ASP和.NET的混合体。几乎没有任何单元测试,代码不是可测试的。我可以看到开发人员对代码库失去了信心,可以接受的说:“好吧,代码这么糟糕,我为什么要费心去编写测试。”所以人们不这样做。有些人忘了,有些人从未开始。关键是即使有易于测试的错误,也不会编写测试。

我非常接近说服我的老板整整一个星期没有开发,并且本周致力于教学和编写系统的单元测试。我的计划是从半天的单元测试讲座开始,下半年我想做一些团队建设练习,这将教会人们一些基本的测试技巧。然后几天结对编程单元测试我们的系统,并在小组讨论中审查它们。用“老师”帮助有问题的人。

我正在寻找灵感的是团队建设练习。我想要一些我能用它做的“离线”练习。我们大约有40个人,所以我们可以分成小组。

事情是,我无法在任何地方找到任何此类行动。我不知道人们以前是否这样做过。我的一个建议是让人们处理伪代码,然后提出测试策略,但我认为这太“真实”了。我希望它更加抽象,并且不会让人们对编程抱怨,或者担心不能表演。

有没有人听说过这样的事情,或者有没有人对可行的方法有什么建议?

非常感谢所有输入。

...哦,我得到的印象是人们会非常欣赏这样的事情。因此,当我宣布这一点时,我预计不会有重大推动。希望我们能够在对本周代码库重新充满信心的情况下出现在本周!

谢谢JP

1 个答案:

答案 0 :(得分:0)

对我而言,进入uint测试的最佳工具是玩FizzBuzz的团体游戏。

您无需编写任何代码即可了解需要测试的内容。要编写前几个测试,你只需要开始查看序列中的前几个数字,然后在心理上决定输出应该是什么,并且测试就是你的。

但是,当编写单元测试时,需要编写的代码非常具有威胁性。