Skip to content

Повторный и выборочный запуски тестов через allurectl ​

Примечание

Инструкция актуальна для allurectl версии 2.22.1. Подробнее о новых возможностях и улучшениях allurectl см. на официальной странице релизов в GitHub.

Allurectl поддерживает повторный и выборочный запуски тестов для команды watch. Список тестов для таких запусков передается в пайплайн CI-системы через тест-план — файл testplan.json. Тесты из тест-плана выполнятся только при условии, если адаптер Allure Framework умеет читать этот файл и фильтровать по нему тесты.

Структура файла testplan.json для allurectl ​

Файл testplan.json содержит список тестов, которые должен выполнить тестовый фреймворк.

Файл создается:

Пример файла testplan.json с двумя тестами
json
{
  "version": "1.0",
  "tests": [
    {
      "id": "10",
      "selector": "io.qameta.allure.examples.junit4.AllureSimpleTest.allureSimpleTest"
    },
    {
      "id": "11",
      "selector": "io.qameta.allure.examples.junit4.AllureParameterizedTest.allureParameterizedTest[First Name]"
    }
  ]
}

где:

  • id — ID теста в ТестОпс;
  • selector — селектор теста. По умолчанию селектор соответствует полному имени теста (fullName) в файле с его результатом.

Поддержка тест-планов адаптером Allure Framework ​

Вы можете проверить, поддерживает ли ваш адаптер Allure Framework выборочный запуск тестов по тест-плану. Проверка выполняется локально, без использования allurectl и ТестОпс.

Для этого:

  1. Локально создайте файл testplan.json и добавьте в него несколько тестов.
  2. В терминале, где вы будете запускать тесты, задайте переменную ALLURE_TESTPLAN_PATH, указав абсолютный путь к вашему файлу testplan.json.
  3. В том же терминале запустите тесты обычной командой, без дополнительных фильтров.
Пример проверки для Gradle
bash
export ALLURE_TESTPLAN_PATH="$(pwd)/testplan.json"

./gradlew clean test

Если выполнились только тесты из файла testplan.json, вы сможете запускать тесты через allurectl повторно или выборочно. В противном случае проверьте настройку вашего адаптера или обратитесь в Центр поддержки за дальнейшей консультацией.

Важно

Для этой проверки переменная ALLURE_TESTPLAN_PATH задается вручную. Не добавляйте ее в профиль командной оболочки и не переносите в пайплайн CI-системы, если тесты запускаются со стороны ТестОпс: с заданной переменной allurectl не запросит у ТестОпс список выбранных тестов.

Сценарии повторного и выборочного запусков тестов через allurectl ​

Повторный и выборочный запуски тестов со стороны ТестОпс ​

Если тесты в CI-системе запускаются из ТестОпс, allurectl автоматически создает файл testplan.json и передает его адаптеру. Дополнительных настроек в пайплайне CI-системы не требуется.

Чтобы запустить тесты повторно или выборочно со стороны ТестОпс, воспользуйтесь одним из способов:

Далее ТестОпс и allurectl выполняют все действия автоматически:

  1. ТестОпс запускает свою джобу со списком выбранных тестов и запускает джобу в CI-системе, передав в нее переменную ALLURE_JOB_RUN_ID — ID запуска джобы в ТестОпс.
  2. Allurectl, используя команду watch, запрашивает у ТестОпс список тестов для запуска, создает файл testplan.json и передает его путь команде тестов в переменной ALLURE_TESTPLAN_PATH.
  3. Адаптер Allure Framework читает файл testplan.json, и тестовый фреймворк выполняет тесты из этого файла.
  4. Allurectl, используя команду watch, импортирует результаты тестов в запуск джобы ТестОпс, указанный в переменной ALLURE_JOB_RUN_ID.

Важно

Если адаптер Allure Framework не сможет прочитать файл testplan.json, выбранный список тестов будет игнорироваться и пайплайн CI-системы выполнит все тесты интеграции как при обычном запуске джобы ТестОпс. Подробнее о действиях в этой ситуации см. Устранение неполадок allurectl → Тесты не запускаются выборочно через allurectl.

Повторный и выборочный запуски тестов со стороны CI-системы ​

Если пайплайн CI-системы запускается не из ТестОпс, для выборочного запуска тестов необходимо создать файл тест-плана вручную, используя AQL-запрос. Например, вы можете указать ID существующего тест-плана в ТестОпс.

Чтобы запустить тесты выборочно со стороны CI-системы:

  1. Задайте в окружении пайплайна CI-системы основные параметры импорта через allurectl.

  2. В том же окружении задайте переменную ALLURE_TESTPLAN_PATH, указав абсолютный или относительный путь к файлу, в который будет сохранен тест-план, например ./testplan.json.

  3. В шаге пайплайна перед запуском тестов создайте файл тест-плана командой test-case plan, используя флаги:

    • --query — укажите AQL-запрос для выбора тест-кейсов;

      Совет

      Чтобы выбрать тест-кейсы из существующего тест-плана в ТестОпс, укажите его ID, например testPlan=222.

    • --output-file — укажите путь к файлу тест-плана как в переменной ALLURE_TESTPLAN_PATH.

  4. Запустите тесты командой watch в том же шаге пайплайна или в шаге с тем же окружением.

Тестовый фреймворк выполнит только тесты из тест-плана, а команда watch импортирует их результаты в ТестОпс.

Пример выборочного запуска тестов по тест-плану ТестОпс
bash
export ALLURE_ENDPOINT=https://testops.example.com
export ALLURE_TOKEN=55555555-5555-5555-5555-555555555555
export ALLURE_PROJECT_ID=100
export ALLURE_TESTPLAN_PATH="./testplan.json"

allurectl test-case plan --query "testPlan=222" --output-file ${ALLURE_TESTPLAN_PATH}
allurectl watch -- ./gradlew clean test

Logo © 2026 Все права защищены. Сайт принадлежит компании ООО «Инструменты тестирования»