События жизненного цикла приложения модульного тестирования
-
22-10-2019 - |
Вопрос
Я создал класс, который наследует System.web.ui.page.
В этом классе I переопределяют некоторые события жизненного цикла приложения, такие как page_load и page_init. Прежде чем вызывать базу тех событий, я проверяю значения сеанса, файлы cookie и тому подобное.
Я хотел бы, чтобы модуль проверил методы, которые проверяют сеансы и файлы cookie. Я уже могу издеваться над объектами сеанса и файла cookie. Можно ли модульно проверить события жизненного цикла приложения? Или мой единственный вариант, чтобы полностью повторно фактически фактор класса, так что все методы, вызванные из событий жизненного цикла, находились в отдельном классе?
Решение
Если вы можете издеваться над соответствующими объектами, вы можете просто вызвать методы жизненного цикла напрямую. Но я не знаю, хорошая ли это идея; ИМХО, любой обработчик событий в одиночном жизненном цикле должен выполнять несколько задач, каждый из которых, вероятно, должен быть делегирован в какой -то другой класс - и это тот код, который вы должны быть модульным тестированием.
Моя личная привычка состоит в том, что я теста я тестирую утилиту/обслуживание/код репозитория напрямую и оставляю код в событиях жизненного цикла напрямую только, который будет применяться под тестированием интеграции, а не на модульные тесты.