Выбор CI для запуска тестов, подскажите кто юзал

У нас в компании используется Bamboo. Гуглив не нашел мануалов по настройке Bamboo как системы запуска тестов после билда.
Кто использует - тыкните где почитать или расскажите как используется у вас.
Если лучше юзать к примеру тот же Jenkins, то будьте добры подсказать почему.

Кратко почему Jenkins - комьюнити, куча туторов, фришный.

3 лайка

https://confluence.atlassian.com/bamboo/configuring-a-test-task-289277052.html

Мы используем Jenkins потому что с ним проблем меньше, быстрее настраивается и есть большое количество людей, которые умеют с ним работать.

2 лайка

Как у вас получилось не найти?)
В таски поле билда добавляете JUnit или TestNG парсер и будет вам счастье.

Bamboo очень удобная штука, если юзать ее в связке Jira/Stash/Bamboo. Но я думаю, что Jenkins с его невероятным количеством плагинов тоже может справиться со всеми подобными задачами.

Я использовал и Jenkins, и Bamboo. Оба примерно одинаково хороши, но Jenkins бесплатен и имеет большой community.

У нас все тесты на Руби, так что…

Я конфигурировал Bamboo - хорошая интергация с JIRA маркировка тестов, комментарии… Денег стоит, правда каждый агент. :frowning: Запуск тестов можно делать как из скрипта, так и Stage-м. Наверное последнее удобнее, потому что тесты не будут запускаться после провального билда.
Если честно, Jenkins более гибкий и более бесплатный, да :slight_smile:

Jenkins/Hudson, ну или же TeamCity, если есть возможность приобрести


Do different tests instead of repeating the same tests

в таком случае сконвертируйте репорт руби тестов в формат JUnit рапорта, как вариант.

1 лайк

извините, но звучит как костыль)

Глупость говорите. Для взаимодействия между подсистемами существует несколько (на мой взгляд идиотских) стандарта передачи параметров тестов: xUnit и TAP.

xUnit - самый толковый, но требует XML, что не подходит для всяких контроллеров;
TAP - простой текст, но проблема в версиях и форматах (особенно большая подстава с количеством тестов и ерархией);

Так что выбирайте любой и используйте стандартные КОНТРАКТЫ взаимодействия между подсистемами.