0
我想將單元測試包括到我的Xamarin PCL項目中。依賴項服務空單元測試中的參考異常
這就是我基本上是這樣做的:
登錄頁面類:
public bool isUserRemembered()
{
return DependencyService.Get<IUserDefaults>().getUserRemembered();
}
public void setRememberUser(bool check)
{
DependencyService.Get<IUserDefaults>().setUserRemembered(check);
}
單元測試類(IOS):
[Test]
public void RememberKeyTrueTest()
{
LoginPage page = new LoginPage();
bool isRemember = true;
page.setRememberUser(isRemember);
bool value = page.isUserRemembered();
if (value)
Pass();
else
Fail();
}
我得到空引用異常在這條線:DependencyService.Get<IUserDefaults>().setUserRemembered(check)
。
依賴項服務是否適用於單元測試?或者有任何解決方法嗎?
您是否需要配置服務?無論如何,在邏輯代碼中執行依賴關係解析並不是一個好主意,您應該在構建過程中注入依賴關係,這在測試中也變得更容易管理。沒有更多的隱藏的依賴關係,您必須「記住」在所有測試中維護它們。 –
[使用Xamarin.Forms的DependencyService進行單元測試](http://arteksoftware.com/unit-testing-with-xamarin-forms-dependencyservice/)[只是一個谷歌](https://www.google。 co.uk/search?q=DependencyService+unit+tests) – stuartd