【发布时间】:2016-08-29 02:37:46
【问题描述】:
对于 Azure Service Fabric 有状态服务,可以如下注入 IReliableStateManager:
ServiceRuntime.RegisterServiceAsync("MyServiceType", context =>
{
IReliableStateManager stateManager = new ReliableStateManager(context);
return new MyService(stateManager);
}
这样你就可以在MyService的单元测试中模拟IStateManager。
对于有状态的演员来说,这似乎是不可能的。 IActorStateManager 只有一个内部实现:Microsoft.ServiceFabric.Actors.Runtime.ActorStateManager。那么如何对有状态的 Actor 进行单元测试呢?
在我的 actor 方法中的某个时刻调用了 IActorStateManager,但由于我无法注入此依赖项,因此单元测试似乎是不可能的。
有什么办法可以解决这个问题还是有其他解决方案?
【问题讨论】:
标签: dependency-injection actor azure-service-fabric