2015-07-06 2 views
0

Я использую механизм регистрации на основе формы весны, после успешного входа в систему Я сохраняю один объект в сеансе. Использование этого объекта, хранящегося в сеансе, для определения судьбы при следующих запросах. Но теперь, когда я тестирую, используя с помощью теста весны mvc с поддержкой безопасности. Я не могу заполнить этот объект сеанса после успешной аутентификации. Я попытался предоставить сеанс с объектом, заполненным во время входа в систему, но, я думаю, весенняя безопасность очищает этот сеанс.Весенний тест MVC с безопасностью и сеансом

Так как я могу установить этот объект в сеанс после успешного входа в тест весны mvc.

+0

Вы можете использовать Moq http://stackoverflow.com/questions/524457/how-do-you-mock-the-session-object-collection-using-moq –

+0

@NarekArzumanyan Я ищу что-то, что весна тест безопасности обеспечивает – MasterCode

ответ

0

Если вы хотите проверить содержимое сеанса в тестах модуля MVC, вы должны подделать сеанс. Вы можете использовать объект Mock для поддельного сеанса.

+0

Но безопасность Spring очищает предыдущий сеанс и создает новый сеанс каждый раз, когда вы успешно проверяете подлинность. И мой объект сеанса также заполняется после авторизации. Поэтому при тестировании с использованием formLogin(), которые не имеют возможности принимать мак-сессии – MasterCode

+0

' var user = new User(); var mockSession = new Mock (); mockSession.SetupGet (s => s ["CurrentUser"]). Возвращает (пользователь); ' session [" CurrentUser "] всегда возвращает пользователя –

Смежные вопросы