Robot Framework - мощный и гибкий фреймворк для создания собственной системы тестирования. Я работаю с ним около года, и до сих пор восхищаюсь, насколько логично и удобно он устроен.

Вот типичный пример: допустим, каждый тест связан с одним или несколькими тикетами в баг-трекере. Самый логичный способ установить эту связь - добавить соответствующие теги к тесту или набору тестов. Теперь в файлах отчётов будет видно, насколько успешно проходят тесты по каждому из тикетов.

Сегодня я задался вопросом: а можно ли добавить в отчёты ещё и ссылку на сам тикет, чтобы можно было одним кликом перейти на соответствующую страницу в трекере?

Оказалось, это делается совсем несложно. Достаточно добавить один параметр к строке запуска pybot (или jybot), и ссылки на тикеты добавятся на страницу отчёта.

Для наглядности я сделал небольшой пример.

Создайте файл taglinks.txt с подобным содержанием:

*** Settings ***
Force Tags        issue-123

*** Test Cases ***
Pass
    [Tags]    issue-1234    not-an-issue
    No Operation

И запустите тест командой:

$ pybot \
    --tagstatlink issue-*:http://example.com/redmine/issues/%1:Issues \
    --tagstatlink *i*:http://ahitrin.github.com/:Blog \
    taglinks.txt

Результат не только радует глаз, но и делает отчёт намного удобнее:

pic

Во-первых, к тегам действительно добавились ссылки. Ссылка “Issues” для тега issue-123 отправит пользователя на http://example.com/redmine/issues/123, а для тега issue-1234, соответственно, на http://example.com/redmine/issues/1234.

Во-вторых, видно, что можно создавать несколько ссылок на каждый тег. Главное здесь - придумать для своих тестов хороший способ именования тегов, чтобы не возникало случайных коллизий (а только запланированные). Лично мне пока хватит и просто ссылок на внутренний Redmine ;)

Вот и всё на сегодня. Желаю всем зелёных тестов, и побольше!