Heim >Backend-Entwicklung >Golang >Wie kann ich eine genaue Go-Code-Abdeckung erreichen, wenn sich Quell- und Testdateien in separaten Ordnern befinden?

Wie kann ich eine genaue Go-Code-Abdeckung erreichen, wenn sich Quell- und Testdateien in separaten Ordnern befinden?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-30 05:06:10558Durchsuche

How Can I Achieve Accurate Go Code Coverage When Source and Test Files Are in Separate Folders?

Codeabdeckungserkennung für getrennte Ordner in Go

Beim Testen Ihres Go-Codes ist es wichtig, eine angemessene Codeabdeckung sicherzustellen, um die Testeffektivität zu überprüfen. Wenn Ihre Projektstruktur jedoch Ihren Quellcode und Ihre Testdateien in verschiedene Ordner unterteilt, kann es zu Problemen beim Abrufen genauer Informationen zur Codeabdeckung kommen.

In diesem Szenario umfasst Ihre Projektstruktur stuff/stuff.go und test/ stuff/stuff_test.go gehört zu verschiedenen Paketen (stuff bzw. test), für die die Testausführung möglicherweise keine Abdeckung meldet stuff.go.

Lösung

Um dieses Problem zu beheben, können Sie beim Ausführen von go test das Flag -coverpkg nutzen. Mit diesem Flag können Sie die Pakete angeben, für die Sie Abdeckungsinformationen aufzeichnen möchten. Mit diesem Flag können Sie sicherstellen, dass Ihre Testausführung die gewünschten Pakete umfasst und die Codeabdeckung für Ihren Quellcode genau meldet.

Zum Beispiel, um die Abdeckung sowohl für die Sachen als auch für die Testpakete zu analysieren:

go test -coverpkg=./... ./test/...

Abdeckungsbericht anzeigen

Sobald Sie die Tests mit dem entsprechenden Flag -coverpkg ausgeführt haben, können Sie mit go einen Abdeckungsbericht erstellen Werkzeugabdeckung. Dieses Tool erstellt einen HTML-Bericht, der die Abdeckungsinformationen visualisiert und es Ihnen ermöglicht, alle nicht abgedeckten Zeilen in Ihrem Code zu identifizieren.

So erstellen Sie den Bericht:

go tool cover -html=cover.out

Durch Verwendung des Flags -coverpkg können Sie sicherstellen, dass Ihre Testausführung die Codeabdeckung Ihrer getrennten Ordner genau nachverfolgt und so wertvolle Einblicke in die Abdeckung Ihrer Anwendung liefert.

Das obige ist der detaillierte Inhalt vonWie kann ich eine genaue Go-Code-Abdeckung erreichen, wenn sich Quell- und Testdateien in separaten Ordnern befinden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn