Сонар: история выполнения одного теста

TXTFIT = время выполнения теста для отдельного теста

Привет,

Я использую Sonar для анализа моего проекта Maven Java. Я тестирую с помощью JUnit и генерирую отчеты о времени выполнения теста с помощью плагина Maven Surefire.
В моем сонаре я вижу время выполнения теста и детализацию, чтобы увидеть, сколько времени занял каждый отдельный тест. В машине времени я могу сравнивать только общее время выполнения теста между двумя выпусками.
Я хочу увидеть, как TXTFIT изменился по сравнению с последней версией.
Например:
В версии 1.0 моего программного обеспечения htmlParserTest() занимает 1 секунду для завершения. В версии 1.1 я добавляю целую кучу тестов (поэтому общее время выполнения будет намного больше), но htmlParserTest() неожиданно занимает 2 сек, я хочу получать уведомление "Эй, приятель, htmlParserTest() занимает вдвое больше времени как раньше. Вы должны взглянуть на это ".

Что я сейчас пытаюсь выяснить:

  1. Как именно TXTFIT попадает из верного XML-отчета в сонар?
    В настоящее время я смотрю на AbstractSurefireParser.java, но я не уверен, действительно ли это плагин по умолчанию.
    Я искал 5-летний материал. Я сейчас проверяю это. До сих пор не знаю, откуда Sonar получает TXTFIT и как или где он подключает его к исходным файлам.
  2. Могу ли я найти TXTFIT в базе данных сонара?
    Я смотрю на локальную БД из моего тестового сонара с DBVisualizer, и я не знаю, где искать. SNAPSHOT_DATA, похоже, не читается людьми.
  3. TXTFIT даже сохраняются в БД?
    В зависимости от этого я должен написать датчик, который на самом деле сохраняет их или виджет, который просто показывает их на панели инструментов

Любая помощь очень ценится!

1 ответ

Решение

Веб-сервис api/tests/*, представленный в версии 5.2, позволяет получить эту информацию. Пример: http://nemo.sonarqube.org/api/tests/list?testFileUuid=8e3347d5-8b17-45ac-a6b0-45df2b54cd3c

Другие вопросы по тегам