Запуск HP ALM-тестів використовуючи Jenkins

У сучасному IT-світі дуже важко собі уявити проекти, які б не використовували Continues Integration сервера для автоматичного складання і запуску тестів. А що якщо ми використовуємо HP Application Lifecycle Management? Як бути в такому випадку? Як нам, наприклад, запустити тести з Jenkins? Люди не знайомі з цим продуктом, з першого погляду на нього можуть прийти до висновку, що у HP ALM відсутня можливість інтеграції з модулем CI серверами.

Насправді це не так. Інтеграція з модулем CI-серверами для запуску HP ALM-тестів є. Для цього достатньо встановити HP Application Automation Tools plug-in для Jenkins.

На поточний момент даний плагін може працювати з наступними HP продуктами:

  • HP Unified Functional Testing 11.5 x and 12.0 x
  • HP Service Test 11.20 and 11.50
  • HP LoadRunner 11.52 and 12.0 x
  • HP Performance Center 12.xx
  • HP QuickTest Professional 11.00
  • HP Application Lifecycle Management 11.00, 11.52, and 12.xx
  • HP ALM Lab Management 11.50, 11.52, and 12.xx
Установка плагіна
Що б встановити плагін спочатку необхідно завантажити останню версію. А після чого зайти в Manage Jenkins -> Manage Plugins і встановити плагін з скачаного файлу. Після завершення установки можна приступити до налаштування.





Налаштування плагіна
Для установки заходимо в Manage Jenkins -> Configure System.



Шукаємо там Application Lifecycle Management секцію і натискаємо кнопку Add ALM Server. Вводимо необхідний аліас для сервера, який буде використовуватися Jenkins для ідентифікації ALM сервера, а так само URL цього сервера.



Конфігурація Jenkins jobs
Після того, як ми виконали всі попередні роботи, можемо приступити до конфігурації Jenkins jobs для безпосереднього запуску автоматизованих тестів. Для прикладу розглянемо як конфігурувати job для запуску звичайних тест сетів (так званий Client Side Execution) і для виконання функціональних тест сетів (Server Side Execution) використовуючи ALM Lab Management.

Сконфігуріруем job для виконання звичайного тест сету. Для цього в новому створеному Jenkins job додамо build step «Execute HP functional test from HP ALM».



Після того як ми його вибрали потрібно конфігурувати та заповнити усі необхідні поля, такі як:
  • на якому ALM сервері запустити тести
  • логін і пароль користувача від якого будуть запущені тести
  • з якого домену і проекту і т. п.




Я б хотів звернути увагу на полі Test sets, тому що не відразу зрозуміло, які значення повинні бути внесені. Для того що б вказати який тест сет або тест сети будуть виконуватися необхідно відкрити ALM і зайти в проект, з якого будуть запускатися тести. Перейшовши в модуль «Test Lab» шукаємо потрібні нам тест сети і запам'ятовуємо шлях до них від Root папки.

Наприклад, ми хочемо знайти шляхи до наступних тест сетів «Mercury Tours Sanity» і «Mercury Tours UI». Для цього достатньо подивитися на дерево папок і внести цю ієрархію Jenkins job, використовуючи «\» як роздільник.





Так само хочеться згадати можливість вказати, де запустити даний тест сети, використовуючи опцію «Run mode».Дана опція дозволяє вибрати одне з 3х місць: на локальній машині, на заздалегідь заданої в параметрах тест сетів машині(-ах), або ж на конкретній машині, яка буде передана як параметр Jenkins job. На цьому вся необхідна налаштування запуску звичайних тест сетів закінчується. Перейдемо до налаштування запуску через Lab Management (функиональных тест сетів).

HP ALM Lab Management дозволяє управляти ресурсами, хостами і таймслотами, а так само всім, що необхідно для запуску автоматизованих тестів (як функціональних так і тестів на продуктивність).

Процес налаштування даного build step дуже схожий з попереднім, за винятком деяких особливостей. Наприклад, ми передаємо не шлях до тест сету, а саме ID, що дозволяє жорстко не привязыватся до місця, де розташований цей тест сет. А так само ми повинні передати час, на яке резервуємо таймслот в АЛМ (по суті це резервування необхідних ресурсів, хостів і всього, що необхідно для виконання цього функціонального тест сету).

Де ж взяти ID функціонального тест сету? Відповідь очевидна, ALM — Test Lab module.



Заповнивши необхідні дані отримаємо приблизно наступну картинку:



Власне з конфігурацією це все. Давайте подивимося, який консольний лог ми отримаємо у разі запуску (для прикладу візьмемо останній сконфігурований тест сет):



Консольний лог досить інформативний і містить багато інформації про занедбаному тест сеті. У разі, якщо вам необхідно отримати більше інформації, то можна відкрити репорт, перейшовши на посилання в балці, що досить зручно.

Як ми бачимо з ловга тест сет ще біжить. Давайте перевіримо HP ALM що він дійсно запустився. Відкриваємо HP ALM і переходимо в Testslot модуль. Там ми бачимо, що створився таймслот під потреби функціонального тест сету:



Післямова
У даній статті ми розглянули, як налаштувати і запустити 2 типу тест сетів. І як ми бачимо запускати HP ALM тести/тест сети використовуючи Jenkins легко і просто. Хотілося б відзначити, що у HP Application Automation Tools плагіна відкритий вихідний код, і кожен бажаючий може внести свою лепту у його розвиток.

Що б отримати більше інформації про цей плагіні та його використанні, наприклад з тестами на продуктивність або UFT/QTP тестами можна перейти на офіційну сторінку.

Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.