Риск-ориентированное тестирование в 1С: как распределить 40 часов проверки пропорционально цене ошибки

08.10.26

Интеграция - Нейросети

Скрипт на Python делит 40 часов проверки релиза 1С пропорционально цене ошибки: прогон 07.10.2026 на учебной таблице из 8 процессов. Признаки вероятности дефекта и цены ошибки, прогоны с изменёнными данными, слабые места формулы. В архиве скрипт, таблица и вопросы владельцу проекта.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Риск-ориентированное тестирование в 1С: как разделить 40 часов проверки по цене ошибки
.zip 5,18Kb
0 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.
🎯 О чём это (в трёх тезисах)
🗸Скрипт считает риск бизнес-процессов в 1С и делит часы проверки пропорционально.
🗸Таблица признаков вероятности дефекта и цены ошибки, Прогон на учебных данных с изменением входа, Вопросы владельцу проекта.
🗸Часы проверки релиза распределяются пропорционально цене ошибки, а решение можно показать заказчику.
🧪 Отчёт о тестировании файла-компаньона
Архивrisk-oriented-testing-companion.zip: risk_plan.py, risks-example.csv, interview-checklist.md, output-2026-10-07.txt, README
Где и когда07.10.2026, Windows 11, Python 3.12.10, распакованный архив вне репозитория
Что запускалосьpython risk_plan.py risks-example.csv --hours 40 (затем два запуска с изменённым входом)
Результат8 процессов: закрытие месяца P3 I3 риск 9 уровень A 9,7 ч; пять процессов уровня A получают 35,7 ч из 40; отчётность поднята правилом пола до B; совпадений значений риска 4
Не проверенотяжелая продакшн-база, на macOS, на версии Python ниже 3.12, статистика дефектов на множестве живых проектов
🧠 Суть статьи

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

Ключевые идеи
  • Риск считается как вероятность дефекта на цену последствий, обе величины - по шкале 1-3 из признаков 0 и 1.
  • На учебных данных пять процессов уровня A получают 35,7 часа из 40 против 25 часов при дележе поровну.
  • Шкала из трёх делений плохо различает процессы: пять из восьми получили риск 6, скрипт печатает счётчик совпадений.
  • Признак закона весит один балл из четырёх, поэтому в скрипт заложено правило пола (не ниже уровня B).
Главная мысль

Таблица рисков даёт заказчику понятное объяснение, где часов больше и почему, но порядок внутри верхнего уровня решает разговор с владельцами процессов.

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

Для тех, кому некогда: если делить 40 часов проверки поровну между восемью бизнес-процессами, на печатную форму перемещения между складами и на закрытие месяца уйдёт по 5 часов. Таблица признаков и скрипт на 81 строку дают другую раскладку: 9,7 часа закрытию месяца и 1,1 часа печатной форме. Данные в таблице учебные, я "синтезировала" их для примера. Поэтому статья рассказывает про метод и его границы, о чьей-то базе в ней речи нет.

🪧 Вместо вступления

Честно скажу сразу: проекта сопровождения, где я лично сорвала закрытие месяца, у меня нет, и "пронзительной" истории про семидневную рабочую неделю здесь не будет. Есть метод из стандартов тестирования, скрипт и прогон на условных данных. Скрипт и текст я готовила вместе с языковой моделью; запуск, числа и ссылки проверила сама 07.10.2026.

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

🧭 Что говорит стандарт

В глоссарии ISTQB риск-ориентированное тестирование определено как проверка, в которой управление, выбор, приоритезация и использование ресурсов опираются на виды и уровни рисков. Уровень риска там задаётся вероятностью и последствиями и может выражаться словами (высокий, средний, низкий) или числом. Стандарт ISO/IEC/IEEE 29119-2 описывает процессы тестирования с тем же риск-ориентированным подходом.

Оговорка о проверке: страницу глоссария ISTQB я напрямую не открыла (она отдала пустой ответ), определение сверила по стороннему пересказу. Дословных цитат в тексте нет, формулировку пересказала своими словами. Версию стандарта 2013 года его издатель пометил как заменённую редакцией 2021 года.

Дальше вся арифметика сводится к одной формуле: риск равен вероятности дефекта, умноженной на цену последствий. Обе величины я оцениваю по шкале от 1 до 3.

