Тестирование приложения - QualitySolution/QSProjects GitHub Wiki
В библиотеке QS.Testing размещены различные помощники помогающие писать тесты.
Базовые классы для создания тестов:
- DeleteConfigTestBase - базовый класс со стандартными тестами которые можно использовать для тестирования правил удаления.
- InMemoryDBTestFixtureBase - базовый класс позволяющий создавать интеграционные тесты с БД в памяти.
- EntityViewModelsTestsBase - базовый класс со стандартными тестами позволяющими проверять, необходимые для ViewModel-ей настройки.
Специльные реализации классов для использования в тестах:
- GuiDispatcherForTests - Класс реализующий интерфейс IGuiDispatcher в виде пригодном для тестов. По сути исключает многопоточность, так как в тестах она не нужна.
- NavigationManagerForTests - Класс реализующий интерфейс INavigationManager. По сути полноценный менеджер навигации но специально предназначенный для использования в тестах. Не работает с View.
- ValidatorForTests - Класс реализующий валидатор IValidator в виде пригодном для тестов. При невалидном объекте может кидать исключения для остановки теста.