Всем привет! У меня стоит Jenkins, Git plugin и Robot Framework plugin. В сборочной директории указан репозиторий с файлами .robot и keywords.txt . Тесты с командной строки запускаются, отчеты создаются.
Столкнулся с такими вопросами:
Как настроить Jenkins чтобы он опрашивал один репозиторий и в случае каких-то изменений запускал автотесты из другого репозитория?
Как настроить Jenkins чтобы в случае каких-то изменений в репозитории запускались тесты с локальной машины? И соответственно чтобы отчеты были видны в Jenkins? А чтобы приходили на почту тому, кто внес изменения?
Что и в каком виде вообще должно быть указано в Послесборочные операции - Publish Robot Framework test results - Directory of Robot output ?
И в Thresholds for build result ?
Или чекаутить в консоли отдельно, или отдельной джобой. Т.е первая триггерит, вторая чекаутит нужную репу.
Вообще не понял что вы хотите. Что значит тесты с локальной машины? С вашего локального? То есть каждый раз когда кто-то что-то закоммитит, у вас будут окна с тестами выскакивать? или что?
там же написано под полем, директория, которая содержит html/xml роботовского репорта, какой указан в конфиге
treshold - сколько %тестов должны пройти чтобы билд считался passed и сколько для unstable
Какими конкретно инструментами это лучше реализовать? Не имею ни малейшего представления как это все организовать. Подскажите более развернуто, пожалуйста. Этот вариант более желателен.
Да именно с моего компьютера. Точнее все начинает крутиться на виртуальной машине. Я просто не знаю как проще сделать или и правда лучше чтобы в репозиториях.
В каком виде это необходимо указать?
просто /tmp/RIDEgKAbf7.d ?
Мне правда не понятно что необходимо сделать с .sh File Shell Script.
git checkout branch - команда для гита для перехода на другую ветку это я знаю. но что необходимо сделать чтобы Jenkins сам проверял репозиторий?
3 . Робот сам туда сохраняет. Я не указывал куда и не знаю как это сделать. Как по отношению к текущему ?
Смотрите в сторону “jenkins post commit hook”.
Стоит учесть и git flow вашего проекта. Если девелоперы коммитят прямо в dev/test/qa ветку - это беда. Вас должны интересовать только merge коммиты.
Логика такая: после мерджа в ветку (мердж = коммит) - репозиторий посылает запрос на сервер jenkins’a, который в свою очередь стартует джобу: вытягивает и билдит проджект, запускает тесты, генерит репорты, сообщает Вам о успешных (и не очень) тестах.
Пост-коммит хук создается в 2 клика в том же github или bitbucket, если у вас собственный репозиторий - надо найти ответственное лицо, которое выполнит соотв. настройки =)
Сам проджект вытягивается тем же jenkins git plugin. В нем прописываются необходимые креды, ssh ключ, и т.д.