Немного предыстории
Я давно работаю с 1С, в основном с УПП.
И, думаю, многим знакома ситуация, когда:
- обновили конфигурацию
- что-то поменяли в коде
- вроде всё ок
- а потом начинается…
- где-то документ не проводится
- где-то форма падает
- где-то поменялись движения
- а где-то "всё работает", но уже не так
И, конечно пользователи начинают "немножко" нервничать:
"вчера всё работало, сегодня нет"
"вы что там опять обновили?"
и т.д.))
Ну в общем, вы поняли)) Все с этим сталкивались
Почему не подошли классические инструменты тестирования
Да, в экосистеме 1С уже есть решения для автоматизированного тестирования, например Vanessa Automation.
Это мощный инструмент, который отлично подходит для:
- сценарного тестирования
- автоматизации UI
- CI/CD
Однако в моих задачах (УПП + обычные формы) возникла другая потребность.
Мне было важно:
- быстро взять реальные документы из базы
- прогнать их
- и посмотреть, что с ними происходит
Без написания сценариев в формате BDD и без подготовки тестовых данных.
В чём отличие подхода
Vanessa — это инструмент для построения тестовых сценариев.
Мой инструмент решает другую задачу:
👉 анализ поведения реальных документов
Он позволяет:
- работать с уже существующими данными
- проверять проведение
- анализировать изменения (до/после)
- выявлять побочные эффекты
- работать с обычными формами
Когда какой инструмент использовать
Эти подходы не конкурируют, а дополняют друг друга:
Vanessa Automation
- сценарные тесты
- автоматизация пользовательских действий
- CI/CD
Данный инструмент
- быстрый прогон реальных документов
- диагностика после изменений
- анализ движений
- работа с обычными формами
Как появился инструмент
В какой-то момент я просто решил сделать себе простой инструмент, чтобы быстро прогонять документы после изменений
Сначала идея была максимально простая:
- взять документы за период
- попробовать их провести
- посмотреть, где падает
И, как обычно бывает… сделал одно, понадобилось второе, третье и понеслось 😄
Во что это в итоге превратилось
В итоге получился полноценный инструмент со следующими возможностями:
🔹 Автоматический подбор документов
Можно выбрать период и регистры, и инструмент сам:
- находит документы
- берёт по одному каждого вида
- формирует список для проверки

🔹 Работа со сценариями
Можно:
- задать свои сценарии
- вручную добавить документы
- указать условие для отбора
- исключить лишнее
То есть это уже не просто "прогон всего подряд", а управляемая проверка.

🔹 Проверка открытия форм
Инструмент открывает формы документов и проверяет:
- открывается ли вообще форма
- нет ли модифицированности формы при открытии
- нет ли ошибок при открытии
Форма документа открывается на 1 секунду интерактивно и сразу закрывается. Также проверяются формы списка и выбора. Вот такие бывают ситуации..




🔹 Проверка проведения/записи документов
Классика:
- проводится / не проводится
- текст ошибки
🔹 Сравнение изменений ДО и ПОСЛЕ
Очень полезная штука.
Инструмент:
- снимает состояние документа
- проводит (записывает)
- сравнивает
И показывает:
- что поменялось
- где поменялось
- какие движения изменились

🔹 Проверка через COM (отдельный сеанс)
Добавил возможность запускать тест в отдельном сеансе через COM
Это позволяет:
- поймать ошибки, которые не видны в текущем сеансе
- проверить поведение "как на сервере"
🔹 Выполнение программного кода
Это вообще отдельная история.
Можно задать код, который выполнится перед проведением.

Например:
Объект.ОтражатьВБухгалтерскомУчете = Ложь; Объект.ЗаполнитьЦены();
И посмотреть:
- как это повлияет на документ
- какие движения изменятся
То есть инструмент превращается в:
мини-лабораторию для экспериментов с документами
🔹 JSON-лог
Всё, что происходит во время теста:
- этапы
- ошибки
- документы
пишется в JSON-лог, который можно сохранить в файл.

🔹 Все настройки собраны в отдельной форме

Когда это реально полезно
Я использую инструмент:
👉 после обновлений
быстро понять, что сломалось
👉 перед релизом
прогнать ключевые документы
👉 при доработках
проверить, что ничего не "поехало"
👉 для приозвольной диагностики
Важный момент (про код)
Есть возможность выполнять произвольный код.
- Да, это мощно, но это потенциально опасно!
Поэтому:
- включается отдельной галкой
- лучше использовать в тестовой базе
- и понимать, что делаешь!
Итог
Изначально это был "маленький инструмент для себя".
Но в итоге получился довольно универсальный помощник, который позволяет:
- быстро прогонять документы
- находить ошибки
- анализировать изменения
- проверять формы
- экспериментировать со сценариями
Инструмент не является заменой систем автотестирования, а скорее дополняет их, позволяя быстро анализировать поведение документов на реальных данных.
Если кому-то окажется полезным — буду рад 👍
Проверено на следующих конфигурациях и релизах:
- Управление производственным предприятием, редакция 1.3, релизы 1.3.268.1
Вступайте в нашу телеграмм-группу Инфостарт