Unit testing 教授编写单元测试的团队建设练习

Unit testing 教授编写单元测试的团队建设练习,unit-testing,legacy-code,Unit Testing,Legacy Code,我最近开始为一家拥有大量遗留代码库的公司工作。产品真的很好,我们有一个庞大而快乐的客户群。。。但是 代码库一团糟。它是经典ASP和.NET的混合体。几乎没有任何单元测试,代码也不可测试。我可以看到开发人员正在对代码库失去信心,可以接受这样的说法:“好吧,既然代码这么糟糕,为什么我要费心编写测试呢?”,所以人们不这么认为。有些人忘记了,有些人从未开始。关键是,即使有容易测试的bug,测试也不会被编写出来 我很快就能说服我的老板花一整周的时间进行开发,并将这周的时间用于教授和编写系统的单元测试。我的

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

代码库一团糟。它是经典ASP和.NET的混合体。几乎没有任何单元测试,代码也不可测试。我可以看到开发人员正在对代码库失去信心,可以接受这样的说法:“好吧,既然代码这么糟糕,为什么我要费心编写测试呢?”,所以人们不这么认为。有些人忘记了,有些人从未开始。关键是,即使有容易测试的bug,测试也不会被编写出来

我很快就能说服我的老板花一整周的时间进行开发,并将这周的时间用于教授和编写系统的单元测试。我的计划是从为期半天的单元测试讲座开始,下半天我想做一些团队建设练习,教人们一些基本的测试技能。然后几天为我们的系统进行结对编程单元测试,并在小组讨论中回顾它们。与“老师”一起帮助有问题的人

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

问题是我在任何地方都找不到这样的练习。我不知道以前有没有人这样做过。我的一个建议是让人们研究伪代码,然后提出测试策略,但我认为这太“真实”了。我希望它变得更抽象一点,不要让人们对编程产生疑虑,或者担心不能执行

有没有人听说过类似的事情,或者有没有人对什么可行有什么建议

非常感谢您的所有意见

。。。哦,我的印象是人们会非常喜欢这样的东西。因此,当我宣布这一点时,我预计不会有重大的倒退。希望我们能在本周重新对我们的代码库充满信心


谢谢JP,进入uint测试的最好工具就是玩一个团队游戏

您不必编写任何代码来了解需要测试的内容。要编写前几个测试,您只需开始遍历序列中的前几个数字,然后在心里决定输出应该是什么,然后就是您的测试


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

大多数人都知道如何编写测试,他们只是不这么做。所以我想找一个练习来教一些更微妙的观点。消除一些阻碍和恐惧。我认为他们中的一些人害怕写测试,因为他们在测试时感到不安全或自卑。我知道他们不是。这有意义吗?我想给我的同事们灌输一些测试信心:-)我试过寻找你们可以玩的游戏,但实际上找不到。也许这并不是人们真正采取的方法。这个问题似乎离题了,因为它不在帮助中心所描述的讨论范围之内。