So messen Sie die Codeabdeckung isolierter Ordner in Go
In Go kann sich das Messen der Codeabdeckung für Pakete, die sich in separaten Ordnern befinden, als Herausforderung erweisen. Betrachten Sie die folgende Projektstruktur:
stuff/stuff.go -> package: stuff test/stuff/stuff_test.go -> package: test
Auch wenn stuff_test.go Code von stuff.go ausführt, kann der Abdeckungsbericht Folgendes anzeigen:
coverage: 0.0% of statements
Dies liegt daran, dass go test -cover von Standardmäßig wird nur das getestete Paket analysiert, nicht seine Abhängigkeiten.
Um dieses Problem zu beheben, können Sie mit der Option -coverpkg angeben, welche Pakete für die Abdeckung in Betracht gezogen werden sollen Analyse. Der folgende Befehl schließt beispielsweise alle Pakete im aktuellen Verzeichnis ein:
go test ./test/... -coverprofile=cover.out -coverpkg ./...
Sobald die Testausführung abgeschlossen ist, können Sie einen Abdeckungsbericht erstellen mit:
go tool cover -html=cover.out
Dies wird Stellen Sie einen detaillierten Bericht über die Codeabdeckung für Ihr Projekt bereit, einschließlich der Abdeckung von Paketen in separaten Ordnern.
Das obige ist der detaillierte Inhalt vonWie erreicht man eine genaue Go-Code-Abdeckung für isolierte Pakete?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!