我想創建一個類A的實例,它在我的單元測試中繼承了StatelessService類。但我不能。我嘗試了一切:嘲笑依賴關係,實現我自己的上下文等。如何在服務結構中單元測試無狀態服務
當我嘗試創建一個實例時,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