Недавно я установил SonarQube в версию 6.2. Я заметил, что показатели охвата кода значительно сократились. В деталях охвата я вижу, что файлы с аннотациями или интерфейсами @codeCoverageIgnore
имеют непокрытые строки. Похож на подсчитанный охват сонара по количеству покрытых линий (из журнала вывода xml PHPUnit) за все файлы в каталоге, указанном sonar.sources
в sonar-project.properties
.Неправильное покрытие с помощью Sonarqube 6.2 и плагина PHP
Перед установкой SonarQube на моем сервере я играл с версией 6.1, запущенной на официальном изображении Docker, и он работал как шарм.
Я не нашел открытого вопроса/тикера/подобного вопроса, связанного с такой проблемой, поэтому, возможно, я делаю что-то неправильно.
Детали:
- PHPUnit 5.7.5 работает с командой:
phpunit --coverage-clover=build/phpunit.coverage.xml --log-junit=build/phpunit.log.xml
- SonarQube 6.2 (устанавливается из официальных репозиториев меткому)
- SonarQube Scanner 2,8
- So narQube в PHP Plugin 2.9.2.1744
Спасибо за ответ :) Идея истинного коэффициента покрытия не очень хорошо, но это своего рода странно, когда файл с интерфейсом не распространяется на всех, и нет способ исправить это (только исключениями). Я получаю ложные предупреждения о том, что новый код обнаружил строки, и иногда трудно найти файл, который должен быть исправлен, а не игнорироваться. Боюсь, что моя команда начнет отказываться от зарегистрированных проблем, потому что они будут думать, что Sonar, вероятно, ошибается, поэтому не стоит смотреть на нее. –
Просьба сообщить о таких FP в группу [SonarQube Google Group] (https://groups.google.com/forum/?pli=1#!forum/sonarqube) –