package main import "fmt" func sum(a int,b int) int { return a+b } func main() { fmt.Println("hello test") }
로그인 후 복사
package main import ( "fmt" "testing" ) func TestSum(t *testing.T) { var a = 3 var b =4 res :=sum(a,b) fmt.Printf("%d 与%d之和:为%d",a,b,res) if res != 7{ t.Error("error") } }
로그인 후 복사
- go test는 자동으로 이 디렉터리에서 테스트 파일을 찾고, go test -v는 실행 프로세스를 자세히 표시합니다
-
- testing.B
- t입니다.Error는 오류 메시지를 인쇄하는 것이며 현재 테스트 케이스는 건너뜁니다
t.SkipNow()는 테스트를 건너뛰는 것입니다. PASS를 직접 눌러 다음 테스트를 진행해야 하며 테스트 케이스의 첫 번째 줄에 작성해야 합니다. 그렇지 않으면 유효하지 않습니다.
- go의 테스트는 여러 TestXxx가 순차적으로 실행되는 것을 보장하지 않지만 일반적으로 순차적 실행을 활성화하려면 t.Run(name string, f func)을 사용하여 순차적 실행을 보장하고
- TestMain(m *testing.M)을 초기화 테스트로 사용하고 m.Run()을 사용할 수 있습니다. 다른 테스트를 호출하여 완료하려면 일부 테스트에는 데이터베이스 연결, 파일 열기, REST 서비스 로그인 등의 초기화 작업이 필요합니다. testMain에서 m.Run()이 호출되지 않으면 TestMain을 제외한 다른 테스트 케이스가 실행되지 않습니다.
golang
튜토리얼 칼럼을 방문해주세요!