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

Метод testing.T.Skipf

Метод T.Skipf используется для пропуска текущего теста с выводом форматированного сообщения. Он принимает шаблон форматирования и аргументы, аналогично fmt.Printf. Первый параметр - строка формата, последующие - значения для подстановки. Метод помечает тест как пропущенный и прекращает его выполнение.

Синтаксис

t.Skipf(format string, args ...interface{})

Пример

Пропустим тест, если операционная система не соответствует требуемой:

package main import ( "runtime" "testing" ) func TestLinuxOnly(t *testing.T) { if runtime.GOOS != "linux" { t.Skipf("skipping test on %s, requires linux", runtime.GOOS) } // Тест для Linux }

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

"--- SKIP: TestLinuxOnly (0.00s) testing_test.go:10: skipping test on windows, requires linux"

Пример

Пропустим тест, если внешняя зависимость недоступна:

package main import ( "os" "testing" ) func TestDatabaseConnection(t *testing.T) { dbHost := os.Getenv("DB_HOST") if dbHost == "" { t.Skipf("DB_HOST environment variable not set, skipping test") } // Тест подключения к БД }

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

"--- SKIP: TestDatabaseConnection (0.00s) testing_test.go:9: DB_HOST environment variable not set, skipping test"

Пример

Используем T.Skipf с форматированием для вывода дополнительной информации о пропуске теста:

package main import ( "fmt" "testing" ) func TestComplexCondition(t *testing.T) { version := "1.0.0" requiredVersion := "2.0.0" if version < requiredVersion { t.Skipf("skipping test: version %s is less than required %s", version, requiredVersion) } // Тест для новой версии fmt.Println("Running test for version", version) }

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

"--- SKIP: TestComplexCondition (0.00s) testing_test.go:11: skipping test: version 1.0.0 is less than required 2.0.0"

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

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