Назад к вопросамЗапустится ли подтест
JuniorТеорияЧасто
Запустится ли подтест TestHalf/4?
func TestHalf(t *testing.T) {
for _, n := range []int{2, 3, 4} {
t.Run(fmt.Sprint(n), func(t *testing.T) {
if n%2 != 0 {
t.Fatalf("%d is odd", n)
}
})
}
}Да: t.Fatalf остановил только подтест TestHalf/3
- Ждать, что
t.Fatalfостановит весь TestHalf: внутриt.Runон останавливает только свой подтест, и цикл переходит к 4. - Ждать, что
go testостановится на первом провале: без флага-failfastон запускает все тесты и подтесты и сообщает о каждом провале.
- Как запустить из командной строки только подтест
TestHalf/4? - Что изменится, если вызывать
t.Fatalfпрямо в цикле, безt.Run?