Go 테스트를 작성할 때 디버깅 목적으로 정보를 인쇄하려는 경우가 있을 수 있습니다. 그러나 단순히 테스트 함수 내에서 fmt.Println을 호출하면 가시적인 출력이 생성되지 않습니다.
기본적으로 테스트에서 fmt.Println 문의 출력은 억제됩니다. 이러한 출력을 표시하려면 Testing.T 구조에서 제공하는 .Log 또는 .Logf 메서드를 사용해야 합니다.
fmt.Print 및 fmt.Printf와 유사합니다. , .Log 및 .Logf를 사용하면 형식화된 출력을 인쇄할 수 있습니다. 예를 들어 다음을 사용하는 대신 다음을 사용해야 합니다.
func TestPrintSomething(t *testing.T) { fmt.Println("Say hi") }
자세한 내용으로 출력 보기
func TestPrintSomething(t *testing.T) { t.Log("Say hi") }.Log를 사용하는 경우에도 출력이 표시되지 않을 수 있습니다. go test를 실행할 때 -v(verbosity) 플래그를 제공하지 않는 한. 이 플래그는 다음 구문을 사용하여 지정할 수 있습니다.
-v 플래그를 추가하면 .Log 문의 출력이 콘솔에 표시됩니다.
go test -v your_test_file.go인쇄 문이 숨겨진 이유 fmt.X 인쇄 문은 실제로 테스트 내에서 작동합니다. 그러나 테스트 결과는 인쇄되기 전에 Go 테스트 인프라에서 처리되기 때문에 일반적으로 해당 출력이 예상 위치에 표시되지 않습니다. 반면 .Log 메소드는 테스트 환경 내에서 형식화된 출력을 표시하도록 특별히 설계되었으며 상세 플래그를 사용하여 제어할 수 있습니다.
위 내용은 Go 테스트에서 디버깅 정보를 어떻게 인쇄합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!