Początkujący w Go, więc niewiele jeszcze wiem. Próbuję napisać prosty bench test dla funkcji. Mam dwa pliki:
package main
func Foo() string{
return "Bar";
}
func main() {
Foo()
}
package main
import (
"testing"
)
func BenchmarkGeeks(b *testing.B) {
for i := 0; i < b.N; i++ {
Foo()
}
}
Odpalam to w ten sposób w roboczym katalogu wewnątrz repo gita:
go test --bench=.
Ponieważ jestem w podkatalogu repozytorium, to odsyła mnie katalog wyżej i zaleca uruchomić go mod init
, jednak to niewiele pomaga.
- Czy można prosić o wyjaśnienie, czego mi tutaj brakuje?
- Skąd funkcja testująca wie o istnieniu
Foo
skoro jej nie importuje (przykład wziąłem z Internetu)? - Czy można upakować funkcję testującą i wywołującą w jednym pliku?