TIL: Go에서 테스트 건너뛰기
4986 단어 gotestingtodayilearned
기본 구현이 있다고 가정해 보겠습니다.
package shorttest
import (
"fmt"
"time"
)
func DoUnimportantStuff() uint8 {
fmt.Println("Doing unimportant stuff")
time.Sleep(10 * time.Second)
return 1
}
func DoImportantStuff() uint8 {
fmt.Println("Doing important stuff")
return 1
}
그리고 해당 테스트 스위트가 있습니다.
package shorttest
import "testing"
func TestImportant(t *testing.T) {
got := DoImportantStuff()
if got != 1 {
t.Errorf("Important stuff not correct, needed %d", got)
}
}
func TestUnimportant(t *testing.T) {
if testing.Short() {
t.Skip("skipping test in short mode.")
} else {
got := DoUnimportantStuff()
if got != 1 {
t.Errorf("Unimportant stuff not correct, needed %d", got)
}
}
}
개발 중이고 빠른 피드백을 원할 때 장기 실행되고 중요하지 않은 테스트가 끝날 때까지 기다리지 않고 가능한 한 빨리 중요한 기능에 대한 피드백을 받는 데 매우 관심이 있습니다.
우리가 테스트할 때 대기 시간을 관찰할 것입니다.
$ go test
Doing important stuff
Doing unimportant stuff
PASS
ok shorttest 10.364s
그런 다음
--short
플래그로 테스트 스위트를 실행하여 중요하지 않은 테스트의 실행을 건너뛸 수 있습니다.❯ go test --short
Doing important stuff
PASS
ok shorttest 0.116s
중요하지 않은 장기 실행 테스트에서
--short
를 통해 testing.Short()
처리를 추가하는 것을 기억해야 합니다.리소스 및 참조
my TIL collection에서 해제
Reference
이 문제에 관하여(TIL: Go에서 테스트 건너뛰기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/jonasbn/til-skipping-tests-in-go-3i5l텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)