私は複雑なアプリケーションを書いています。サーバーとクライアントアプリケーションがあります。私のアプリケーションに新しいウィンドウを追加したいのですが、サーバーを起動してからクライアントを起動し、ログインする前にいくつかのボタンをクリックしてくださいそれは迷惑で、時間がかかります。だから私はサービスのためのモックを使用して私の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 + Windowsフォーム、最初のフォーム
- 5. NUnitテストでWPFテキストボックスのセッターを呼び出す方法
- 6. コンポジットWPFアプリケーションのテスト
- 7. Play Framework 2.5でフォームをテストする方法は?
- 8. 丸形のコーナーwpfフォームを作成する方法
- 9. フォームCのコードでWPF xamlコンテンツを取得する方法#
- 10. WPFフォームを使用した3層アーキテクチャの使用方法
- 11. Xamarinフォーム - xamarinフォームのタブ付きページの単体テストの作成方法
- 12. TaskScheduler.FromCurrentSynchronizationContext - 単体テスト時にWPFディスパッチャスレッドを使用する方法
- 13. 単体テストでWPFディスパッチャを使用する正しい方法
- 14. バインドエンティティはWinフォームでWPF
- 15. WPFとWindowsフォーム
- 16. WPFアプリケーションでWindowsフォームを表示する方法
- 17. (C#)WPFフォームでこれを行う方法(Orange5デザインを見る)
- 18. WPFでMDIフォームを作成する方法
- 19. WPF:フォームにクリックイベントを割り当てる方法
- 20. キャプチャを使用したフォームの自動テスト方法
- 21. 角度4のフォームでdebounceTimeをテストする方法
- 22. VB.NET WPFウィンドウ/フォームに複数のコントロールを配置する方法は?
- 23. WinFormsとWPFの自動テスト
- 24. WPF MVVM LightユニットのテストViewModels
- 25. カスタムWPFサードパーティコントロールの自動テスト
- 26. Twilioアプリケーションのテスト方法は?
- 27. illegalaccessExceptionのテスト方法は?
- 28. XamarinフォームUIテストのマスター詳細ページのマスターページをタップする方法は?
- 29. WPFアプリケーションで動的なデータ入力フォームを作成する方法は?
- 30. XamarinフォームUIテスト