📋 Признаки вместо ощущения

Чтобы оценка не зависела от настроения, каждую величину я собираю из признаков со значениями 0 или 1. Вероятность оценивает разработчик по истории изменений, цену последствий - владелец процесса.

Величина Признак Что спрашиваем
Вероятность changed Процесс затронут изменениями этого релиза?
Вероятность complex Сложная логика: ветвления, циклы по табличным частям, периоды?
Вероятность defects12m Дефектов за 12 месяцев две штуки и больше?
Вероятность integration Есть обмен с внешней системой?
Вероятность platform_update Обновлялись платформа или типовая конфигурация?
Цена money Можно потерять деньги напрямую?
Цена law Есть штраф, проверка или срок сдачи?
Цена stop Встанет работа, пока чинят?
Цена irreversible Исправлять придётся много связанных документов?

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

🧮 Как скрипт считает

Баллы из признаков скрипт переводит в шкалу 1-3, перемножает и назначает уровень проверки. Ядро из risk_plan.py:

1
2
3
4
5
6
7
8
9
10
11
12
13
def bucket_p(points):
    return 1 if points <= 1 else 2 if points <= 3 else 3


def bucket_i(points):
    return 1 if points <= 1 else 2 if points == 2 else 3


def tier(risk, law):
    t = "A" if risk >= TIER_A else "B" if risk >= TIER_B else "C"
    if law and t == "C":
        t = "B"
    return t

Произведение двух величин от 1 до 3 принимает значения 1, 2, 3, 4, 6 и 9. Границы уровней - константы TIER_A = 6 и TIER_B = 3, то есть моя политика, к стандарту она отношения не имеет. Уровень A получает полную проверку: позитивные и негативные сценарии, граничные значения, сверку с эталоном. Уровень B - основной сценарий и два-три типовых отклонения. Уровень C - выборочный осмотр изменённого.

Часы бюджета скрипт делит пропорционально риску. Правило пола в функции tier я добавила после первого прогона, о нём ниже.

🚦 Что вышло на учебных данных

Запуск 07.10.2026, Windows 11, Python 3.12.10, python risk_plan.py risks-example.csv --hours 40:

Процесс                                    P  I  Риск  Ур.   Часы  Поровну
Закрытие месяца                            3  3     9    A    9.7      5.0
Обмен с банком                             2  3     6    A    6.5      5.0
Расчёт зарплаты                            2  3     6    A    6.5      5.0
Реализация товаров                         3  2     6    A    6.5      5.0
Розничные продажи (смена кассы)            2  3     6    A    6.5      5.0
Регламентированная отчётность              2  1     2    B    2.2      5.0
Групповая обработка справочника            1  1     1    C    1.1      5.0
Печатная форма внутреннего перемещения     1  1     1    C    1.1      5.0

Процессов: 8; бюджет 40 ч; сумма рисков 37
Совпадений значения риска между процессами (шкала грубая): 4

Смотреть стоит на отношения. Пять процессов уровня A получают вместе 35,7 часа против 25 часов при дележе поровну. Остальные три процесса получают около 4,3 часа вместо 15. Освободившиеся десять с небольшим часов уходят туда, где ошибка дороже.

Теперь о том, что мне в этой таблице не нравится. Пять процессов из восьми получили одинаковый риск 6. Шкала из трёх делений слишком грубая, чтобы внутри уровня A выбрать, что проверять первым. Скрипт печатает счётчик совпадений (здесь 4: восемь процессов и четыре разных значения риска), чтобы вы видели, когда таблица перестаёт различать процессы. Порядок внутри уровня тогда решается разговором с владельцами, второй знак после запятой тут не поможет.

🔁 Что будет, если поменять входные данные

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

Снятие признака changed у закрытия месяца. Представим, что релиз расчёт себестоимости не трогал. Вероятность падает с 3 до 2, риск - с 9 до 6, часы - с 9,7 до 7,1. Процесс остаётся в уровне A и теперь делит первое место с четырьмя другими. Вывод: «не менялось» снижает приоритет, но не обнуляет его.

