Comments (3)
Directory structure does not necessarily imply a relationship between packages, even if that's usually the case. So you're right, running "gocov test" will not test subdirectories; it only tests the specified package. If you don't specify a package on the command line, it tests the package in the working directory.
It's not entirely clear to me what you want to see. You want to see coverage for your package and all packages in subdirectories? What I suggest you do is test each package using go test -coverprofile=...
, and then combine the results using gocov convert
. That can then be fed into gocov report
or gocov annotate
.
from gocov.
That's right. I want to see coverage for the package and all packages in subdirectories. It's true directory structure may not necessarily imply relationship, but to elaborate my use case: I have a package main
for foo.go
. In here, it may use packages from subdirectories. The intuition here is to organize the code in a modular fashion. The entire codebase in the example represents one service/component of a large system.
I thought it would be nice to run the test on the codebase as a whole. One thing I could do is to just make all subdirectory packages be the same package name as whatever my service/component is named.
Right now, my goal is two things: (1) to see an overall coverage percentage and (2) to page through the output of gocov annotate
for the codebase.
I'll try your suggestion and circle back here tomorrow. Thanks!
from gocov.
Using standard go cover works from the above suggested solution. Moreover, plain simple go test ./... -cover
works as well. Closing.
from gocov.
Related Issues (20)
- [Question] Can i use gocov to get code coverage report for a go application if my tests are written in another framework using python HOT 3
- Does gocov not support generics in Go version 1.20? HOT 1
- Does gocov currently support generics,expected '(', found '[' (and 5 more errors)
- flag provided but not defined: -coverprofile
- gocov output data format as standard go test does? HOT 8
- gocov's result is different from go test HOT 1
- If a package has no test files, the lines in that package are not added to the total line count. HOT 10
- Pass arguments to go list HOT 4
- please tag a version, to make go modules usage easier HOT 2
- gocov: gocov report print total coverage NaN% when totalReached and totalStatements are zero
- gocov does not pass -tags parameter HOT 1
- What is the difference to the go standard tools?
- gocov failed when trying on file that has a formatting directive
- 按照指示安装不了,有什么国内的镜像地址吗 HOT 1
- go get doesn't install HOT 2
- the code source default is $GOROOT. whether the code source path can be specified by the user when using gocov convert? HOT 3
- Unable to use go install HOT 2
- gocov with go1.18 generics HOT 3
- [question] Is it possible to exclude a method from code coverage? HOT 1
- gocov with coverprofile raise error, the file path contains duplicate parts HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gocov.