Тестирование приложения - QualitySolution/QSProjects GitHub Wiki

В библиотеке QS.Testing размещены различные помощники помогающие писать тесты.

Базовые классы для создания тестов:

  • DeleteConfigTestBase - базовый класс со стандартными тестами которые можно использовать для тестирования правил удаления.
  • InMemoryDBTestFixtureBase - базовый класс позволяющий создавать интеграционные тесты с БД в памяти.
  • EntityViewModelsTestsBase - базовый класс со стандартными тестами позволяющими проверять, необходимые для ViewModel-ей настройки.

Специльные реализации классов для использования в тестах:

  • GuiDispatcherForTests - Класс реализующий интерфейс IGuiDispatcher в виде пригодном для тестов. По сути исключает многопоточность, так как в тестах она не нужна.
  • NavigationManagerForTests - Класс реализующий интерфейс INavigationManager. По сути полноценный менеджер навигации но специально предназначенный для использования в тестах. Не работает с View.
  • ValidatorForTests - Класс реализующий валидатор IValidator в виде пригодном для тестов. При невалидном объекте может кидать исключения для остановки теста.