单元测试私有方法似乎使整个解决方案更容易

use*_*851 3 testing tdd unit-testing private-methods

假设有一个实用程序类(没有数据),其中包含一个复杂的(如难以测试的)公共方法.它使用随机数生成,返回大量数据和有趣的东西.但是,如果您在小型私有方法中实现它,每个私有方法都很容易测试,因此整个过程更容易测试.从应用程序的角度来看,只有大方法需要公开,而另一方面应该是私有的.然而,测试私有方法会导致更容易测试类.我该如何处理这个问题?

Bal*_*eth 5

有时生成随机数,返回大型数组和其他有趣的东西意味着单个实用程序类负责多个事情,这意味着应该有更多的类.单个类中的高复杂性(单一方法!)有时是糟糕设计的标志.但是,从来没有一条黄金法则可循.