РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
995 of 1593 menu

Функция testing.Short

Функция testing.Short проверяет, выполняется ли тест в коротком режиме. Она возвращает true, если тесты запущены с флагом -test.short или через переменную среды, и false в противном случае. Эта функция не принимает параметров и возвращает логическое значение.

Синтаксис

testing.Short()

Пример

Давайте создадим тест, который пропускает длительные операции при запуске в коротком режиме:

package main import ( "testing" "time" ) func TestLongOperation(t *testing.T) { if testing.Short() { t.Skip("Skipping long test in short mode") } time.Sleep(5 * time.Second) t.Log("Long operation completed") }

Результат выполнения кода при запуске с флагом -test.short:

"--- SKIP: TestLongOperation (0.00s)"

Пример

Рассмотрим пример использования с условной логикой для адаптации тестов под разные режимы запуска:

package main import ( "testing" ) func TestDataProcessing(t *testing.T) { dataSize := 1000 if testing.Short() { dataSize = 10 t.Log("Running in short mode with reduced data size") } result := processData(dataSize) if result != dataSize { t.Errorf("Expected %d, got %d", dataSize, result) } } func processData(size int) int { return size }

Результат выполнения кода при запуске без флага -test.short:

"Running in short mode with reduced data size"

Пример

Покажем, как использовать функцию в комплексных тестовых сценариях с несколькими проверками:

package main import ( "testing" ) func TestComplexSuite(t *testing.T) { if testing.Short() { t.Log("Running only fast tests") runFastTests(t) } else { t.Log("Running full test suite") runFastTests(t) runSlowTests(t) } } func runFastTests(t *testing.T) { t.Log("Fast tests completed") } func runSlowTests(t *testing.T) { t.Log("Slow tests completed") }

Результат выполнения кода в коротком режиме:

"Running only fast tests" "Fast tests completed"

Смотрите также

  • функцию testing.Verbose,
    которая проверяет режим подробного вывода
  • функцию testing.T.Skip,
    которая пропускает текущий тест
  • функцию testing.T.Skipf,
    которая пропускает тест с форматированным сообщением
  • функцию testing.T.Skipped,
    которая проверяет, был ли тест пропущен
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить