Have you try go test with -args -test.gocoverdir parameters?
> go test -cover ./... -args -test.gocoverdir="{a directory where coverage
reports should be generated}"
I found this blog post is very helpful when merging unit and integration
test coverage reports.
https://dustinspecker.com/posts/go-combined-unit-integration-code-coverage/
2025년 1월 13일 월요일 오전 10시 13분 15초 UTC+9에 Paul Chesnais (papacharlie)님이 작성:
> The blog post doesn't provide a way to translate the output of `go test
> -coverprofile ...` (which is the so-called legacy text format) into the new
> binary format, which `go tool covdata merge` expects. It only provides it
> in the reverse, i.e. the new binary format to the legacy format. So it
> means if I'm running my tests with multiple invocations of `go test` (e.g.
> because they need to be run in different envs/different tags) there's no
> easy way to get merged coverage results. Is there any way to get `go test`
> to produce the new format, or to translate the text format into the new
> format?
>
> On Saturday, January 11, 2025 at 9:26:40 PM UTC-5 Ian Lance Taylor wrote:
>
>> On Sat, Jan 11, 2025 at 10:07 AM Paul Chesnais (papacharlie)
>> <[email protected]> wrote:
>> >
>> > Is there another forum I can ask about this? Should this be a feature
>> request against the go team directly? It seems strange that the formats
>> haven't been converged, or that there's no way to get the new binary format
>> from `go test`
>>
>> I don't really know the answer, but the blog post
>>
>> https://go.dev/blog/integration-test-coverage#working-with-coverage-data-files
>>
>> discusses converting between different coverage profile data formats.
>> If that doesn't help, can you explain in more detail, perhaps with a
>> series of commands that doesn't work as you hope?
>>
>> Ian
>>
>>
>> > On Tuesday, December 3, 2024 at 1:26:04 PM UTC-5 Paul Chesnais
>> (papacharlie) wrote:
>> >>
>> >> Hello,
>> >>
>> >> I'd like to be able to merge the data from the output of `go test
>> -cover` with the output of a run using `go build -cover` but it seems that
>> there's no way to translate the "legacy" format from go test into the new
>> binary format. This means it's not possible to use the built-in tooling
>> like `go tool covdata merge`. There is of course the possibility of
>> translating the binary format back into the legacy format using textfmt but
>> then there's still no good way to merge the coverage data without using
>> some custom tooling like https://github.com/wadey/gocovmerge.
>> >>
>> >> As far as I can tell there's also no way to get clever and get `go
>> test -c` to build with the binary with the `-cover` flag because that build
>> flag gets eaten up by `go test`. It seems there's no way to get the new
>> coverage format from go test, unless I'm missing something?
>> >>
>> >> Just looking for any insights on this, thanks in advance!
>> >>
>> >> Paul
>> >
>> > --
>> > You received this message because you are subscribed to the Google
>> Groups "golang-nuts" group.
>> > To unsubscribe from this group and stop receiving emails from it, send
>> an email to [email protected].
>> > To view this discussion visit
>> https://groups.google.com/d/msgid/golang-nuts/d7b799e4-49a6-417d-8b13-65b5b244c11cn%40googlegroups.com.
>>
>>
>>
>
--
You received this message because you are subscribed to the Google Groups
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/golang-nuts/78bac578-2371-4adb-8157-732b021660fbn%40googlegroups.com.