Получение полезных писем от Хадсона вместо хвоста муравейника

Один из членов моей команды недавно установил несколько сборок Hudson с непрерывной интеграцией для ряда наших баз кода разработки. Он использует встроенную интеграцию с муравьями, настроенную просто.

Хотя это очень полезно, и я настоятельно рекомендую его, мне было интересно, как получить более сжатые / информативные / полезные электронные письма, а не просто хвост журнала сборки муравья.

E.G., Не хочу этого:

> [...truncated 36530 lines...]
>     [junit] Tests run: 32, Failures: 0, Errors: 0, Time elapsed: 0.002 sec
... (hundred of lines omitted) ...
>     [junit] Tests run: 10, Failures: 0, Errors: 0, Time elapsed: 0.001 sec
>     [junit] Tests FAILED
>
> BUILD FAILED

Я предполагаю, что могу пропустить встроенную поддержку ant и отправить журнал сборки через скрипт grep, но я надеялся, что есть более интегрированный или элегантный вариант.

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
0
983
1

Ответы 1

Я не знаю, делаете ли вы это уже, но я думаю, что следующий фрагмент задачи тестирования муравьев может вам помочь

<target name = "test" depends = "test.compile" description = "runs junit tests">

        <taskdef name = "junit"
            classname = "org.apache.tools.ant.taskdefs.optional.junit.JUnitTask"
            classpath = "${script.dir}/tools/ant-junit.jar"/>

        <junit haltonfailure = "no" printsummary = "on" fork = "yes">
            <classpath>
                 <path refid = "web.classpath.compile"/>
                 <pathelement location = "${test.build.dir.classes}"/>
                 <pathelement location = "${web.build.dir.classes}"/>
            </classpath>
            <formatter type = "brief" usefile = "false"/>
            <formatter type = "xml"/>
            <batchtest todir = "${script.dir}/test-results">
                <fileset dir = "${test.build.dir.src}"
                        includes = "**/*Test.java"/>
            </batchtest>
        </junit>
    </target>

В этой конфигурации вы создаете задачу «junit», реализуемую «org.apache.tools.ant.taskdefs.optional.junit.JUnitTask», которая может находиться в пакете ant-junit.jar.

После этого напрямую вызовите цель и установите средство форматирования xml.

Мы также используем Hudson, он просто отправляет URL-адрес недавно сбойной сборки, и оттуда мы можем получить доступ к результатам тестов, сгенерированным ранее описанной задачей, с трассировкой AssertionFailedError.

Надеюсь, это поможет.

Карлос

Я делаю то же самое, но мне также хотелось бы, чтобы ссылка на отчет о тестировании была отправлена ​​по электронной почте.

neves 20.08.2010 20:42

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