Расчёт зарплаты без признаков вероятности. Если у процесса нет изменений, сложной логики, дефектов, интеграций и обновлений, вероятность становится 1, риск падает с 6 до 3, уровень - с A до B, часы - с 6,5 до 3,5. Здесь и видна слабость формулы: цена ошибки в зарплате осталась прежней, проверка при этом сократилась почти вдвое. Если ваша политика такого не допускает, добавьте минимальный уровень для процессов с высокой ценой последствий.

Отчётность и правило пола. У регламентированной отчётности в учебной таблице сработал один признак цены, law. Цена получилась 1, риск 2, и без правила пола процесс попал бы в уровень C, то есть в «выборочно». Штраф за несданный отчёт одним баллом из четырёх не описывается, поэтому в tier и появилось правило: сработал law - уровень не ниже B. Правило работает как заплатка и показывает слабость суммы признаков: один признак здесь весит больше трёх остальных.

🤝 Что узнать у владельца процесса

Признаки цены я не могу заполнить из репозитория, их знает только тот, кто отвечает за процесс. Вопросы лежат в архиве в interview-checklist.md, на каждый процесс уходит минут пятнадцать. Ответ «да» ставит единицу в столбец.

Из дополнительных вопросов в чек-листе самый полезный последний: «Что вы готовы не проверять в этот релиз?» Ответ записывается как принятый риск. Через месяц это разница между «мы решили не проверять печатную форму» и «мы про неё забыли».

🛠 Как встроить в релиз

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

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

🧯 Ограничения

  • Скрипт запускали только на учебных данных, на одном компьютере и одной версии Python. Linux, macOS и более ранние версии Python не проверены.
  • Данные в risks-example.csv придуманы. Выводы о том, какой процесс критичнее, к вашей базе не переносятся, переносится только способ счёта.
  • Веса признаков одинаковы, границы уровней заданы константами. Я не проверяла, совпадает ли такая раскладка с распределением реальных дефектов.
  • Статистики по проектам 1С, где подход снизил число дефектов, у меня нет, и обещать эффект я не берусь.
  • Первоисточник ISTQB не открылся, определение пересказано по стороннему сайту.

📚 Источники

📎 Файл к статье

В архиве risk-oriented-testing-companion.zip: risk_plan.py, учебная таблица risks-example.csv, вопросы владельцу процесса interview-checklist.md, вывод запуска output-2026-10-07.txt и README. Сначала выполните пример из README, затем подставьте свои процессы. Веса признаков и границы уровней в скрипте - политика, которую стоит пересмотреть под ваш проект.

 
Нинель Адольевна Щербакова
Нинель Адольевна Щербакова (Ninel_S)
Архитектор • SRE & DevOps инженер • HighLoad 1С
Автор 48 технических публикаций на Infostart. Разработчик NOPik, SRE-Suite-for-1C и мультиагентных ассистентов для экосистемы 1С:Предприятие.

Вступайте в нашу телеграмм-группу Инфостарт

тестирование риск-ориентированное тестирование тест-план приоритизация Python релиз 1С 8.3

См. также

Нейросети Системный администратор Разработчик Аналитик Бухгалтер Пользователь Руководитель проекта 1С 8.3 1С:Документооборот 1С:Бухгалтерия 3.0 1С:Зарплата и Управление Персоналом 3.x Россия Платные (руб)

Подключите ИИ к 1С и решайте рабочие задачи обычными словами. От работы с данными до доработки конфигурации через расширения, всё в привычном чате с ИИ-помощником. Теперь с поддержкой DeepSeek Harness, Kimi Code и Kimi Work, доступных в России без VPN.

15990 руб.

30.07.2026    19371    43    4    

36

SALE! %

Банковские операции Обмен с интернет-банком Мастера заполнения Нейросети Разработчик Бухгалтер Пользователь 1С:Предприятие 8 1C:ERP 1С:Бухгалтерия 3.0 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:ERP. Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 1С:Розница 3.0 Платные (руб)

