Robot Framework

pip install tracera-robot

Требуются Python ≥ 3.11 и Robot Framework ≥ 7 (см. Адаптеры автотестов). tracera-robot на PyPI.

Подключите listener:

robot --listener tracera_robot.listener.TraceraListener suite.robot

Опциональная библиотека для comment, error, attachment, Tracera Step и Tracera Test Case:

*** Settings ***
Library    tracera_robot.keywords.TraceraKeywords

Переменные окружения и режим прогона: Адаптеры автотестов.

Привязка testCaseId и autotestName

Предпочтительны теги на тесте.

*** Test Cases ***
Login
    [Tags]    tracera.id:42    tracera.name:e2e/login
    Log    hello

Пробелы и спецсимволы в tracera.name при необходимости кодируйте (e2e%2Flogin). Если tracera.name не указан, то autotestName принимает значение имени теста Robot.

Пропуск

Используйте стандартный Robot Skip. Skip reason добавляется в результат как comment.

*** Test Cases ***
Login
    [Tags]    tracera.id:42    tracera.name:e2e/login
    Skip    env not ready — https://example.com/skip

Шаги

Keywords в тесте становятся шагами в секции Тест результата. Test Setup и Test Teardown → Предусловие и Постусловие результата; Suite Setup и Suite Teardown в отчёт не попадают.

*** Settings ***
Test Setup       Open Shop
Test Teardown    Cleanup

*** Keywords ***
Open Shop
    Log    opening

Add To Cart
    Log    adding

Cleanup
    Log    done

*** Test Cases ***
Checkout
    [Tags]    tracera.id:10    tracera.name:e2e/checkout
    Add To Cart

По умолчанию заголовок шага — имя keyword (Add To Cart). Другой заголовок:

*** Settings ***
Library    tracera_robot.keywords.TraceraKeywords

*** Test Cases ***
Checkout
    [Tags]    tracera.id:10
    Tracera Step    add sku-1    Add To Cart

Выполнится Add To Cart, заголовок шага в отчёте — add sku-1.

В Python-хелперах можно дополнительно использовать tracera.step или @tracera.step("…") из core.

Также в отчёт попадают FOR, IF, WHILE, TRY, ELSE, EXCEPT и FINALLY (без итераций цикла). Вызовы из TraceraKeywords в отчёт как шаги не попадают.

Комментарии, ошибки и вложения

Комментарии, ошибки и вложения: Адаптеры автотестов.

*** Settings ***
Library    tracera_robot.keywords.TraceraKeywords

*** Keywords ***
Open Login
    Tracera Comment    landed on login
    Tracera Attach Text    suite-log.txt    finished login flow

*** Test Cases ***
Login
    [Tags]    tracera.id:42    tracera.name:e2e/login
    Tracera Comment    result-level note
    Tracera Error    result-level error text
    Open Login

Прикрепить файл с помощью Tracera Attach File ${path} image/png.

Параметризованные тесты

С Robot [Template] теги [Tags] на тесте действуют на каждую строку аргументов под шаблоном:

*** Test Cases ***
Login row
    [Tags]    tracera.id:42    tracera.name:e2e/login
    [Template]    Open Path
    /login
    /login/sso

*** Keywords ***
Open Path
    [Arguments]    ${path}
    Log    ${path}

Свой id кейса на каждую строку аргументов — отдельный тест со своими [Tags] (как в разделе Привязка).