Il mio progetto-struttura
stuff/stuff.go -> package: stuff
test/stuff/stuff_test.go -> package: test
Anche se stuff_test esegue il codice da stuff.go mostra
coverage: 0.0% of statements
ho usato go test -cover
Se muovo il * _test.go alla roba cartella del programma sta funzionando bene.
O forse il mio approccio alla struttura del progetto non è ben progettato/go-conform?Come rilevare la copertura del codice delle cartelle separate in GO?
risposta
copertura di test cross-pacchetto non è supportato direttamente, ma diverse persone hanno costruito involucri di unire i profili di copertura individuali.
Vedere Issue #6909 per la lunga storia su questo. E vedi gotestcover per uno strumento di esempio per l'unione. C'è anche gocovmerge. Ho costruito la mia versione, quindi non ho provato nessuno di questi, ma sono sicuro che tutti funzionano come i miei, e il mio funziona bene.
La mia sensazione è che questo è solo un problema per il quale nessuno ha scritto una lista di cambiamenti davvero convincente, e non è stato così importante per i manutentori principali, quindi non è stato affrontato. Solleva piccoli casi d'angolo che potrebbero interrompere i test esistenti, quindi gli hack rapidi che funzionano per la maggior parte di noi non sono stati accettati così com'è. Ma non ho visto nessuna discussione che suggerisca ai manutentori principali di opporsi attivamente a questa funzione.
La struttura del programma Go convenzionale mantiene i test con il pacchetto. Come questo:
project
|-stuff
|--stuff.go
|--stuff_test.go
Nella parte superiore dei file di test è ancora dichiara package stuff
, ed è necessario che i tuoi metodi di test assumono la forma TestMethodX
se si desidera go test
loro esecuzione automatica.
docs vedere andare per ulteriori informazioni: https://golang.org/pkg/testing/
- 1. Copertura del codice in Studio Android
- 2. Java - Copertura del codice
- 3. Copertura del codice in monotouch
- 4. Copertura del codice in clang
- 5. copertura del codice finally
- 6. Come eseguire la copertura del codice in cmake
- 7. Come utilizzare la copertura del codice EMMA in Android
- 8. Come utilizzare la copertura del codice in Xcode 7?
- 9. Analizza la copertura del codice Scomparsa
- 10. Che cos'è la copertura del codice?
- 11. TDD e copertura del codice
- 12. Copertura del codice con PHPUnitSeleniumTestcase
- 13. Copertura del codice con nUnit?
- 14. Copertura del codice per i test (manuali) delle persone?
- 15. Copertura del codice gradle Android
- 16. google-test: copertura del codice
- 17. Valori di copertura del codice/copertura consigliata valori
- 18. Qual è la differenza tra copertura del codice e copertura della linea in sonar
- 19. Come impostare la copertura del codice runner Karma?
- 20. Copertura del codice di misura in Delphi
- 21. Come disattivare la copertura del codice per phpunit 5.4+
- 22. copertura del codice visivo in travis-ci
- 23. Misurare la copertura del codice solo sul nuovo codice
- 24. Problema con la copertura del codice in VS 2012
- 25. Abilita la copertura del codice in VS 2010 definitivo
- 26. Misurare la copertura del codice Scala nei test in Eclipse
- 27. Copertura del codice JavaScript con Jasmine
- 28. Esiste un modo per escludere file/cartelle dal punteggio di copertura del test di copertura?
- 29. Qual è la differenza tra "copertura totale" e "copertura del codice" in rcov?
- 30. Test di copertura del codice in Visual Studio 2010? Come?
Puoi pubblicare un link per il tuo strumento, Rob? –
@ Rick-777 Il mio è uno strumento interno che è integrato con il nostro sistema di build (con percorsi e logica hardcoded). Ho pensato di renderlo generico e di pubblicarlo; non sarebbe tanto lavoro. Ma ci sono già altri buoni strumenti in questo spazio, quindi non c'è davvero molto bisogno di un altro ancora. –