ユニットテストでクラスStatelessServiceを継承するクラスAのインスタンスを作成したいとします。しかし、私はできません。私はすべてを試してみました。依存関係を嘲笑し、自分のコンテキストを実装しました。サービスファブリックでユニットステートレスサービスをユニット化する方法
インスタンスを作成しようとすると、StatelessServiceはどこかでNullReferenceExceptionをスローします。
これはまったくできますか?
class A : StatelessService
{
public A(StatelessServiceContext context) : base(context /* Here will be thrown NullReferenceException */)
{
// It will never even get there.
}
}
class UnitTest
{
public void TestMethod()
{
var activationContext = MOCK<ICodePackageActivationContext>();
var context = new StatelessServiceContext(..., activationContext, ...);
var a = new A(context); // Here will be thrown an exception.
}
}
あなたの問題をよりよく示す[mcve]としていくつかのコードを提供してください。これは、問題を特定し、可能な解決策を導き出すのに役立ちます。 – Nkosi
@Nkosi最小擬似コードを提供する質問を更新しました。 – EwanCoder
また、エラーが発生した場所と場所についてさらに説明する必要があります。ここのサンプルを見て、https://github.com/Azure-Samples/service-fabric-watchdog-service/blob/90c6418a99b5fcd777a5b7c2a5f6443fdcc9f42a/TestStatelessService/TestStatelessService.csに役立つ例が見つかるかどうかを確認してください。 – Nkosi