单位测试方法应该超过200行吗?

cod*_*nja 3 language-agnostic unit-testing

写一个很长(超过200行)的测试方法是不是太糟糕了?或者我应该把它分解成更小的方法?

Dom*_*ger 11

你不应该(总体上)创建任何200行长的方法.如果你可以分手,那就去做吧.

你在200线做什么?单元测试应该测试小的代码单元.这200条线主要是断言吗?如果是这样,那可能没问题.

关键问题是 - 有人能够快速理解方法的作用,还是难以理解?

"程序应该主要由人们阅读,并且只是偶然地由机器运行." (Abelson&Sussman,计算机程序的结构和解释)

  • 200行断言(在一次测试中,我从未见过或写过任何接近该数量断言的内容).如果是这种情况,那么听起来好像测试是热切的测试 - http://xunitpatterns.com/Obscure%20Test.html#Eager%20Test (2认同)