Переменная среды набора для сборки в Гудзоне

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

, Если Ваш дизайн хорош, Вы не должны должными быть для использования getClass() или instanceof.

Любой из предложенных методов сделает, но просто что-то для учета, мудрый дизайном.

9
задан pbreault 25 August 2009 в 18:11
поделиться

6 ответов

В Hudson есть новая функция, которая позволяет вам указывать параметры для сборок . Похоже, он делает то, что вы хотите.

Хотя обратите внимание, что:

warning Это еще очень молодая функция, поэтому обратная связь приветствуется

...

Параметры [s] доступны как параметры среды. Так, например, оболочка ($ FOO,% FOO%) или Ant ($ {env.FOO}) могут получить доступ к этим значениям.

4
ответ дан 4 December 2019 в 11:07
поделиться

Свойства узла Хадсона будут хорошо поработай здесь. Но если вы ищете более автоматизированный способ присвоения номера экрана, вы Мне нужно проделать еще немного работы, возможно, подключиться к плагину распределителя портов или написать новый плагин BuildWrapper, который автоматически запускает xvfb и устанавливает переменную среды SCREEN от имени сборки.

Если вы хотите переключиться на другой X-сервер для тестирования, вы можете попробовать плагин Xvnc для Hudson. Он автоматически запустит vncserver, а также установит переменную среды SCREEN. Он также имеет возможность сделать снимок экрана после завершения тестов и показать его на странице задания в Hudson.

Если вы хотите переключиться на другой X-сервер для тестирования, вы можете попробовать плагин Xvnc для Hudson. Он автоматически запустит vncserver, а также установит переменную среды SCREEN. Он также имеет возможность сделать снимок экрана после завершения тестов и показать его на странице задания в Hudson.

Если вы хотите переключиться на другой X-сервер для тестирования, вы можете попробовать плагин Xvnc для Hudson. Он автоматически запустит vncserver, а также установит переменную среды SCREEN. Он также имеет возможность сделать снимок экрана после завершения тестов и показать его на странице задания в Hudson.

3
ответ дан 4 December 2019 в 11:07
поделиться

В соответствии с моим ответом на принятый ответ, вот мои выводы.

Остерегайтесь неинициализированных переменных

При использовании функции параметризации в Hudson вы можете добавлять переменные среды к конец строки - при условии, что они содержат что-то в первую очередь.

Например, если переменная среды $ FOO пуста, и вы должны были использовать следующую строку в параметре строки ...

/usr/bin/ladeda/:$F00

, тогда переменная среды будет читать /usr/bin/ladeda/:$F00.

Однако, если бы я сделал

export F00=/usr/bin/fiddledede

, то экспортированная переменная была бы ....

/usr/bin/ladeda/:/usr/bin/fiddledede

Когда я первоначально запускал это как тест, у меня было не сработали - и поэтому думали, что функция параметров не принимает внешние переменные среды, хотя на самом деле это было (они просто должны были что-то содержать).

0
ответ дан 4 December 2019 в 11:07
поделиться

fyi, я выпускаю плагин setenv для Hudson сегодня (при условии, что java.net восстанавливается достаточно для меня!) - он ведет себя аналогично параметризованной сборке функциональность, но с более простым пользовательским интерфейсом (только текстовое поле для ввода - пары ключ / значение разделены символами новой строки) и без необходимости предоставлять значения для параметров во время сборки.

10
ответ дан 4 December 2019 в 11:07
поделиться

Я обнаружил, что запуск селена с использованием xvfb-run более надежен, чем установка DISPLAY, так что это может сработать для вас. Итак:

xvfb-run java -jar selenium-server.jar
1
ответ дан 4 December 2019 в 11:07
поделиться

Вы пробовали использовать плагин selenium maven?

Плагин можно настроить для запуска Xvfb, запуска тестов и затем остановки.

с использованием этой конфигурации pom.xml:

<plugins>
    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>selenium-maven-plugin</artifactId>
        <executions>
            <execution>
                <id>xvfb</id>
                <phase>pre-integration-test</phase>
                <goals>
                    <goal>xvfb</goal>
                </goals>
            </execution>

            <execution>
                <id>selenium</id>
                <phase>pre-integration-test</phase>
                <goals>
                    <goal>start-server</goal>
                </goals>
                <configuration>
                    <background>true</background>
                </configuration>
            </execution>
        </executions>
    </plugin>
</plugins>

подробности здесь: http://mojo.codehaus.org/selenium-maven-plugin/examples/headless-with-xvfb.html

1
ответ дан 4 December 2019 в 11:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: