Avatar ·

Wie führe ich alle Tests in einem Go-Projekt mit `go test` aus?

Hallo zusammen! Ich bin neu in Go und versuche, mich mit dem Testen vertraut zu machen. Ich habe ein Projekt mit mehreren Paketen, und jedes hat seine eigenen Testdateien (z.B. `main_test.go`, `utils_test.go`, `api_test.go`). Ich möchte alle Tests im gesamten Projekt mit einem Befehl ausführen, verstehe aber nicht, wie das richtig geht. Ich habe verschiedene Varianten ausprobiert: `go test`, `go test ./...`, aber die Ergebnisse sind unterschiedlich. Manchmal werden Tests gar nicht ausgeführt, manchmal nur im aktuellen Verzeichnis. Hier ist ein Beispiel der Struktur meines Projekts: ``` myproject/ ├── main.go ├── main_test.go ├── utils/ │ ├── helpers.go │ └── helpers_test.go └── api/ ├── handlers.go └── handlers_test.go ``` Wenn ich im Projektstamm bin und `go test` eingebe, werden nur die Tests aus `main_test.go` ausgeführt, während die Tests in den Unterordnern `utils` und `api` ignoriert werden. Wenn ich `go test ./...` eingebe, erhalte ich einen Fehler: `go: no test files` für einige Pakete (z.B. für das Stammpaket, wenn dort keine Tests vorhanden sind). Wie führe ich alle Tests korrekt aus?