28–30 сентября 2024 года на партнёрском семинаре фирмы «1С», традиционно в рамках секции «Развитие 1С:Бухгалтерии», был представлен доклад «Новое в сценарном тестировании» от руководителя группы автоматизации тестирования прикладных решений Александра Плотникова.
Хотя сейчас уже май 2025 года и произошло немало изменений, касающихся инструмента «1С:Сценарное тестирование» — прошёл весенний семинар фирмы «1С» 2025, где представили самые свежие обновления инструмента, вышла новая версия с заявленными изменениями, — полагаю, что материалы из данного доклада остаются актуальными и сегодня, и их стоит представить.
Доклад открывается коротким представлением конфигурации «1С:Сценарное тестирование».
Затем демонстрируются новые возможности инструмента, вошедшие в версию 3.0.36 и сгруппированные по четырём основным изменениям:
- Упрощен запуск тест-наборов;
- Улучшен конструктор командной строки;
- Улучшен мастер командной строки для запуска теста;
- Улучшена работа с шагом комментарий.
Упрощен запуск тест-наборов
Немного о том, что такое тест-набор. Тест-набор – это такой вид теста, позволяющий объединить несколько тестов, которые должны выполняться последовательно, в один бизнес-пример.
Например, проверяется синхронизация между двумя конфигурациями: «1С:Бухгалтерия предприятия» и «1С:Управление нашей фирмой». Фактически эта задача состоит из нескольких шагов: вначале настраивается обмен со стороны программы «1С:Бухгалтерия предприятия», затем продолжается процесс синхронизации уже в программе «1С:Управление нашей фирмой». После этого необходимо открыть обе базы и убедиться, что результаты синхронизации корректны. Подобные проверки удобно объединять в один общий тест-набор.
Как было раньше?
Раньше запускать тест-наборы было неудобно. Для запуска тестов используются пакеты тестирования. Пакет — это особая сущность, позволяющая автоматически подготовить тестовое окружение, обновить информационную базу, необходимую для проведения тестирования, и запустить сами тесты на исполнение.
Для каждого теста из тест-набора приходилось повторять одни и те же шаги. Например, на стороне «1С:Бухгалтерия предприятия» следовало открыть приложение, загрузить туда сценарий, передать необходимые параметры, выполнить тест и завершить работу приложения. То же самое повторялось на стороне «1С:Управление нашей фирмой».
При использовании тест-набора для каждого теста из данного тест-набора приходилось создавать отдельную группу шагов. Чем больше было тестов в тест-наборе, тем сильнее росло количество дублирующихся вспомогательных шагов в пакете.
Что сделано?
Добавлен новый шаг пакета тестирования — «Выполнить тест-набор». Больше не нужно дублировать вспомогательные шаги типа «Запуск тестируемого приложения», «Передача параметров» и прочие.
Достаточно одного шага — «Выполнить тест-набор», который автоматически выполнит в цикле все тесты из тест-набора. Шаги запуска, загрузки параметров и другие шаги указываются непосредственно внутри самого теста.
Таким образом, если состав тест-наборов изменится — нет необходимости переписывать весь пакет.
Также постарались сделать шаг «Выполнить тест-набор» более универсальным.
Во-первых, с его помощью можно не только запускать тест-наборы, но и обычные тесты — чтобы не плодить пакеты тестирования под разные проверки.
Во-вторых, можно запускать тесты, сохранённые ранее в любом каталоге компьютера. Причём можно запустить как конкретный тест, так и все тесты, имеющиеся в указанной папке.
Улучшен конструктор командной строки
В «1С:Сценарное тестирование» большинство действий, связанных с сервисными шагами: подготовка информационных баз, обновление и прочее, позволяют формировать командную строку и затем её запускать. Но есть два отдельных шага: «Пакетный запуск конфигуратора» и «Пакетный запуск предприятия», куда можно ввести произвольную командную строку.
Эти шаги имели серьёзные функциональные ограничения: содержали лишь базовые команды, да и параметров передавалось автоматически очень мало.
Например, на слайде показана команда из командной строки — «Загрузка конфигурации из файлов».
Ранее можно было указать лишь каталог, где расположены файлы. Чтобы задать дополнительные параметры, приходилось переходить в конфигуратор, искать необходимые настройки и уточнять, в каком формате их указывать. Все эти параметры представлены на слайде слева. Затем их нужно вручную дописывать в шаг.
Что было сделано? Полностью пересмотрели и обновили всю концепцию.
Во-первых, теперь появилась возможность авторизоваться в командной строке не только из настроек шага, но и из тест-набора, передавая нужные параметры.
А во-вторых, доработали сам конструктор. Теперь можно не использовать заданную в пакете тестирования платформу, а указывать конкретную версию. Зачем это нужно? Допустим, разработка ведётся на одной версии платформы, тестирование — на другой. Соответственно, в пакете тестирования указана одна версия платформы, а хранилище расположено на другой версии. Можно теперь подключаться через нужную версию прямо из шага, обновить её, выгрузить конфигурационный файл из хранилища и продолжить тестирование, не меняя настройки пакета.
Добавлена более гибкая возможность авторизации при использовании командной строки — теперь можно либо задать переменные через настройки шага информационной базы, либо «жёстко» указать путь к базе, логин и пароль пользователя.
Самое главное: поддержаны практически все команды командной строки и большая часть используемых параметров.
В левой части указан список доступных команд. Выбирается нужная команда. Справа к выбранной команде отображаются обязательные для заполнения параметры — они выделены в отдельные поля.
Все дополнительные параметры скрыты в кнопке «Плюсик».
У каждой команды собственный набор параметров. Заполненные данные сразу появляются в командной строке.
Обратите внимание: командная строка формируется снизу, выделенным жирным шрифтом обозначен тот её блок, с которым происходит работа в текущий момент.
На последней вкладке «Дополнительно» собраны технические параметры, отвечающие за подавление всплывающих диалогов при запуске, указание пути к файлу лога и другие подобные настройки.
По итогу были поддержаны практически все команды пакетного запуска.
Появилась возможность отвязаться от версии платформы, используемой в шагах — можно «жёстко» устанавливать свою.
Сделали более гибкими настройки и добавили все параметры в мастер, чтобы не переходить в конфигуратор и не искать там необходимые параметры.
Улучшен мастер командной строки для запуска теста
Что это такое? Если вы используете, например, не «1С:Сценарное тестирование», а «1С:Тестировщик» — такую младшую версию, — то не сможете автоматически запускать тесты по расписанию, хотя возможность вызова тестов всё равно остаётся. Необходимо сохранить команду для запуска сценария, после чего добавить её в планировщик (встроенный или внешний), настроив там расписание.
Раньше в качестве менеджера тестирования можно было использовать только базу «1С: Тестировщик», теперь доступна любая информационная база 1С и выгруженная обработка для создания тестов из «1С: Сценарное тестирование».
Сделали более гибкой саму настройку запуска — можно либо «жёстко» прописывать разные пути, параметры и прочее, либо брать их непосредственно из настроек сценария (они там также присутствуют).
Немного улучшили дружественность интерфейса — кажется мелочью, однако читать стало проще и комфортнее.
Собственно, на последней закладке, после того как всё настроено, можно сохранить файл с параметрами и скопировать саму командную строку — дальше её достаточно вставить в «запускальщик», bat-файл, планировщик заданий или в свою CI/CD-систему, чтобы автотесты выполнялись автоматически по расписанию.
Улучшена работа с шагом комментарий
Замечено, что шаг «Комментарий» в сценариях тестирования пользователи применяют не только для простых пояснений, но и как задания на доработку или актуализацию автотестов.
Также коллеги используют комментарий как шаблон для описания проверок или перечисления форм, к которым применим этот шаблон проверки. Иными словами, такой шаблон содержит правила заполнения сценариев тестирования при идентичных проверках.
Ранее в шаге «Комментарий» можно было добавить лишь текстовую информацию. Поэтому такие комментарии были сложны для восприятия — нужно было читать большой объем текста, разбираться в нём и дополнительно поддерживать в актуальном состоянии.
В текущей версии текстовое поле комментария переделано в поле HTML-документа. Теперь туда можно вводить не только текст, но и вставлять иллюстрации, таблицы, применять разные виды форматирования и прочие возможности HTML-поля.
Это значительно упрощает подготовку описаний — появилась возможность иллюстрировать описание картинками, сокращая объём текста. Такой подход делает комментарии удобнейшими для восприятия и понимания, позволяя экономить время.
Если есть вопросы и предложения к инструменту, то их можно присылать на электронную почту либо в Telegram-канал.
На этом всё. Спасибо за внимание!