К статье
Практический материал

Разработка и Конфигурация · 10 мин

Что такое тестирование в 1С и как его проводить

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

Тестирование в 1С — это проверка того, что конфигурация, доработка или обновление работают так, как задумано, и не ломают существующий учёт. Оно нужно перед любым изменением рабочей базы: установкой обновления, внедрением расширения, доработкой документа или отчёта. Без тестирования ошибка обнаруживается уже в боевой базе — в виде неверных проводок, непроведённых документов или повреждённых данных, восстановление которых стоит дороже самой проверки.

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

Тестированием занимаются разные роли: разработчик проверяет свой код, внедренец — бизнес-процесс целиком, ключевой пользователь — удобство и соответствие реальной работе. В небольших компаниях все эти роли часто совмещает один специалист, что повышает риск «слепых зон»: автор доработки редко находит собственные ошибки.

Какие задачи решает тестирование в 1С

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

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

Основные виды тестирования в 1С

На практике виды тестирования различаются по тому, что именно проверяется и кем. Один и тот же релиз обычно проходит несколько видов проверок подряд — от кода до приёмки пользователем.

ВидЧто проверяетКто выполняет
Модульное (юнит)Отдельные функции и процедурыРазработчик
ФункциональноеСценарий целиком: документ → проведение → отчётТестировщик, внедренец
РегрессионноеРаботоспособность старого функционала после измененийТестировщик
ИнтеграционноеОбмены с другими системами: сайт, банк, ЭДО, CRMИнтегратор, разработчик
НагрузочноеСкорость и устойчивость при большом числе пользователей и данныхАдминистратор, разработчик
Приёмочное (UAT)Соответствие реальным бизнес-процессамКлючевые пользователи

Тестирование и исправление информационной базы

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

Инструменты: от встроенных до внешних фреймворков

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

Для автоматизированного тестирования используются специализированные решения: Vanessa Automation для сценарных тестов на языке Gherkin, xUnitFor1C для модульных тестов, инструменты нагрузочного тестирования вроде Тест-центра из комплекта КИП. Они позволяют записывать сценарии один раз и прогонять их после каждого изменения.

Сравнение подходов

Ручное тестирование

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

Автоматизированные сценарии

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

Штатные средства платформы

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

Как организовать процесс: тестовая среда и порядок работы

Главное правило — тестировать только на копии рабочей базы. Копия должна быть достаточно свежей, чтобы данные в ней отражали реальную ситуацию: актуальные остатки, настройки, права пользователей. Тестирование на пустой или устаревшей базе даёт ложную уверенность: сценарий проходит, а на реальных данных падает.

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

Порядок тестирования доработки
  1. 1
    Сделайте копию рабочей базы и разверните её как тестовую
  2. 2
    Перенесите доработку в тестовую базу и обновите конфигурацию
  3. 3
    Прогоните основной сценарий: создайте документ, проведите, проверьте движения и отчёты
  4. 4
    Прогоните смежные сценарии, которые доработка могла затронуть (регрессия)
  5. 5
    Проверьте работу под правами реальных пользователей, а не только под полными
  6. 6
    Получите подтверждение ключевого пользователя и только после этого переносите в рабочую базу

Как проверить результат и не пропустить ошибку

Проверка должна опираться на контрольные точки, а не на общее впечатление «вроде работает». Для учётных доработок эталоном служат цифры: обороты по регистрам, итоги отчётов, результаты закрытия месяца до и после изменения. Расхождение даже в копейках — повод разбираться, а не списывать на округление.

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

Контрольные точки

Как проверить результат

Движения документа по регистрам
Норма

Набор и суммы записей соответствуют ожидаемой логике

Тревожный признак

Лишние, отсутствующие или задвоенные записи

Ключевые отчёты до и после изменения
Норма

Итоги совпадают или отличаются объяснимо

Тревожный признак

Необъяснимые расхождения в суммах и остатках

Работа под ограниченными правами
Норма

Пользователь выполняет сценарий без ошибок доступа

Тревожный признак

Ошибки «Нарушение прав доступа» или пустые данные

