OutOfMemoryError

После запуска папки с тестами половина тестов проходит нормально но под конец наченается что-то непонятное.

Вместо открытия страницы Eclipse открывает несколько пустых FireFox окон а в последствии во всех тестах одна и таже ошибка - java.lang.OutOfMemoryError: Java heap space

Запустила один из тестов которые провалились- прошел нормально, Eclipse - сообщил что тест удачно пройден. Через пару секунд запускается уже совсем другой тест который я вообще даже не вызывала, а потомеще один...и еще один.

Закрыла Eclipse вообще полностью вышла но тесты все равно продолжают вызыватся!!!!!!!!

ПОМОГИТЕ!!!!!!!


  

Тесты уже не вызываются)))) Запустила  Eclipse.  Опять стартанула тот же тест который ранее выдал ошибку. Все прошло гладко - тест прошел и никакие окна уже не выскакивают.

Полностью перезапускать опять всю папку не хочу - боюся что все сначала начнется.

Подскажите, пожалуйста, из-за чего могла возникнуть такая ошибка и как ее можно избежать в дальнейшем.

попробуйте сделайть Project->Clean.

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

 

для добавления памяти ява приложению необходимо указать дополнительные параметры виртуальной машине. делается это следующим образом:

в воркспейсе правый клик на проект - run as - run configurations.

далее выбираете вкладку Arguments  и в поле VM Arguments пишете: -Xms512m -Xmx1024m

 

-Xms  размер выделяемой памяти при старте приложения, -Xmx максимальный который будет использоватся(это не гарантирует что приложение не упадет).

 

также стоит задуматся о рефакторинге кода, убрать массовые создания обьектов, и трудоемкие операции.

 

если будут вопросы - задавайте, с радостью отвечу.

 

Обновлено:

если запускаете через консоль тесты то достаточно указать в параметрах командной строки вышеперечисленные параметры, например: java -Xms512m -Xmx1024m -jar mytestsuite.jar