Корректируйте банковские документы быстро и легко! Создайте правило обработки — и оно автоматически применится при загрузке выписки (отбор по любому реквизиту или регулярному выражению). Решение заполняет расшифровку платежа, комиссию эквайринга, подбирает ведомости на выплату зарплаты, помечает дубли из банка на удаление и многое другое. Доплачивать за алгоритмы не нужно — они включены в решение. Обработка работает при загрузке из файлов клиент-банка и через DirectBank. Новое — искусственный интеллект: модель приводит нестандартные назначения платежа к виду, понятному алгоритмам, а ИИ-ассистент прямо в 1С консультирует по решению и разбирает код правил и алгоритмов. Поддерживаются локальные и облачные OpenAI-совместимые модели — данные могут не покидать ваш контур.

17500 руб.

20.12.2024    21461    104    32    

90

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданным 1С, справке синтакс-помощника и проверки синтаксиса.

15250 руб.

25.08.2025    76782    147    41    

154

SALE! 30%

Нейросети 1С 8.3 1С:Документооборот 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Расширение добавляет в 1С чат с ИИ-агентом. Пользователь пишет вопрос обычными словами: «какие УПД не подписаны?», «какой НДС к уплате за квартал?», «что висит на согласовании дольше недели?», а агент сам строит запросы к базе с правами этого пользователя и отвечает цифрами, таблицей, диаграммой или файлом Excel. Плитки «Аналитик», «Бухгалтер» и «Руководитель» дают сводку по базе одной кнопкой. Агент разбирает ошибки по скриншоту, сверяет прайсы поставщиков и проверяет коды маркировки. С версии 1.0.21 спрашивать можно и с телефона: QR-код в окне агента, без установки приложения. Работает в УТ 11, КА 2, ERP 2, БП 3.0, УНФ 3.0, Документооборот 3.0 и Альфа-Авто 6, ставится одним расширением.

18300 руб.

05.10.2026    3452    10    9    

12

Инструментарий разработчика Нейросети Системный администратор Разработчик Руководитель проекта 1С 8.3 Платные (руб)

Обработка заменяет ФИО, организации, ИНН, ИИН, БИН, ОГРН, КПП, БИК, счета и IBAN, паспорта, СНИЛС, адреса, телефоны, почту и суммы на правдоподобные выдуманные перед отправкой данных в ChatGPT, Claude или YandexGPT, а потом расшифровывает ответ модели обратно, подставляя настоящие имена и настоящие числа. Возвращаются и те итоги, которые модель посчитала сама: суммы масштабируются одним коэффициентом, поэтому пропорции и доли переживают обезличивание. Словарь замен хранится в самой базе и подхватывается автоматически, даже если обработку закрывали. Реквизиты России и Казахстана, любая конфигурация от 8.3.24, без единой зависимости.

14640 руб.

07.08.2026    2148    3    0    

3

Распознавание документов и образов Нейросети 1С:Предприятие 8 1С 8.3 1С 8.5 1C:Бухгалтерия 1С:Зарплата и Управление Персоналом 3.x Беларусь Россия Казахстан Армения Платные (руб)

ИИ-сканер документов с REST API для интеграции с 1С и корпоративными системами. Извлекайте данные из счетов, паспортов, дипломов, патентов и трудовых книжек за секунды. Точность человека - скорость машины. Приложение поддерживает восемь типов документов, четырех провайдеров ИИ (имеется возможность использования локальных ИИ), локальный REST API и экспорт в JSON. Важно! модель должна поддерживать функцию Vision (распознавание файлов и картинок). Запускайте используя локальные ИИ, без подписок и ограничений

6100 руб.

24.08.2026    1411    1    0    

1

Нейросети Разработчик Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Бесплатно (free)

ИИ агент для бухгалтерии - открытый ИИ-консультант внутри 1С. Он отвечает на вопросы по данным базы, анализирует задолженность и обороты, помогает разбирать ошибки проведения и готовить документы. Пользователь видит шаги агента: какие инструменты вызваны и какие результаты получены. Решение состоит из расширения 1С и сервера на Python, поддерживает локальные модели и облачные API. Инструменты выполняются с правами текущего пользователя. Текущая версия - прототип для «Бухгалтерии предприятия 3.0». Исходный код распространяется под лицензией MIT.

31.10.2026    3462    168    nomadAI    8    

19

Инструментарий разработчика Нейросети Разработчик 1С 8.3 Бесплатно (free)

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

29.10.2026    4798    nt_app    12    

26
Для отправки сообщения требуется регистрация/авторизация