Перейти до основного вмісту

Bamboo

WebdriverIO пропонує тісну інтеграцію з системами CI, такими як Bamboo. За допомогою репортерів JUnit або Allure ви можете легко налагоджувати свої тести, а також відстежувати результати тестів. Інтеграція досить проста.

  1. Встановіть репортер тестів JUnit: $ npm install @wdio/junit-reporter --save-dev)
  2. Оновіть свою конфігурацію, щоб зберігати результати JUnit там, де Bamboo зможе їх знайти (і вкажіть репортер junit):
// wdio.conf.js
module.exports = {
// ...
reporters: [
'dot',
['junit', {
outputDir: './testresults/'
}]
],
// ...
}

Примітка: Це завжди хороший стандарт зберігати результати тестів в окремій папці, а не в кореневій папці.

// wdio.conf.js - Для тестів, що виконуються паралельно
module.exports = {
// ...
reporters: [
'dot',
['junit', {
outputDir: './testresults/',
outputFileFormat: function (options) {
return `results-${options.cid}.xml`;
}
}]
],
// ...
}

Звіти будуть подібними для всіх фреймворків, і ви можете використовувати будь-який: Mocha, Jasmine або Cucumber.

На цей момент ми вважаємо, що у вас вже написані тести, результати генеруються в папці ./testresults/, і ваш Bamboo запущений і працює.

Інтеграція ваших тестів у Bamboo

  1. Відкрийте ваш проект Bamboo

    Створіть новий план, прив'яжіть ваш репозиторій (переконайтеся, що він завжди вказує на найновішу версію вашого репозиторію) і створіть ваші етапи

    План детально

    Я буду використовувати етап і завдання за замовчуванням. У вашому випадку ви можете створити власні етапи та завдання

    Етап за замовчуванням

  2. Відкрийте ваше тестове завдання і створіть задачі для запуску ваших тестів в Bamboo

    Задача 1: Отримання вихідного коду

    Задача 2: Запустіть ваші тести npm i && npm run test. Ви можете використовувати задачу Script і Shell Interpreter для виконання вищезазначених команд (це згенерує результати тестів і збереже їх у папці ./testresults/)

    Запуск тесту

    Задача: 3 Додайте задачу jUnit Parser для аналізу збережених результатів тестів. Будь ласка, вкажіть тут каталог результатів тестів (ви також можете використовувати шаблони у стилі Ant)

    jUnit Parser

    Примітка: Переконайтеся, що ви тримаєте задачу аналізу результатів у розділі Final, щоб вона завжди виконувалася, навіть якщо ваша тестова задача не виконана

    Задача: 4 (необов'язково) Щоб переконатися, що ваші результати тестів не змішуються зі старими файлами, ви можете створити задачу для видалення папки ./testresults/ після успішного аналізу в Bamboo. Ви можете додати скрипт оболонки, наприклад rm -f ./testresults/*.xml для видалення результатів або rm -r testresults для видалення всієї папки

Після завершення вищевказаної ракетної науки, увімкніть план і запустіть його. Ваш кінцевий результат буде таким:

Успішний тест

Успішний тест

Невдалий тест

Невдалий тест

Невдалий та виправлений

Невдалий та виправлений

Ура!! Це все. Ви успішно інтегрували свої тести WebdriverIO в Bamboo.

Welcome! How can I help?

WebdriverIO AI Copilot