Модульные тесты JavaScript не работают в SonarQube

У меня ниже проблемы с SonarRunner.

SonarQube вместе с Sonar runner не может извлекать отчеты в формате XML в формате junit

Виджет модульных тестов или покрытия тестами не отображается. Там написано Нет данных. Я следую инструкциям, описанным здесь

Я вручную создал файл отчета в формате XML, как описано, но все равно не повезло.

Ниже представлен файл XML - TEST-Firefox_210_Mac_OS.com.company.BarTest.xml,

<testsuite name="Firefox_210_Mac_OS.com.company.BarTest" errors="0" failures="0" tests="3" time="0.0">
  <testcase classname="Firefox_210_Mac_OS.com.company.BarTest" name="testfullName" time="0.0"/>
</testsuite>

Чтобы вытащить отчет о выполнении модульного теста для отображения на приборной панели сонара. Я использовал образец проекта git из здесь

а ниже мой sonar-project.properties,

# project metadata (required)
sonar.projectKey=org.codehaus.sonar:javascript-sonar-runner-jstestdriver
sonar.projectName=JavaScript project with Sonar Runner reusing reports generated by JsTestDriver
sonar.projectVersion=1.0

# path to source directories (required)
sonar.sources=C:/Sonar/sonar-runner-dist-2.4/sonar-runner-2.4/projects/sources

# path to tests source directories (required)
sonar.tests=C:/Sonar/sonar-runner-dist-2.4/sonar-runner-2.4/projects/tests

sonar.javascript.jstestdriver.reportsPath=C:/Sonar/sonar-runner-dist-2.4/sonar-runner-2.4/projects/target/TEST-Firefox_210_Mac_OS.com.company.BarTest.xml


sonar.sourceEncoding=UTF-8

ниже мой jsTestDriver.conf

server: http://localhost:9876

load:
 - C:/Sonar/sonar-runner-dist-2.4/sonar-runner-2.4/projects/sources/*.js
 - C:/Sonar/sonar-runner-dist-2.4/sonar-runner-2.4/projects/sources/com/company/*.js
test:
 - C:/Sonar/sonar-runner-dist-2.4/sonar-runner-2.4/projects/tests/*.js
 - C:/Sonar/sonar-runner-dist-2.4/sonar-runner-2.4/projects/tests/com/company/*.js

plugin:
 - name: "coverage"
   jar: "coverage-1.3.5.jar"
   module: "com.google.jstestdriver.coverage.CoverageModule"

Мой сонарк работает на порту: 9000 и ниже показан снимок экрана. Как вы видите, SonarRunner и jsTestDriver просто выполняют анализ кода и не показывают никаких модульных тестов.

введите здесь описание изображения


person rajcool111    schedule 16.12.2015    source источник
comment
На сайте документации SonarQube ничего подобного про js-test-driver не сказано. Он просто говорит, что он будет импортировать отчеты js-test-driver.   -  person G. Ann - SonarSource Team    schedule 16.12.2015
comment
Спасибо. Отредактировал мой пост.   -  person rajcool111    schedule 16.12.2015
comment
Мне не хватает плагинов? Какой плагин понадобится для чтения этого отчета?   -  person rajcool111    schedule 16.12.2015


Ответы (1)


На веб-сайте документации SonarQube говорится, что jsTestDriver будет запускать модульные тесты javascript и копировать результаты в целевую папку в формате XML.

SonarQube не запускает ваши модульные тесты, он просто собирает отчеты, созданные в результате вашего ручного запуска или автоматического запуска других инструментов (например, Jenkins).

Из документа SonarQube:

Перед анализом SonarQube выполните модульные тесты, чтобы сгенерировать отчет XML. Поддерживаемый формат JUnit, подобный XML, генерируется js-test-driver.


Затем я вручную создал файл отчета в формате XML, как описано, но все равно не повезло.

Если вы создали вручную файлы отчетов, а отчеты по-прежнему не отображаются, проверьте свои пути, если все в порядке. Проверьте, действительно ли сонар считывает данные с пути C:/Sonar/sonar-runner-dist-2.4/sonar-runner-2.4/projects/

person hrskrs    schedule 16.12.2015
comment
Я проверил путь и его правильный. Но все равно не повезло. - person rajcool111; 16.12.2015
comment
Мне не хватает каких-либо плагинов? Какой плагин понадобится для чтения этого отчета? - person rajcool111; 16.12.2015
comment
проверьте, находится ли sonar-project.properties в корневом пути вашего проекта - person hrskrs; 16.12.2015
comment
Да .. это есть. В противном случае анализ не работал бы. - person rajcool111; 16.12.2015
comment
Затем проверьте, соответствует ли QualityProfiles вашим требованиям. - person hrskrs; 17.12.2015
comment
Как QualityProfiles может помочь в отображении модульных тестов / покрытия кода? Мне нужно добавить какие-то настройки? - person rajcool111; 17.12.2015
comment
Это не помогает для покрытия Unit Test / Code, но помогает понять, что сонар настроен правильно (показывая детали статического анализа) - person hrskrs; 18.12.2015