GoSonar: как сгенерировать go test -json> report.json - PullRequest
0 голосов
/ 27 июня 2018

Как сгенерировать go test -json > report.json

Golang Версия: Go1.10.3

Свойства SonarQube: sonar.go.tests.reportPaths = report.json

Официальный документ сонара -> https://docs.sonarqube.org/display/PLUG/Unit+Tests+Results+Import

Makefile

.PHONY: test
test:
    @$(foreach package,$(packages), \
        go test -coverprofile $(package)/cover.out -covermode=count $(package);)

.PHONY: cover
cover-xml:
    @$(foreach package,$(packages), \
        gocov convert $(package)/cover.out | gocov-xml > $(package)/coverage.xml;)

1 Ответ

0 голосов
/ 27 июня 2018

В Makefile вы генерируете отчет о покрытии, используя:

go test -coverprofile $(package)/cover.out $(package)

Для генерации отчета о тестировании необходимо добавить:

go test -coverprofile $(package)/cover.out -json $(package) > $(package)/test-report.json

Или, если вы предпочитаете один отчет, вы можете создать пустой файл:

echo -n > test-report.json

И добавить к нему все тесты:

go test -coverprofile $(package)/cover.out -json $(package) >> test-report.json

Примечание. Я удалил -covermode=count, поскольку он бесполезен, если отчет используется только SonarGo.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...