Код Middle Playwright обновлено

Итог теста с повторами

Условие

У теста было несколько попыток. Напишите testOutcome(statuses, expected), где statuses это статусы попыток по порядку ("passed", "failed", "timedOut", "skipped", "interrupted"), expected ожидаемый статус (обычно "passed", у теста, помеченного как ожидаемо падающий, "failed").

Правила:

  1. Попытки "interrupted" не учитываются.
  2. Если не осталось попыток или все "skipped", вернуть "skipped".
  3. Если все учтённые попытки равны expected, вернуть "expected".
  4. Если ни одна не равна expected, вернуть "unexpected".
  5. Иначе "flaky".

Примеры

testOutcome(["passed"], "passed") // "expected"
testOutcome(["failed", "passed"], "passed") // "flaky"
testOutcome(["failed", "timedOut"], "passed") // "unexpected"

Решите в тренажёре

Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.

Термины по теме