Результат миграции JMockit при более медленном тесте

Недавно мы столкнулись с миграцией с jmockit 0.99915 на jmockit 1.21 и с Java 6 на java 7 после внесения изменений, связанных с устаревшими API и другими вещами, наш тест работал медленнее, чем до миграции.

До миграции наш интеграционный тест 1600 выполнялся за 5-7 минут, теперь требуется 15-20 минут, ¿У кого-нибудь были подобные проблемы?

Вот несколько соображений:

  • Я знаю, что есть большая версия jmockit, но нам нужно использовать ее.
  • У нас есть несколько модулей в нашем приложении (36), так что это не было бы проблемой, если бы у нас был только один или два, но теперь наши конструкции требуют создания нескольких наших, поэтому мы пересекаемся с другими конструкциями в системе непрерывной интеграции, которую нам не разрешено делать что.
  • Мы больше ничего не меняли ни в нашем коде, ни в наших конфигурациях, только это обновление: (Java 6 до java 7, Maven 2.2.1 до maven 3.3.9, Jmockit 0.99915 до 1.21)

Наше приложение:

  • Веб-приложение на основе Spring, использующее Spring runner для запуска теста.
  • Джунит версии 4.10
  • У нас есть база данных в памяти для запуска теста
  • Мы используем аннотации NonStrictExpectations и @Mocked для запуска нашего теста, у некоторых тестовых случаев есть родитель, который расширяется там, где объявлены фиктивные поля.
  • Для некоторых больших тестов требуется более 30 имитируемых объектов, а для меньших - всего один или два.

person karelss    schedule 03.04.2017    source источник


Ответы (1)


Задав этот вопрос и проверив связанную с ним проблему, я могу подтвердить, что наша основная проблема заключалась в использование моков @Mocked в сочетании с обновлением, как сказано в проблеме.

person karelss    schedule 05.04.2017