2012-05-02 1 views
7

На какое-то время я пытался выяснить, как запускать тесты UIAutomation от Jenkins - каждый раз, когда я запускаю сборку, она строит отлично, тогда она запускает мою команду инструментов (используя тот же (Can Instruments be used using the command line?), и дженкинсы просто зависают, ну вся машина работает, и когда я смотрю на монитор активности, я вижу процесс с использованием 2 ГБ памяти.Запуск тестов iIA UIAutomation от Jenkins

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

Я поставил Дженкинс не зарегистрированы в качестве разработчика - не админ, хотя

Пожалуйста, дайте мне знать, если есть что-нибудь еще, что я мог бы попробовать, или если кто-то получил это работает успешно ваше руководство будет высоко ценится - Спасибо

+0

Как вы запускаете (т. Е. Запускаете) Дженкинс? –

+0

Его работает как деамон, поэтому он загружается при запуске - если мне нужно остановить или перезапустить его, я использую startctl – ChrisH

ответ

1

Итак, если вы запустите его как демон, сначала проверьте, что произойдет, если вы запустите Jenkins на переднем плане. Самый простой способ сделать это - с помощью команды java -jar jenkins.war [other options] (see this document).

+0

Блестящая благодарность - все работает в порядке сейчас - есть ли более элегантный способ запускать jenkins? – ChrisH

+1

Единственное, о чем я могу думать, это поместить его в скрипт и запустить этот скрипт из хоста входа. –

+1

Тогда есть https://github.com/stisti/jenkins-app – sti

0

Возможно, вы можете использовать этот https://github.com/houlianpi/robot4ios.

Затем в Дженкинс выполнить оболочку:

sh setup.sh 
sh runTests.sh ./sample/alltests.js "/Users/komejun/Library/Application Support/iPhone Simulator/5.0/Applications/1622F505-8C07-47E0-B0F0-3A125A88B329/Recipes.app/" 

и отчет будет автоматически создавать в ./ynmsk-report/test.xml

+0

Это звучит интересно, будет ли robot4ios управлять установкой/отключением между испытаниями тоже? Я полагаю, что выход xml совместим с jenkins, так что вывод может отображаться? – ChrisH

+0

yes, all, robot4ios use yuitest.so – houlianpi

+1

ynm3k был обновлен в другой вилке https://github.com/douban/ynm3k, которая заменила runTests.sh с помощью test_runner/run.Не уверен, что образец в старом проекте все еще может работать. – firebear

4

Дженкинс на OS X запускается из запуск программ сценария и будет работать как «демон» по умолчанию. Дело в том, чтобы изменить пользователя в запущенном скрипте.

Во-первых, запустите Дженкинса в завершение работы (в разделе «Управление Дженкинсом» в графическом интерфейсе).

Затем разгрузить работу с запуска программ, например, так:

$ sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist 

Затем измените свойство «UserName» в запуске программ PLIST, используя пользователь, который вы хотите запустить Дженкинс. Также есть свойство GroupName, которое вам может понадобиться/необходимо соответствующим образом настроить с вашей группой пользователей.

Наконец, загрузите Дженкинс с:

$ sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist 

Надежда, что помогает!

+0

Это отлично сработало для меня. По умолчанию GroupName был установлен на демона, и это привело к сбою симулятора ios – maschall

+0

Мы следовали этому решению, и это сработало, но одно замечание. Кажется, что в более новых версиях xcode вам нужно удалить значениеSessionCreate10 и из вашей организации .jenkins-ci.plist см. здесь для получения более подробной информации: http://www.cimgf.com/2015/05/26/setting-up-jenkins-ci-on-a-mac-2/ – Daveloper87

 Смежные вопросы

  • Нет связанных вопросов^_^