Ответ
Статусы Blocked и Critical отражают принципиально разные ситуации в процессе тестирования.
-
Blocked(Заблокирован): Тест-кейс не может быть выполнен в данный момент из-за внешних препятствий. Дефект находится не в тестируемой функции, а в её зависимостях или окружении.- Причины: Связанный функционал не реализован, тестовое окружение недоступно, есть блокирующий баг в другой части системы.
- Действие: Тест откладывается до устранения блокирующей причины.
-
Critical(Критический): Тест-кейс был выполнен и провалился, обнаружив дефект высочайшей важности, который блокирует дальнейшее тестирование или делает ключевой функционал системы нерабочим.- Причины: Падение основного сценария (например, невозможность авторизоваться, создать заказ).
- Действие: Дефекту присваивается наивысший приоритет для немедленного исправления.
Пример на Python (pytest):
import pytest
def test_user_login():
# Проверка предусловия: если API авторизации лежит, тест BLOCKED
if not is_auth_service_available():
pytest.skip("Сервис авторизации недоступен -> Status: Blocked")
# Основная проверка: если логин падает, тест FAILED, а баг — CRITICAL
result = login(username="valid_user", password="valid_pass")
assert result is True, "Не удалось войти в систему -> Выявлен Critical баг"
Ключевое отличие: Blocked — это статус до выполнения теста (нельзя запустить), а Critical — это оценка серьезности дефекта, найденного после провала теста.
Ответ 18+ 🔞
Давай разберём эту хуйню, а то народ путает, как последние идиоты. Слушай сюда, я тебе на пальцах объясню, а то у тебя в глазах уже квадратные зрачки от этих статусов.
Представь, ты пришёл на кухню яичницу делать. Берёшь сковородку, а она, блядь, дырявая. Всё, пиздец. Ты даже яйца разбить не можешь, потому что инструмент говно. Это — Blocked. Тест не запустился, потому что окружение или зависимость — говно. Сервер лег, фича соседа не доделана, тестовая база сдохла. Делать нехуй, ждём, пока дыру в сковородке заварят.
А теперь другая история. Сковородка целая, огонь есть, масло налил. Разбиваешь яйцо, а оно, сука, зелёное и воняет сероводородом. Ты его на сковородку, а оно тебе в ответ: «Пошёл нахуй, я тухлое». Основной сценарий — приготовить еду — обосрался на самом старте. Это — Critical. Тест-то ты запустил, он отработал, но нашёл такую дичь, что дальше двигаться бессмысленно. Весь ключевой функционал встал колом. Не залогиниться, не купить, не сохранить — пиздец полный.
Короче, запомни раз и навсегда:
- Blocked — это «не могу даже начать, потому что всё вокруг — говно».
- Critical — это «начал, сделал, и тут же обосрался на самом главном, пиздец какой-то».
Смотри, на коде даже покажу, чтоб ты, наконец, въехал. Блоки кода не трогаю, они святы.
import pytest
def test_user_login():
# Проверка предусловия: если API авторизации лежит, тест BLOCKED
if not is_auth_service_available():
pytest.skip("Сервис авторизации недоступен -> Status: Blocked")
# Всё, пошли нахуй. Нельзя даже попробовать. Ждём, пока админы сервак поднимут.
# Основная проверка: если логин падает, тест FAILED, а баг — CRITICAL
result = login(username="valid_user", password="valid_pass")
assert result is True, "Не удалось войти в систему -> Выявлен Critical баг"
# Вот тут мы уже в деле. Но если эта строка падает — это пиздец, товарищ. Это Critical.
# Потому что если зайти нельзя, то и тестировать дальше нехуй.
Уловил разницу, гений? В первом случае ты даже до assert не дошёл, тебя отфутболили нахуй. Во втором — ты дошёл, проверил, и система тебе показала большой и жирный кукиш. Вот этот кукиш и есть Critical баг.
Не путай горячее с мягким, а то потом на ретроспективе будешь как дурак объяснять, почему ты неделю сидел на Blocked, когда надо было багу Critical приоритет впендюрить.