私は複雑なアプリケーションを書いています。サーバーとクライアントアプリケーションがあります。私のアプリケーションに新しいウィンドウを追加したいのですが、サーバーを起動してからクライアントを起動し、ログインする前にいくつかのボタンをクリックしてくださいそれは迷惑で、時間がかかります。だから私はサービスのためのモックを使用して私のwpfフォームを実行することができます(私はサーバーを実行する必要はありませんし、ログインする必要はありません)を実行することができますいくつかのソリューションを探していますクリックしたり、コントロールが表示され、私が望むやり方で行動します。 ログインを使用する必要があるアプリケーション全体を実行してフォームにアクセスしようとすると時間を無駄にする必要がないため、このケースでは時間を大幅に節約できます。一部の検証フォームなどをバイパスして検索します。 既にシンプル解決策はそれは素晴らしいだろう。WPFフォームのテスト方法は?
2
A
答えて
4
MVVMパターンを見てください。
0
あなたはdependency injectionのいずれかの種類を使用していますか?もしそうなら、あなたは単純にmocking frameworkと#if-else directives
の組み合わせで重いサービスの偽のバージョンを作ることができます。どこか、アプリケーションの起動コードで:
ILoginService service;
#if DEBUG
service = A.Fake<ILoginService>();
// you could even set up your fakes to return logged user to
// automate logging in process:
var userFake = A.Fake<IUser>();
A.CallTo(() => service.LogIn(A<string>.Ignored)).Returns(userFake);
#else
service = new RealLoginService();
#endif
var myWindow = new MyWindow();
var viewModel = new ViewModel(service);
myWindow.DataContext = viewModel;
// ...
必要なのは、ILoginService
依存性を取ることができること(あなたがそのような使用と仮定した場合)ViewModel
です。それであなたはあなたの好みに擬似/偽装することができます。
関連する問題
- 1. WPF WindowFormHostでフォームを開く方法
- 2. WPFアプリケーションのテスト
- 3. C#WPF、ボタンクリックでフォームを拡張する方法は?
- 4. コンポジットWPFアプリケーションのテスト
- 5. WPFフォームを使用した3層アーキテクチャの使用方法
- 6. フォームCのコードでWPF xamlコンテンツを取得する方法#
- 7. キャプチャを使用したフォームの自動テスト方法
- 8. TaskScheduler.FromCurrentSynchronizationContext - 単体テスト時にWPFディスパッチャスレッドを使用する方法
- 9. 単体テストでWPFディスパッチャを使用する正しい方法
- 10. Twilioアプリケーションのテスト方法は?
- 11. illegalaccessExceptionのテスト方法は?
- 12. バインドエンティティはWinフォームでWPF
- 13. WPFアプリケーションでWindowsフォームを表示する方法
- 14. WPF:フォームにクリックイベントを割り当てる方法
- 15. WPFでMDIフォームを作成する方法
- 16. WPFとWindowsフォーム
- 17. WPF MVVM LightユニットのテストViewModels
- 18. デプロイメントのテスト方法
- 19. フォーム内でフォームを開く方法は?
- 20. WPFアプリケーションで動的なデータ入力フォームを作成する方法は?
- 21. amまたはpmのテスト方法は?
- 22. テストDB cakePHPテストの選択方法
- 23. WPFフォームの検索機能
- 24. WPFのベストラーニングの方法
- 25. wpfコントロールコンストラクタのパラメータを渡す方法は?
- 26. WPFプログレスバーの使用方法は?
- 27. WPFとICUTest単体テスト
- 28. WPF:カスタムアイテムコントロールパネルの作成方法
- 29. WPFナビゲーションコントロールの作成方法
- 30. WPFサウンドファイルリソースの再生方法