Модульные тесты интеграционные тесты против с весны | VPROS.ru

Модульные тесты интеграционные тесты против с весны

Я работаю над проекта Spring MVC и у меня есть юнит-тестов для всех различных компонентов в исходном дереве.

Например, если у меня есть контроллер HomeController, который должен иметь LoginService вводят в нее, то в моем Unit-тест HomeControllerTest Я просто инстанцировать объекта в обычном режиме (вне весны) и впрыскивают в собственность:

protected void setUp() throws Exception {     super.setUp();     //...     controller = new HomeController();     controller.setLoginService( new SimpleLoginService() );     //... } 

Это прекрасно работает для тестирования каждого компонента как изолированной единицы, но теперь, что у меня есть несколько десятков классов в проекте, после написания класса и написания успешного блока проверить на это, все забываю обновить свой Весенний MVC в контексте файла, что делает фактические проводки в развернутом приложении. Я узнаю, что я забыл обновить файл контекста, когда я развернуть проект на Tomcat и найти кучу NullPointers от курение в боевой готовности фасоли.

Итак, вот мои вопросы:

  1. Это мой первый Весенний проект – это нормально для создания модульных тестов для отдельных бобы, как делал я, а затем создать второй набор тестов (интеграционные тесты) для проверки, что все работает, как ожидалось с фактическим контекста приложения? Существует ли утвержденная наилучшей практики для этого?

  2. Кроме того, как вы отделите блок тестов из интеграционных тестов? У меня есть весь исходный код в src блок тестов в test – там должно быть 2-й папке Test (например, test-integration) для тестов интеграции?

Так как это мой первый Весенний проект, мне любопытно, как другие, как правило, идти о делать такого рода вещи – и вместо того, чтобы повторно изобретать колесо я, скорее, спрошу остальной части сообщества.

One Reply to “Модульные тесты интеграционные тесты против с весны”

  1. разница между Unit-тест и тестирование интеграции , тестирование блока не обязательно нагружать свой контекст, вы сосредоточены на код, который Вы написали – он работает, терпит неудачу быстро , то есть с и без исключений, издеваясь над любым, зависит звонков в нем. Но в случае интеграционные тесты , загрузить контекст и проанализировать конца в конец тестов, как реальных сценариев.

Comments are closed.