2016-03-19 14 views
0

Yalnızca iki Go dosyası bulunan bir package var: biri ana işlevi ve diğerini ise sınamalar için tanımlar."git sınama" hatalı bildirim kapsamı bildiriyor

$ go test -cover 
PASS 
coverage: 41.8% of statements 
ok  github.com/suzaku/dummage  0.010s 

Gördüğünüz gibi, bu doğru çalışır:

Şimdi bu paketin içine cd sahip ve aşağıdaki komutu çalıştırın varsayalım.

Ama HTML raporu oluşturmak istediğimizi, bu nedenle bazı googling sonra aşağıdaki komutu kullanın: bu sefer kapsama% 1,8'e düştüğünü

$ go test -run=Coverage -coverprofile=c.out github.com/suzaku/dummage 
ok  github.com/suzaku/dummage  0.010s coverage: 1.8% of statements 

Not.

Bunu düzeltmek için ne yapabilirim?

cevap

3

Hareket halindeyken bu -run=Coverage bayrağına ihtiyacınız olduğuna emin misiniz? Bu, yalnızca Coverage ile eşleşen testleri çalıştıracağı anlamına gelir. Bu testler için sadece bir kapak profili oluşturmak istiyorsanız, go test -coverprofile c.out github.com/suzaku/dummage'u çalıştırın. Daha sonra HTML raporunu görmek için go tool cover -html c.out'u çalıştırabilirsiniz.

-run=Coverage hedefe eklediyseniz, beklenen davranış - -run=Coverage sırasında çalıştırılan kodun miktarı tüm testleri çalıştırırken olduğundan daha azdır ve test kapsamı tüm paket için hesaplanır.

İlgili konular