Проведение по границам периода
Норма

Документы в закрытом периоде корректно блокируются

Тревожный признак

Изменение прошлых периодов без контроля

Типичные ошибки и ограничения

Самая частая ошибка — тестирование под полными правами. Разработчик и администратор видят всё, а рядовой пользователь упирается в ограничения RLS и роли. Вторая ошибка — проверка только «счастливого пути»: документ заполнен идеально, все данные на месте. Реальная работа включает незаполненные реквизиты, отмены проведения, перепроведение задним числом, и именно там всплывают дефекты.

Третья группа ошибок связана со средой: тестовая база устарела на полгода, в ней не работают обмены, а регламентные задания отключены. Интеграционные механизмы при этом проверяются «в уме», а ломаются в продакшене. Для обменов стоит поддерживать отдельный тестовый контур с тестовыми же контурами смежных систем.

Типичные ошибки
01
Тестирование только под полными правами — в рабочей базе у пользователей появляются ошибки доступа
02
Проверка только корректного заполнения — реальные ошибки проявляются на незаполненных реквизитах и отменах проведения
03
Тестирование на устаревшей копии — сценарий проходит на старых данных и падает на актуальных
04
Перенос в рабочую базу без резервной копии — откат при сбое становится невозможен
05
Игнорирование обменов и регламентных заданий — интеграции ломаются уже после обновления

Когда достаточно ручной проверки, а когда нужна автоматизация

Ручной проверки достаточно для разовых мелких доработок: новая печатная форма, дополнительный реквизит, простой отчёт. Автоматизация окупается, когда конфигурация сильно доработана, обновления выходят регулярно, а регрессионный прогон вручную занимает дни. Тогда сценарии в Vanessa Automation или модульные тесты сокращают проверку до часов.

Маршрут решения

Как выбрать подход

Разовая небольшая доработка без влияния на учётные регистрыДостаточно ручной проверки на копии базы по чек-листу
Доработка затрагивает проведение документов или расчёт зарплатыОбязателен прогон смежных сценариев и сверка отчётов до и после
Обновления выходят регулярно, доработок многоВнедряйте автоматизированные регрессионные сценарии
Есть обмены с внешними системамиПоднимите тестовый контур интеграций и проверяйте обмены до переноса в рабочую базу
Удобно вести постоянный чек-лист критичных операций компании: выписка реализации, закрытие смены, начисление зарплаты, закрытие месяца. Перед любым обновлением достаточно прогнать этот список — это закрывает большую часть рисков без сложной инфраструктуры тестирования.
ПЗ
Практическое замечание

Частые вопросы

Можно ли тестировать сразу в рабочей базе, если доработка небольшая?

Нежелательно даже для мелких изменений. Любая доработка, затрагивающая проведение документов или регистры, способна повлиять на учётные данные. Копия базы создаётся за минуты, а восстановление испорченных данных может занять дни. Исключение — чисто интерфейсные изменения вроде подписи в печатной форме, и то после проверки на копии.

Чем «Тестирование и исправление» отличается от обычного тестирования?

Это разные вещи. «Тестирование и исправление» в конфигураторе — утилита диагностики физической целостности базы: ссылочная целостность, итоги, индексы. Тестирование доработок — проверка логики и бизнес-сценариев. Первое лечит повреждения данных, второе предотвращает ошибки в поведении системы.

Кто должен проводить приёмочное тестирование?

Ключевые пользователи — те, кто реально работает с процессом: бухгалтер для учётных доработок, кладовщик для складских. Разработчик не может быть единственным проверяющим, потому что проверяет соответствие своему пониманию задачи, а не реальному процессу.

Нужно ли тестировать штатные обновления типовой конфигурации?

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

С чего начать автоматизацию тестирования, если её никогда не было?

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

Итог

Что важно запомнить

Тестирование в 1С — обязательный этап перед любым изменением рабочей базы. Проверяйте доработки на свежей копии, под правами реальных пользователей, со сверкой отчётов до и после. Ручной проверки достаточно для мелких задач; при регулярных обновлениях и большом объёме доработок переходите к автоматизированным сценариям.