我正在开发一个AS3应用程序,它使用Singleton类在数组中存储Metrics。它是一个Singleton,因为我只想要创建这个类的一个实例,并且需要从应用程序的任何部分创建它。
当我想对这门课程进行单元测试时遇到了困难。我认为添加公共getter和setter将使我能够正确地对其进行单元测试,这对我的应用程序非常有用。我已经读过,更改为工厂模式将启用单元测试或使用控制反转。这当然会使它更灵活。我想知道人们对这件事的看法,因为对此有很多相互矛盾的看法!
由于
克里斯
答案 0 :(得分:2)
如果您正在使用IoC框架,那么让您的消费者在其构造函数中需要该服务的实例,并将IoC框架配置为仅构建一个实例并将其分发给整个应用程序中的所有请求。根据我的经验,这是Castle Windsor的默认行为。
对于单元测试,您可以使用Mock对象代替真实对象。