我正在編寫複雜的應用程序,其中是服務器和客戶端應用程序,如果我想在我的應用程序中添加一些新窗口,我需要運行服務器,然後運行客戶端,然後登錄點擊幾個按鈕,然後到達我現在正在開發的窗口,這很煩人,需要很多時間。所以現在我正在尋找一些解決方案,我可以運行測試,只能使用模擬服務運行我的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;
// ...
所有你需要的是ViewModel
(假設你使用這樣的)能夠採取ILoginService
依賴。然後你可以根據自己的喜好嘲笑/僞造它。
相關問題
- 1. 如何單元測試WPF + TPL
- 2. 如何在VS08單元測試框架中測試WPF組件?
- 3. 如何測試WPF StyleSelector?
- 4. wpf行爲單元測試
- 5. 單元測試WPF綁定
- 6. WPF單元測試框架
- 7. 單元測試Wpf綁定
- 8. 單元測試WPF UserControls
- 9. WPF單元測試DirectoryNotFoundException
- 10. WPF和ICUTest單元測試
- 11. WPF MVVM單元測試ViewModel?
- 12. 如何在Visual Studio中加載wpf表單後單元測試控件的值?
- 13. 單元測試場景 - 如何測試?
- 14. Android單元測試:我如何測試?
- 15. 如何測試網絡表單?
- 16. 如何爲Web表單測試路由?
- 17. 如何測試我的網站表單?
- 18. 如何測試Django表單ImageField
- 19. 如何測試django模型表單?
- 20. 如何測試WPF用戶界面?
- 21. 單元測試表單c#
- 22. 單元測試WPF GUI框架
- 23. 單元測試數據在WPF
- 24. 單元測試「混合」WPF/Silverlight控件
- 25. WPF Prism中的單元測試確認
- 26. WPF棱鏡4單元測試
- 27. WPF MVVM光單元測試ViewModels
- 28. WPF應用程序的單元測試
- 29. 如何在單元測試項目中使用WPF窗口
- 30. 如何做單元測試