Avatar ·

Wie führe ich alle Tests in einem Go-Projekt aus (go test) und verpasse keinen?

Hallo Kollegen! Ich habe gerade angefangen, Go zu lernen, und versuche, mich mit dem Testen vertraut zu machen. Ich habe ein kleines Projekt mit dieser Struktur: ``` myproject/ ├── main.go ├── go.mod ├── pkg/ │ ├── calc/ │ │ ├── calc.go │ │ └── calc_test.go │ └── utils/ │ ├── strings.go │ └── strings_test.go └── tests/ └── integration_test.go ``` Wenn ich im Projektstamm bin und `go test` ausführe, startet es aus irgendeinem Grund nur die Tests aus dem aktuellen Ordner (wo main.go liegt), während die Tests in den Unterordnern `pkg/` und `tests/` ignoriert werden. Ich habe versucht, `go test ./...` zu schreiben, aber dann beschwert es sich, dass es einige Dateien nicht finden kann, besonders in `tests/`. Was mache ich falsch? Wie führe ich alle Tests des Projekts mit einem Befehl korrekt aus? Muss ich `go.mod` oder die Ordnerstruktur speziell konfigurieren? Ich wäre dankbar für eine detaillierte Antwort mit Beispielen, da in der Dokumentation viele Flags beschrieben sind, aber ich bin verwirrt. <<>>

Der Hauptbefehl und seine Nuancen

Um alle Tests auszuführen