Go'da birkaç farklı test paketi adlandırma stratejisi gördüm ve her birinin artılarını ve eksilerini ve hangisini kullanmam gerektiğini öğrenmek istedim.
Strateji 1:
Dosya adı: github.com/user/myfunc.go
package myfunc
Test dosyası adı: github.com/user/myfunc_test.go
package myfunc
Örnek için bzip2'ye bakın .
Strateji 2:
Dosya adı: github.com/user/myfunc.go
package myfunc
Test dosyası adı: github.com/user/myfunc_test.go
package myfunc_test
import (
"github.com/user/myfunc"
)
Örnek için tele bakınız .
Strateji 3:
Dosya adı: github.com/user/myfunc.go
package myfunc
Test dosyası adı: github.com/user/myfunc_test.go
package myfunc_test
import (
. "myfunc"
)
Örnek için dizelere bakın .
Go standart kitaplığı strateji 1 ve 2'nin bir karışımını kullanıyor gibi görünüyor. Üçünden hangisini kullanmalıyım? Bu, package *_test
paketlerime özel yöntemleri test edemediğim anlamına geldiğinden, test paketlerime eklenen bir acıdır , ancak belki de farkında olmadığım gizli bir avantajı olabilir mi?