Vanessa Automation или 1С:Сценарное тестирование: какой инструмент лучше выбрать для автоматизации тестов?

Программист 1С v8.3 (Управляемые формы) 1С:ERP Управление предприятием IT и автоматизация бизнеса
← На главную

В мире разработки и внедрения решений на платформе «1С:Предприятие» автоматизация тестирования играет ключевую роль в обеспечении качества и стабильности. Перед нами часто встает вопрос выбора между двумя мощными инструментами для сценарного тестирования: Vanessa Automation (также известной как Vanessa ADD) и «1С:Сценарное тестирование». Каждый из них обладает своими уникальными особенностями, преимуществами и недостатками, которые мы подробно рассмотрим, чтобы помочь вам принять взвешенное и обоснованное решение.

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

Vanessa Automation (Vanessa ADD): Гибкость, открытость и развитое сообщество

Vanessa Automation – это мощный open-source проект, активно развиваемый сообществом разработчиков и тестировщиков 1С. Его главная сила заключается в исключительной гибкости, широких возможностях кастомизации и постоянном развитии благодаря активной поддержке сообщества.

Преимущества Vanessa Automation

Рассмотрим ключевые преимущества, которые делают Vanessa Automation привлекательным выбором для многих проектов:

  1. Гибкость и открытость: Будучи проектом с открытым исходным кодом, Vanessa Automation предоставляет нам возможность создавать собственные шаги на встроенном языке 1С. Это значительно расширяет функциональность инструмента, давая полный контроль над процессом тестирования и позволяя адаптировать его под самые специфические и нестандартные требования вашего проекта.
  2. Разнообразие видов тестирования: Мы можем использовать Vanessa Automation для различных видов тестирования, включая юнит-тестирование, приемочное тестирование, сценарное тестирование, интеграционное тестирование, нагрузочное тестирование и BDD (поведенческое тестирование). Эта универсальность делает его подходящим для использования на разных этапах разработки и тестирования.
  3. Поддержка Gherkin и Turbo Gherkin: Инструмент использует язык Gherkin с его расширением Turbo Gherkin для описания сценариев. Этот подход позволяет вовлекать в процесс тестирования не только разработчиков, но и бизнес-аналитиков, так как сценарии описываются на естественном языке. Мы можем создавать сценарии вручную, выбирать из обширной библиотеки готовых шагов или записывать их, выполняя интерактивные действия в системе.
  4. Автоматическая генерация документации и видеоинструкций: Одно из уникальных и крайне полезных преимуществ – это возможность автоматически формировать документацию по тестам в форматах HTML или Markdown. Кроме того, мы можем создавать видеоинструкции по работе с системой на основе прогона сценариев. Это бесценно для обучения новых пользователей, поддержания актуальной документации и демонстрации функционала.
  5. Широкие возможности проверок: Vanessa Automation позволяет нам проверять поведение системы любой сложности, включая тестирование регулярных выражений. Мы можем сверять показатели отчетов с целевыми значениями, контролировать взаимодействие пользователей из разных сеансов, а также отслеживать успешность обмена данными между различными базами данных.
  6. Интеграция с системами контроля версий: Инструмент превосходно интегрируется с системами контроля версий, такими как Git и GitHub. Это обеспечивает удобное хранение, версионирование тестов и позволяет эффективно организовать совместную разработку тестовых сценариев в команде.
  7. Отчетность Allure: Для анализа результатов тестирования Vanessa Automation предоставляет возможность генерации подробных отчетов в формате Allure. Эти отчеты наглядно и детализированно показывают результаты каждого прогона тестов, упрощая локализацию и анализ ошибок.
  8. Использование экспортных сценариев: Для часто используемого и повторяющегося функционала мы можем создавать экспортные сценарии. Это позволяет сократить объем кода тестов, ускорить их написание и значительно повысить переиспользуемость тестовых компонентов.
  9. Наличие готовых специалистов и свежих курсов: Как было отмечено в обсуждении, по Vanessa Automation существует достаточно много свежих курсов и обучающих материалов. На рынке труда уже есть специалисты, обладающие компетенциями в работе с этим инструментом, что облегчает поиск и подготовку команды.
  10. Поддержка в 1С:СППР: Отмечена интеграция и поддержка Vanessa Automation в Системе Проектирования и Подготовки Решений 1С (СППР), что подчеркивает ее значимость в экосистеме 1С.
  11. Тестирование ERP: Vanessa Automation активно используется для тестирования таких крупных и сложных конфигураций, как 1С:ERP Управление предприятием. Это является прямым свидетельством его зрелости и способности справляться с масштабными задачами.

Недостатки Vanessa Automation

Однако, как и любой сложный инструмент, Vanessa Automation имеет свои особенности и потенциальные сложности, которые мы должны учитывать:

  1. Сложность для неподготовленных пользователей: Vanessa Automation, особенно в варианте Vanessa ADD, может быть достаточно сложна для освоения пользователями без предварительной подготовки, несмотря на наличие таких инструментов, как помощник отладки. Необходимость изучения специфического синтаксиса Turbo Gherkin и освоения специфических подходов к написанию тестов может стать значительным барьером на начальном этапе. Интерфейс может показаться менее интуитивным по сравнению с более простыми решениями.
  2. Многословный язык: Как уже упоминалось участниками обсуждения, язык Turbo Gherkin может быть многословным. Это требует привыкания, глубокого изучения синтаксиса и может увеличить время на написание и поддержку тестовых сценариев.
  3. Потребность в дополнительных ресурсах: Внедрение и полноценная поддержка автоматизированного сценарного тестирования с использованием Vanessa Automation требует значительных как человеческих, так и временных ресурсов, особенно на этапах освоения, кастомизации и создания собственных шагов.
  4. Технические сложности при параллельном выполнении: Мы можем столкнуться с техническими сложностями при попытке распараллеливания выполнения тестов. Например, могут возникать проблемы с лицензированием клиентов тестирования 1С в Docker-контейнерах или некорректным открытием дочерних окон клиентов тестирования на разных виртуальных рабочих столах.
  5. Возможные ограничения при работе с внешними обработками: При работе через внешнюю обработку могут проявляться некоторые ограничения во взаимодействии с конфигурацией, например, при отслеживании выполнения фоновых заданий, что требует дополнительных обходных решений.
  6. Вероятность ошибок в открытом проекте: Будучи открытым проектом, Vanessa Automation может периодически содержать ошибки или недоработки, которые нам придется самостоятельно анализировать, находить пути обхода или даже участвовать в их исправлении в рамках сообщества.

"1С:Сценарное тестирование": Простота, интуитивность и официальная поддержка

"1С:Сценарное тестирование" является официальным решением от фирмы "1С", разработанным с акцентом на простоту использования, интуитивно понятный интерфейс и глубокую интеграцию с платформой "1С:Предприятие". Это решение стремится обеспечить максимально комфортную работу для широкого круга пользователей.

Преимущества "1С:Сценарное тестирование"

Давайте рассмотрим, какие преимущества предлагает нам "1С:Сценарное тестирование":

  1. Разработка и поддержка фирмой "1С": Это одно из ключевых преимуществ. Мы получаем стабильное, актуальное решение с гарантированной интеграцией в экосистему 1С:Предприятие. Официальная поддержка и регулярные обновления от разработчика платформы обеспечивают надежность и развитие инструмента.
  2. Интуитивно понятный интерфейс: Инструмент отличается простотой использования. Для запуска тестов нам не требуются глубокие специальные навыки; даже специалисты без опыта в программировании могут пользоваться конфигурацией при базовом представлении о продукте 1С. В обсуждении также была отмечена его интуитивная понятность.
  3. Автономность и интеграция: Конфигурация "1С:Сценарное тестирование" может работать полностью автономно, не требуя установки дополнительных программ или сторонних зависимостей. При этом она поддерживает интеграцию с другими инструментами тестирования в экосистеме 1С.
  4. Широкий функционал: Инструмент разработан для автоматизации большинства потребностей тестировщиков. Мы можем использовать его для планирования тестовых циклов, проектирования сценариев, выполнения тестов и анализа полученных результатов.
  5. Автоматическая запись действий: Предусмотрена удобная функция автоматической записи интерактивных действий пользователя. Это позволяет нам быстро создать черновой вариант тестового сценария, который затем можно сохранить в XML-файл и доработать.
  6. Предопределенные шаги: "1С:Сценарное тестирование" содержит богатую библиотеку предопределенных шагов для работы с формами, таблицами, выполнения общей проверки бизнес-логики и имитации интерактивных действий пользователя. Это значительно ускоряет процесс написания тестов для типовых и стандартных сценариев.
  7. Детальная фиксация и отчетность: Инструмент обеспечивает детальную фиксацию всех проверок в журнале выполнения тестов. Мы можем формировать подробные отчеты с возможностью их автоматической рассылки заинтересованным лицам. Более того, он может автоматически заносить выявленные ошибки в собственную баг-трекинговую систему, упрощая процесс управления дефектами.
  8. Улучшения в последних версиях: Фирма "1С" постоянно развивает продукт. Например, в версиях 3.0.37 и выше были добавлены функции ускорения автотестирования, улучшено взаимодействие с тестовыми сценариями, появилась возможность настройки повторных запусков при сбоях и использования общих переменных для планов тестирования. Значительно улучшено переключение между тестовыми клиентами и объединение режимов создания и выполнения сценария, что повышает удобство использования.
  9. Работа с управляемым интерфейсом: Инструмент ориентирован на тестирование конфигураций, разработанных под управляемое приложение. Это соответствует современным стандартам разработки на платформе 1С и гарантирует совместимость с актуальными решениями.
  10. Использование в РАРУС: Факт использования "1С:Сценарное тестирование" в таких крупных компаниях, как РАРУС, подтверждает его практическую применимость и надежность в реальных проектах.

Недостатки "1С:Сценарное тестирование"

Несмотря на свои преимущества, "1С:Сценарное тестирование" имеет и некоторые ограничения, которые следует учитывать при выборе:

  1. Меньшая гибкость в написании шагов: По сравнению с Vanessa Automation, которая позволяет нам писать собственные шаги на встроенном языке 1С, "1С:Сценарное тестирование" больше ориентировано на использование предопределенных шагов. Это может стать ограничением для реализации очень сложных и специфических тестовых кейсов, требующих тонкой настройки или нестандартной логики, которую невозможно выразить стандартными шагами.
  2. Отсутствие некоторых возможностей в ранних версиях: В ранних версиях могли отсутствовать некоторые продвинутые возможности, которые изначально были доступны в Vanessa, например, генерация видеоинструкций или расширенная интеграция с внешними системами. Хотя "1С:Сценарное тестирование" постоянно развивается, нам всегда следует проверять актуальную версию и ее возможности.
  3. Меньше курсов и отсутствие прямой поддержки в СППР: В отличие от Vanessa Automation, для "1С:Сценарное тестирование" на рынке может быть меньше готовых курсов и обучающих материалов. Также было отмечено отсутствие прямой поддержки в 1С:СППР, что может потребовать дополнительных усилий при интеграции в существующие процессы.
  4. Неопределенное будущее (мнение пользователей): Один из участников обсуждения выразил опасения по поводу будущего развития инструмента. Хотя официальная поддержка от фирмы "1С" обычно гарантирует развитие, такие опасения могут возникать из-за скорости появления новых возможностей или коммуникации по планам развития.
  5. Не поддерживает работу с обычным интерфейсом: Инструмент не предназначен для тестирования конфигураций, разработанных под обычный интерфейс 1С:Предприятия. Это является существенным ограничением для проектов, использующих устаревшие или специфические конфигурации, не переведенные на управляемые формы.

Какой инструмент выбрать: Vanessa Automation или "1С:Сценарное тестирование"?

Выбор между Vanessa Automation и "1С:Сценарное тестирование" в значительной степени зависит от потребностей вашего проекта, имеющихся ресурсов и компетенций вашей команды. Давайте подведем итоги и определим, когда какой инструмент будет наиболее подходящим:

  1. Выбирайте Vanessa Automation, если:
    • Ваша команда ценит максимальную гибкость, открытость и глубокую кастомизацию. Вы готовы инвестировать время в изучение специфического синтаксиса (Gherkin/Turbo Gherkin) и имеете опыт работы с open-source решениями и системами контроля версий вроде Git.
    • Ваш проект требует реализации сложных, нестандартных тестовых сценариев, для которых необходим полный контроль над процессом тестирования, написание собственных шагов и глубокая интеграция с внешними системами.
    • Вам требуется автоматическая генерация детальной документации, включая видеоинструкции, для обучения пользователей или демонстрации функционала.
    • Вы работаете с крупными и сложными конфигурациями, такими как 1С:ERP, и вам нужен инструмент, способный справиться с их масштабами и разнообразием функционала.
    • Ваша команда имеет опыт и готовность к участию в развитии сообщества или самостоятельной доработке инструмента.
  2. Выбирайте "1С:Сценарное тестирование", если:
    • Вы ищете интуитивно понятное решение с официальной поддержкой от фирмы "1С", которое легко освоить даже неспециалистам.
    • Вам важна стабильность, гарантированная совместимость с платформой 1С и регулярные обновления от разработчика.
    • Ваши сценарии тестирования в основном типовые и хорошо ложатся на предопределенные шаги, а глубокая кастомизация не является критически важной.
    • Вам необходима быстрая и удобная автоматическая запись действий пользователя для оперативного создания тестов.
    • Команда ценит простоту внедрения, минимальный порог входа и уже плотно интегрирована в экосистему 1С.
    • Вы работаете исключительно с конфигурациями на управляемом интерфейсе и не планируете тестировать обычные формы.

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

← На главную