|
|
|
Spring быстрая загрузка контекста
|
|||
|---|---|---|---|
|
#18+
Собственно как? Объясню есть тесты и для их старта поднимается спринг контекст с кучей бинов и баз Все это нужно для интеграционных тестов Когда все это запускается под дженкинсом все ок ибо там куча тестов идут они долго и все это не так важно. А когда мне нужно запустить один два теста .... Тут каждый раз ждать всю инициализацию по 30 секунд долго.... Если хак? Как то закешировать . Сохранить. Быстро поднять из кеша или памяти ? Может можно как то поднять в память контекст и его там держать? Должны быть решения? В голову пришло только переписать контекст на xml чтобы быстрее поднимался ... Вместо javaconfig и все бины объявить как лейзи... Но это не сильно помогает .... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2016, 21:42 |
|
||
|
Spring быстрая загрузка контекста
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2016, 04:23 |
|
||
|
Spring быстрая загрузка контекста
|
|||
|---|---|---|---|
|
#18+
Atum1, Если хочешь очень быстро поднимать контекст, то не поднимай его вовсе ;-) Т.к. большинство бинов это POJO, то используя, например, Mockito можно тестировать методы, без контекста, отдавая ч/з mock'и тестовые данные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2016, 07:39 |
|
||
|
Spring быстрая загрузка контекста
|
|||
|---|---|---|---|
|
#18+
mad_nazgulAtum1, Если хочешь очень быстро поднимать контекст, то не поднимай его вовсе ;-) Т.к. большинство бинов это POJO, то используя, например, Mockito можно тестировать методы, без контекста, отдавая ч/з mock'и тестовые данные. У меня интеграционые тесты мне нужны данные из 10 баз данных из кучи таблиц и еще куча всяких параметров... Чтобы убедится в том что вся цепочка вызовов во всех моделях и модулях корректная и данные во всех базах ложатся верные. Тесты с мок объектами есть. Там все быстро. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2016, 12:48 |
|
||
|
Spring быстрая загрузка контекста
|
|||
|---|---|---|---|
|
#18+
Atum1, Как вариант... Запилить один интеграционный тест с множеством тест-кейсов. Только каждый тест-кейс должен быть по сути другим IT ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2016, 14:04 |
|
||
|
Spring быстрая загрузка контекста
|
|||
|---|---|---|---|
|
#18+
Atum1У меня интеграционые тесты мне нужны данные из 10 баз данных из кучи таблиц и еще куча всяких параметров... Чтобы убедится в том что вся цепочка вызовов во всех моделях и модулях корректная и данные во всех базах ложатся верные. Тесты с мок объектами есть. Там все быстро. Тады ой. Я немного по другому сделал. Разбил приложения на отдельные слабо связанные модули. Обернул их в spring-boot. И пишу тесты для отдельных модулей. Для монолитного приложения сделал модуль, в котором прописаны зависимости от этих модулей. Spring корректно все что нужно инжектит. И да взаимодействие по типа REST-API (т.е. не совсем валидный REST-API) Т.о. конекст для каждого модуля поднимается быстро. Хотя контекст полного приложения не очень быстро поднимается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2016, 14:08 |
|
||
|
Spring быстрая загрузка контекста
|
|||
|---|---|---|---|
|
#18+
mad_nazgulAtum1У меня интеграционые тесты мне нужны данные из 10 баз данных из кучи таблиц и еще куча всяких параметров... Чтобы убедится в том что вся цепочка вызовов во всех моделях и модулях корректная и данные во всех базах ложатся верные. Тесты с мок объектами есть. Там все быстро. Тады ой. Я немного по другому сделал. Разбил приложения на отдельные слабо связанные модули. Обернул их в spring-boot. И пишу тесты для отдельных модулей. Для монолитного приложения сделал модуль, в котором прописаны зависимости от этих модулей. Spring корректно все что нужно инжектит. И да взаимодействие по типа REST-API (т.е. не совсем валидный REST-API) Т.о. конекст для каждого модуля поднимается быстро. Хотя контекст полного приложения не очень быстро поднимается. ок. спасибо . подумаю . хочется иметь горячий контекст и на неи исполнять тесты :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2016, 10:01 |
|
||
|
Spring быстрая загрузка контекста
|
|||
|---|---|---|---|
|
#18+
Atum1ок. спасибо . подумаю . хочется иметь горячий контекст и на неи исполнять тесты :) Скажем так это не Unit-тесты. Соответственно тесты должны выполняться в тестовом окружении. Поэтому обернув в микросервисы, вы можете иметь частично поднятый контекст на тестовом сервере (например в контейнерах). А локально поднимать, только то что в данный момент тестируете. Это не панацея. Но вашу проблему может решить. :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2016, 11:33 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39355009&tid=2123453]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
79ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 379ms |

| 0 / 0 |
