Сонар: история выполнения одного теста
TXTFIT = время выполнения теста для отдельного теста
Привет,
Я использую Sonar для анализа моего проекта Maven Java. Я тестирую с помощью JUnit и генерирую отчеты о времени выполнения теста с помощью плагина Maven Surefire.
В моем сонаре я вижу время выполнения теста и детализацию, чтобы увидеть, сколько времени занял каждый отдельный тест. В машине времени я могу сравнивать только общее время выполнения теста между двумя выпусками.
Я хочу увидеть, как TXTFIT изменился по сравнению с последней версией.
Например:
В версии 1.0 моего программного обеспечения htmlParserTest() занимает 1 секунду для завершения. В версии 1.1 я добавляю целую кучу тестов (поэтому общее время выполнения будет намного больше), но htmlParserTest() неожиданно занимает 2 сек, я хочу получать уведомление "Эй, приятель, htmlParserTest() занимает вдвое больше времени как раньше. Вы должны взглянуть на это ".
Что я сейчас пытаюсь выяснить:
- Как именно TXTFIT попадает из верного XML-отчета в сонар?
В настоящее время я смотрю на AbstractSurefireParser.java, но я не уверен, действительно ли это плагин по умолчанию.
Я искал 5-летний материал. Я сейчас проверяю это. До сих пор не знаю, откуда Sonar получает TXTFIT и как или где он подключает его к исходным файлам. - Могу ли я найти TXTFIT в базе данных сонара?
Я смотрю на локальную БД из моего тестового сонара с DBVisualizer, и я не знаю, где искать. SNAPSHOT_DATA, похоже, не читается людьми. - TXTFIT даже сохраняются в БД?
В зависимости от этого я должен написать датчик, который на самом деле сохраняет их или виджет, который просто показывает их на панели инструментов
Любая помощь очень ценится!
1 ответ
Веб-сервис api/tests/*, представленный в версии 5.2, позволяет получить эту информацию. Пример: http://nemo.sonarqube.org/api/tests/list?testFileUuid=8e3347d5-8b17-45ac-a6b0-45df2b54cd3c