Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Hudson и Delphi 2010: Настройка xUnit для корректного отображения сообщений об ошибках DUnit

Delphi , Файловая система , DLL и PlugIns

В данной статье мы рассмотрим проблему, с которой сталкиваются разработчики, использующие систему непрерывной интеграции Hudson для проектов на Delphi 2010. Проблема заключается в том, что при использовании модуля XMLTestRunner.pas для записи результатов тестирования DUnit в XML-файл, который затем анализируется плагином xUnit Hudson, сообщения об ошибках не отображаются.

Описание проблемы

При использовании Hudson в качестве сервера непрерывной интеграции для проектов Delphi 2010, результаты тестирования DUnit записываются в XML-файл, который предназначен для использования плагином xUnit Hudson. Однако, несмотря на то, что плагин корректно отображает информацию о сбоях, сообщения, связанные с этими сбоями, не отображаются. В настройках проекта Hudson в разделе "Publish testing tools result report" выбрана опция "NUnit-Version N/A (default)", так как опции для DUnit в списке нет, и формат XML-файлов похож на формат NUnit.

Пример XML-файла с результатами тестирования:

<?xml version="1.0" encoding="ISO-8859-1" standalone="yes" ?>
<test-results total="123" notrun="0" date="20.12.2010" time="09:19:24">
    <test-suite name="HelloWorldTestSuite" total="46" notrun="0">
    <results>
        <test-case name="TestCase.HelloWorldTest" execute="True" success="False" time="0,003" result="Failure">
            <failure name="ETestFailure" location=""/>
            <message>expected: &lt; hello world! &gt; but was: &lt; hallo welt &gt;</message>
        </test-case>
        ...
    </results>
    ...
</test-results>

Также в настройках Hudson доступна опция "Custom Tool", где можно указать "Custom stylesheet", но отсутствует информация о том, как создать такой файл стилей.

Подтвержденное решение

Для решения проблемы необходимо изменить структуру XML-файла, чтобы она соответствовала ожиданиям Hudson. Пример правильной структуры XML-файла:

<testcase name="GetFreeDirNameTest" classname="Test.exe.MyFiles.TTests" result="failed" time="0.000">
  <failure message="Expected:
        &quot;-1&quot;
        But was:
        &quot;0&quot;" type="failed">GetFreeDirNameTest: Expected:
        &quot;-1&quot;
        But was:
        &quot;0&quot;
  </failure>
</testcase>

Изменения следует внести в модуль XMLTestRunner.pas, который находится в папке с исходным кодом Delphi.

Альтернативное решение

В качестве альтернативного решения можно рассмотреть использование XMLTestRunner для NUnit совместимого вывода от DUnit, что позволит избежать необходимости вручную изменять структуру XML-файлов.

Заключение

Для корректного отображения сообщений об ошибках DUnit в Hudson, необходимо настроить вывод XML-файлов таким образом, чтобы он соответствовал требованиям плагина xUnit. Это может потребовать изменение исходного кода модуля XMLTestRunner.pas. Альтернативой может служить использование специализированных решений, таких как XMLTestRunner для NUnit совместимого вывода.

Примеры кода, приведенные в этой статье, демонстрируют изменения, которые необходимо внести в структуру XML-файла. Разработчикам, не знакомым с внутренним устройством модуля XMLTestRunner.pas, рекомендуется обратиться к документации и сообществу Delphi для получения дополнительной информации и поддержки.

Создано по материалам из источника по ссылке.

Разработчики, использующие Hudson для непрерывной интеграции проектов на Delphi 2010, сталкиваются с проблемой корректного отображения сообщений об ошибках DUnit из-за несоответствия формата XML-файлов, созданных модулем `XMLTestRunner.pas`, требованиям


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: DLL и PlugIns ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-02-05 10:54:16/0.0033929347991943/0