現在、mvvmcrossを使用してxamaringで書かれたアンドロイド/ iosアプリケーションの単体テストを作成しようとしています。私はwikiの指示に従ってきたし、サービスがViewModelににこの方法を変更しようとしたとき、彼らはポイントにうまく動作します:ユニットテストでMvx.Resolveが失敗する
var viewDispatcher = Mvx.Resolve<IMvxViewDispatcher>();
viewDispatcher?.ShowViewModel(
new MvxViewModelRequest(typeof(HomeViewModel), null, null, MvxRequestedBy.Unknown));
テストがMvx.Resolve();
との最初の行で失敗します。私は、これはモックIoCコンテナのインターフェイスを登録するにダウンしていると仮定します。この方法で呼び出されたときに
this.mockDispatcher = new MockDispatcher();
this.Ioc.RegisterSingleton<IMvxViewDispatcher>(this.mockDispatcher);
this.Ioc.RegisterSingleton<IMvxMainThreadDispatcher(this.mockDispatcher);
はそうMVXはその後、解決することはできません。このコードをテストすることができますか、ViewModelをサービスから変更する可能性はありますか?
デッドリンク、:https://www.mvvmcross.com/documentation/testing/testing/testing.html – hlovdal