У меня в игре 6 технологий
easyB Selenium Gradle Ant Java Дженкинс
Мы используем easyB для написания сценариев.
Эти сценарии, в свою очередь, вызывают Selenium
Наконец, мы используем Gradle, чтобы запустить все истории. А поскольку у нас нет плагина gradle для easyB, gradle действительно использует ant для запуска easyB.
Этот скрипт Gradle, наконец, выполняется через задание Jenkins.
Полное выполнение занимает около 3-4 часов. На полпути мы получаем ошибку perm-gen.
Я не уверен, какой процесс требует увеличения в PermGen
EasyB? Муравей? Gradle?
Сообщение об ошибке
Теперь значение повторной попытки [ant: easyb]: 2
[ant: easyb] objectID установлен на: 60868
[ant: easyb] break после создания subjectID 60868
[ant: easyb] Создание посещения >>>>>> Предварительная обработка
[ant: easyb] Создание группы изображений >>>>>> auto-gp1
[ant: easyb] Произошла ошибка запуск вашей истории или спецификации easyb
[ant: easyb] java.lang.OutOfMemoryError: PermGen space
[ant: easyb] выполнение easyb НЕ ИСПОЛЬЗУЕТСЯ
ОШИБКА: сбой при сборке за исключением.
Скрипт Gradle
check << {
def script = new GroovyShell()
script.run(new File('InitializeReport.groovy'))
ant.taskdef(name: "easyb", classname:"org.easyb.ant.BehaviorRunnerTask", classpath: sourceSets.test.runtimeClasspath.asPath)
ant.easyb( classpath: sourceSets.test.runtimeClasspath.asPath, failureProperty:'easyb_failed' ,tags:tags) {
report( location:"${project.testResultsDir}/story."+format, format:format )
behaviors( dir: storiesHome ) {
include( name:storyToBeExecuted )
}
}
ant.fail( if:'easyb_failed', message: 'Failures in easyb stories' )
}
Это то, что я вижу на консоли Jenkins. Примечание. Как параметры памяти передаются команде Gradle, но не команде Java, которая запускает сценарии easyB? Вот где - я думаю, проблема ...
[jenkins @ bil-dev-006v bin] $ ps -ef | grep gradle
Дженкинс 18420 4714 9 23:04? 00:00:16 /usr/java/jdk1.6.0_20/bin/java -XX: MaxPermSize = 700m -Xmx512m -XX: MaxPermSize = 800m -Xmx512m -classpath / opt / jenkins / gradle- 1.0-milestone-1 / lib / gradle-launcher-1.0-milestone-1.jar -Dorg.gradle.appname = gradle org.gradle.launcher.GradleMain -PstoryName = -PstoriesHome = check -info
Вам необходимо увеличить пространство perm gen, вы можете сделать это, установив параметр max в настройках виртуальной машины. В командной строке запустите Java со следующей опцией: