Найти тему

Про автоматизированное тестирование на «Ozon Tech Community 1С Meetup»

Оглавление

30 марта прошло мероприятие «Ozon Tech Community 1С Meetup», посвящённое разработке решений на базе 1С:Предприятие. В программе митапа было два доклада по тестированию:

  • «Инструменты автоматизированного тестирования 1С», спикер Татьяна Головкина, старший специалист по тестированию.
  • «Примеры реализованных тестов в 1С», спикер Иван Зарубин, ведущий разработчик 1С.

В первом докладе рассказывалось про инструменты ручного и автоматизированного тестирования: фреймворках Vanessa Automation и Vanessa ADD, Allure TestOps. А во втором докладе была затронута тема модульного и интеграционного тестирования.

Пока в рамках данного канала меня заинтересовал именно первый доклад, и я хочу осветить его основные моменты. Но посмотреть стоит весь митап для расширения своего кругозора про экосистему 1С.

Тайм-коды:

  • 0:00:00 Подготовка
  • 0:03:40 Приветствие
  • 0:05:30 Алексей Коломоец - 1С:Зарплата и управление персоналом в IT-ландшафте Ozon
  • 0:29:10 Вопросы к первому докладу
  • 0:51:30 Татьяна Головкина - Инструменты автоматизированного тестирования 1С
  • 1:13:00 Вопросы ко второму докладу
  • 1:39:00 Кофе-брейк
  • 2:03:50 Иван Зарубин - Примеры реализованных тестов в 1С, инструментарий
  • 2:15:30 Вопросы к третьему докладу
  • 2:36:30 Евгений Забелин - Разработка мастер-конфигурации для проектов 1С
  • 2:56:50 Вопросы к четвертому докладу
  • 3:10:00 Опрос, закрытие мероприятия

Что тестируется?

Прежде, чем начать рассказывать про используемые инструменты тестирования стоит сказать, а лучше показать, из чего состоит IT-ландшафт Ozon.

Скрин слайда доклада «1С:Зарплата и управление персоналом в IT-ландшафте Ozon» Алексея Коломойца, демонстрирующий IT-ландшафт Ozon
Скрин слайда доклада «1С:Зарплата и управление персоналом в IT-ландшафте Ozon» Алексея Коломойца, демонстрирующий IT-ландшафт Ozon

Как видно по сладу из первого доклада «1С:Зарплата и управление персоналом в IT-ландшафте Ozon» от руководителя группы разработки кадровых систем 1С Алексея Коломойца IT-ландшафт не маленький. И представляет собой интеграцию различных программных продуктов и сервисов. В том числе и продуктов 1С. Это «1С:Зарплата и управление персоналом», «1С:Бухгалтерия предприятия», «1С:Управление имуществом» и «1С:Управление автотранспортом». Программные продукты 1С есть как на обычных, так и на управляемых формах.

Доработки конфигураций 1С стараются минимизировать, чтобы не возникало проблем при обновлении на новые версии. Необходимый функционал реализуют либо через внешние файлы (обработки, отчеты и т.д.), либо создают отдельные подсистемы, которые легко тиражировать на другие конфигурации. Например, если внедрили новую подсистему в «1С:ЗУП» для России, то ее можно добавить и в конфигурации «1С:ЗУП» для Белоруссии и Казахстана.

Собственно данные доработки, обновления на новые версии и интеграции с другими программами тестируются отделом качества.

Инструментарий

Скрин титульного слайда доклада «Инструменты автоматизированного тестирования 1С»
Скрин титульного слайда доклада «Инструменты автоматизированного тестирования 1С»

Вот мы и добрались до самого доклада. Итак, инструментарий:

  • Vanessa ADD используется для написания дымовых тестов (сюда входят модульные и интеграционные тесты).
  • Vanessa Automation используется для сценарных регрессионных тестов.
  • Allure TestOps используется для управления процессами тестирования.
  • GitLab CI, OneScript, Vanessa-runner используются для автоматизации процессов тестирования.
Скрин слайда презентации с перечнем инструментов тестироания 1С
Скрин слайда презентации с перечнем инструментов тестироания 1С

Обычные формы покрыты только дымовыми тестами Vanessa ADD. Управляемые формы покрыты дымовыми тестами Vanessa ADD и сценарными тестами Vanessa Automation.

Дымовые тесты прогоняют на стейдж-окружении (препродакшн): база продакшена восстановленная из бекапа.

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

Allure TestOps

В докладе делался упор именно на получаемую отчетность об выполнении автотестов. Но в ходе секции вопросов выяснилось, что Allure TestOps используется как система управления тестированием. В нем хранятся ручные тест-кейсы и чек-листы.

GitLab CI, OneScript, Vanessa-runner

Процесс автоматического тестирования состоит из:

  • Обновления тестовых баз из хранилища
  • Запуск дымовых тестов
  • Запуск сценарных тестов
  • Синтаксический контроль
  • Выгрузка результатов в Allure TestOps
  • Уведомление в корпоративный чат Mattermost

Итоги

Скрин слайда презентации с итоговыми показателями: частота и количество запускаемых автотестов
Скрин слайда презентации с итоговыми показателями: частота и количество запускаемых автотестов

Полезные ссылки

Скрин слайда презентации с полезными ссылками на инструментарий
Скрин слайда презентации с полезными ссылками на инструментарий

Секция вопросов

Отдельно хочется отметить секцию вопросов. Они дополнили и уточнили многие моменты в докладах. Благодаря им расширилось понимание построения процесса разработки и тестирования в IT-ландшафте Ozon. А также навели на интересные мысли и идеи.

К примеру, Леонид Паутов (автор Vanessa Automation) напомнил, что для тестирования обычных форм можно использовать механизм UI Automation. А если быть еще точнее, то его можно использовать для любых приложений на Windows через инспектор объектов (утилита inspect.exe из Windows SDK). Давно хотел углубиться в данный механизм. Как раз пришло время.

И еще был интересный вопрос про нейросеть. Точнее не сам вопрос, а его идея. А заключалась она в том, чтобы научить нейросеть анализировать программный продукт и выдавать все возможные варианты проверки его блоков. То есть, чтобы нейросеть составляла полноценные тест-кейсы. Может пока и рано до составления тестовых сценариев, но вот помочь тестировщику лучше и глубже понимать программный продукт и предвидеть пересечения проверок, возможно, и можно. Но об этом еще стоит подумать.

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