DEFENCE
Иллюстративный отчётАнатомия находки
DEFENCEВнешняя проверка web/API01 / 05
Illustrative demo — not a customer resultВнешняя проверка web/API

Синтетический ретест границы согласования.

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

Материал
Синтетическая внешняя web/API-проверка
Тестовые данные
Только собственные аккаунты и выдуманные записи
Вывод
Одно условие закрыто точечным ретестом
Иллюстративный пример · синтетический материал · не результат клиента01
DEFENCEScope и проверяемое свойство02 / 05
02

Scope и проверяемое свойство

Ретест доказывает свойство, а не награждает изменившийся экран.

В выдуманном продукте есть двухэтапное согласование. Тестовый участник видит черновик, а согласующий может продвинуть его дальше. Скрытая кнопка здесь вторична. Сервер должен принимать переход только от разрешённой роли в допустимом состоянии.

Ретест повторяет проверку с обеими ролями. Новый ответ или интерфейс сами находку не закрывают.

Выдуманная тестовая модель

Tenant
Синтетический и принадлежит тестовой команде
Участники
Read-only member и разрешённый approver
Объект
Редактируемый синтетический черновик
Граница
Серверная проверка роли и состояния workflow
Правило, которое должно сохраняться
Участник только для чтения
Видит синтетический черновик
Участник только для чтения
Не может согласовать синтетический черновик
Разрешённый согласующий
Может согласовать подходящий черновик
Иллюстративный пример · синтетический материал · не результат клиента02
DEFENCEАнатомия находки03 / 05
03
Находка D-01Закрыта ретестом

Анатомия находки

Сервер принял переход, недоступный этой роли.

Ход находки

Сервер должен вместе проверять роль и состояние.

Read-only участник видит синтетический черновик. Продвинуть подходящий черновик может только согласующий.

Переход был принят для неверной роли.

Ограниченный запрос продвинул выдуманный черновик внутри собственного тестового tenant.

Теперь сервер проверяет роль и текущее состояние.

Ограничение интерфейса остаётся слоем удобства; контроль принадлежит серверу.

Запрещённый и разрешённый пути сработали верно.

Участник получил отказ без изменения объекта; согласующий выполнил допустимый переход.

Интерфейс скрывал действие от read-only участника, поэтому свойство проверили напрямую на собственном аккаунте и синтетическом черновике.

Ожидание
Read-only участник видит свой синтетический черновик, но не переводит его в согласованное состояние.
Наблюдение
Ограниченный прямой запрос от read-only аккаунта перевёл выдуманный черновик в согласованное состояние. Тот же аккаунт увидел изменение.
Влияние
Неавторизованный переход работал внутри тестового tenant. Чужие данные, платежи и третьи лица не участвовали.
Наблюдаемое сопутствующее условие
Интерфейс скрывал действие, но сервер не применял то же правило роли и состояния при обработке перехода.
Первопричина не оценивалась
Внешняя проверка описывает поведение, но не приписывает его внутреннему компоненту или решению команды.
Иллюстративный пример · синтетический материал · не результат клиента03
DEFENCEИсправление и точечный ретест04 / 05
04

Исправление и точечный ретест

Почему ретест проверяет свойство

Исправление

Теперь сервер проверяет роль и текущее состояние.

До перехода сервер проверяет и роль инициатора, и текущее состояние черновика. Ограничение интерфейса остаётся подсказкой, а не контролем безопасности.

Точечный ретест

Запрещённый и разрешённый пути сработали верно.

Тот же read-only аккаунт получил отказ, черновик не изменился. Разрешённый согласующий по-прежнему успешно выполнил допустимый переход.

Одна граница до и после исправления
Ожидаемое правило
Только согласующий продвигает подходящий черновик
До исправления
Read-only участник изменил синтетический черновик
На ретесте
Участнику отказано, разрешённый путь работает
Иллюстративный пример · синтетический материал · не результат клиента04
DEFENCEПокрытие, контроли и ограничения05 / 05
05

Покрытие, контроли и ограничения

Полезный отчёт показывает и сработавшие контроли, и границы выводов.

Выдуманная проверка фиксирует три соседних контроля. Это ограниченные наблюдения, а не вывод обо всех вариантах и системах.

  1. Проверка webhook

    Сработал в тесте
    Условие теста
    Неподписанные и просроченные синтетические события
    Наблюдаемый результат
    Отклонены до изменения выдуманного workflow
    Ограничение
    Без особенностей доставки и replay провайдера
  2. Тип загружаемого файла

    Сработал в тесте
    Условие теста
    Fixtures с разными заявленным и определённым типами
    Наблюдаемый результат
    Отклонены без создания используемого объекта
    Ограничение
    Без больших файлов, malware и нагрузки
  3. Конкурентное редактирование

    Сработал в тесте
    Условие теста
    Изменение с устаревшим синтетическим revision token
    Наблюдаемый результат
    Старое изменение отклонено, актуальное выполнено
    Ограничение
    Один workflow и ограниченная последовательность

Как говорит итоговый реестр

Закрыто ретестом
Названное условие не воспроизвелось в повторном тесте.
Сработало в тесте
Контроль применил правило в зафиксированных сценариях.
Не разрешено
Блокеры, зоны вне scope и непроверенное остаются явными.

Результат нужен для решения, а не для сертификации: что изменилось, что сработало и где нужен владелец или другое условие.