18.5 A/B-тесты
test ab "search v2" {
variant a = oldSearch
variant b = newSearch
split by .User 50/50
metric ctr, latency.p95
guard latency.p95 < SEARCH_P95_LIMIT
traffic recorded("traffic/search.oxlrec")
}- В
oxl testэксперимент прогоняется на записанном трафике и сравнивает метрики вариантов со статистической значимостью. - В кластере
oxl ab start "search v2"создаёт динамическийFlag, делит трафик и собирает метрики; нарушениеguardавтоматически откатывает флаг. - Тело
test ab— набор предложенийvariant,split by,metric,guard,traffic, а не блок операторов (D-8052; DIV-001; D-6850). Из кода тестируемой функции вариант запроса сообщаетab.variant(…)изstd.ab(расширение реализации, прил. B).
Определяется реализацией. Границы A/B-тестов (D-8056; DIV-038; D-6851). Эта реализация: пользовательские метрики
std.obsне разделяются по вариантам в кластере; стриминговые rpc не журналируются;replayвоспроизводит только записанный трафик.
Связанные диагностики
См. также
Исходник: docs/spec/oxl-standard.md