HeadlinesBriefing favicon HeadlinesBriefing.com

Автоматизация тестирования по спецификациям: независимая проверка

Towards Data Science •
×

Современные ИИ-агенты для программирования могут реализовывать спецификации и создавать проходящие наборы тестов в одном рабочем процессе, но это создаёт критическую ошибку: тесты не могут не согласиться с реализацией, когда оба вытекают из одного и того же двусмысленного толкования. Это нарушает основной принцип Верификации и Валидации (V&V), согласно которому создатель не должен быть проверяющим. Опираясь на опыт программ Super Cruise и Ultra Cruise компании General Motors, автор подчёркивает, что независимая проверка необходима для выявления двусмысленностей в спецификациях. Например, спецификация радара, указывающая "gap must be a distance the forward radar can measure, up to its rated range of 250m", оставляет критические вопросы без ответа: где начинается измерение? Может ли он измерить 0 м? Без независимого обзора разработчики разрешают такие двусмысленности односторонне, что приводит к самоподтверждающим тестам. Истинная проверка требует отдельного толкования: один инженер реализует, другой проверяет. Разногласия раскрывают реальные дефекты спецификаций до развертывания. Этот принцип, стандартный в традиционной разработке продукции на протяжении десятилетий, был усилен во время работы по контракту с NASA по калибровке систем отслеживания головы и глаз, где независ QA подтвердил калибровки автора. Автор создал открытый проект на Python для автоматизации этого разделения, обеспечивая то, чтобы тесты действительно ставили реализацию под сомнение, а не просто подтверждали её.