Pull to refresh

Comments 4

Статья отличная, но я не понял - решение открытое, его можно попробовать у себя?

Благодарю за отзыв!

Полностью открытым решение быть не может оно включает внутренние компоненты и интеграции, завязанные на корпоративную инфраструктуру, CI и окружение. Однако концепция остаётся универсальной, и её можно воспроизвести в облегчённом виде на любой машине:

запись действий + UI-метаданных,

сценарии в виде JSON,

раннер, который воспроизводит шаги и выполняет проверки.

Я рассматриваю возможность собрать небольшую демонстрационную версию без корпоративных зависимостей чтобы показать сам подход. Если будет запрос на это со стороны сообщества, можно сделать такой вариант.

А можете рассказать про аналог UI Automation в линуксе? Интересно как там это возможно.

Насколько надежные тесты получаются? Можете ли вы показать видео с записью и воспроизведением? Есть ли визуализация фиксируемого компонента при записи скрипта? Есть ли возможность вкладывать один скрипт в другой, чтобы например одинаковую последовательность не записывать каждый раз?

Когда-то я делал подобный проект, но только под windows. До конца так и не довел, не смог добиться 100% стабильности определения элементов.

Спасибо за вопросы - отвечу кратко и в рамках того, что можно описывать публично.

  1. Аналог UI Automation в Linux
    Прямого аналога Windows UIA нет.
    Есть AT-SPI, но поддержка фрагментирована и зависит от тулкита (GTK/Qt). Поэтому в Linux работает только облегчённый режим: базовые операции доступны, но без полноценного дерева UI. Это скорее вспомогательная возможность, а не основная платформа.

  2. Надёжность тестов
    На Windows тесты получаются устойчивые именно за счёт многослойного поиска элементов и использования нескольких источников метаданных.
    Мы не стремимся к 100% стабильности - она недостижима в принципе - но достигаем высокой повторяемости при реальных сценариях.

  3. Продемонстрировать запись/воспроизведение
    Рабочие записи привязаны к корпоративным приложениям, поэтому показывать их нельзя.
    Думаю над подготовкой краткого публичного демо на нейтральном приложении.

  4. Визуализация фиксируемых элементов
    Визуализация есть, но она утилитарная: отображает структуру метаданных элемента и путь в UI-дереве.
    Это внутренний технический инструмент, он не предназначен для широкого использования.

  5. Вкладывание скриптов
    Да, есть механизм компоновки сценариев, чтобы переиспользовать повторяющиеся последовательности действий. Это позволяет сократить объём тестов и уменьшить рутинные правки при изменениях UI.

Если будет интерес, могу позже подготовить отдельный материал по архитектурным принципам, не углубляясь в закрытую часть реализации.

Sign up to leave a comment.

Articles