Ко всем шагам

Сравнить с прошлым прогоном

Поля шага
1 селектор значения (пусто - датасет прошлого шага) (text)
2 поле-идентификатор строки (text)
3 допуск, % (number)
4 порог (diffcond)
В сценарии поля объединяются через |.
Сравнивает данные текущего прогона с предыдущим прогоном этого же шага и роняет тест, если они изменились: мониторинг цены, остатка, состава каталога, версии в подвале.
Четыре поля: селектор|ключ|допуск|порог. Селектор пуст - берётся датасет ближайшего предыдущего шага «Собрать данные». Ключ - поле, по которому строки опознаются между прогонами. Допуск - % изменившихся строк, ниже которого шаг молчит.
Порог («ошибка если меньше 60000») работает вместо сравнения и только для одиночного числа; допуск и порог глушат друг друга.
При первом прогоне эталона ещё нет - шаг проходит и формирует его. AI-токены шаг не тратит. Разбор полей и примеры - в справке по действию.
Пример использования

Сравнить данные текущего прогона с предыдущим прогоном этого же шага. Изменились - тест падает (штатный алярм и уведомление). Так делается мониторинг цены, остатка, состава каталога, версии в подвале. Четыре поля: селектор|ключ|допуск|порог. AI-токены/деньги шаг не тратит.

Одиночное значение - цена на карточке товара:

  • .product-price|| - упадёт, как только цена станет отличаться от прошлого прогона
  • .stock-badge|| - следим за наличием
  • footer .version|| - ловим незапланированный деплой

Таблица - после шага «Собрать данные»:

  • |Ссылка| - селектор пуст (берём датасет предыдущего шага), строки опознаём по полю Ссылка: шаг покажет, что добавилось, пропало и у чего изменилась цена
  • |Артикул|5 - то же, но пока изменилось меньше 5% строк, шаг молчит (витрина всегда немного «дышит»)
  • || - без ключа: строки сравниваются целиком, видно только появление и пропажу

Порог вместо сравнения - «принцип минимальной цены» (MAP):

  • .product-price|||<60000 - упадёт, если цена опустится ниже 60000; любые изменения выше порога шаг пропускает
  • .stock-count|||<1 - товар закончился
  • .rating|||<4.5 - рейтинг просел
  • .discount|||>30 - скидка больше разрешённой

Допуск и порог взаимоисключающи - в форме они глушат друг друга. Заполнен допуск - шаг работает по старой схеме (в том числе для таблиц и списков). Если оба всё-таки оказались заполнены (например после правки шага вручную или импорта), побеждает допуск.

С заполненным порогом эталон прошлого прогона не используется: шаг проверяет только текущее значение. Величина достаётся из текста сама - 63 000 ₽/мес это 63000. Если отслеживается таблица или в значении нет цифр, шаг проходит и пишет в отчёт, что проверки не было.

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

Типовая связка: «Перейти на страницу» → «Собрать данные» (карточки каталога) → «Сравнить с прошлым прогоном» (|Ссылка|3) → тест по расписанию раз в час.