Как сделать так, чтобы jmunit запускал все тесты и по-прежнему не выполнялся в конце, если какой-либо тест не удался - PullRequest
2 голосов
/ 11 мая 2011

Когда я выключаю haltonfailure или haltonerror в моих тестах jmunit, как это:

<jmunit haltonerror="false" haltonfailure="false" failureproperty="testfailure">
    <formatter type="xml" />
    <classpath>
        <path path="${jar_location}" />
        <path path="${build}" />
    </classpath>
    <!-- Add  -->
    <test name="com.example.tests.Test1" todir="${reports}" />
    <test name="com.example.tests.Test2" todir="${reports}" />
    <test name="com.example.tests.Etc" todir="${reports}" />
</jmunit >

Сборка завершается успешно, даже если некоторые тесты не пройдены. Если я включаю остановку, то, конечно, она останавливается сразу после первого сбоя. Я хочу, чтобы все тесты выполнялись независимо от того, сколько из них провалилось, но если ЛЮБОЙ из них не удался, то сборка не будет успешной. Причина, по которой я этого хочу, заключается в том, чтобы в отчетах можно было правильно указать, сколько пройдено и не выполнено, а также какие тесты не пройдены.

Как мне этого добиться? и / или Неужели я думаю, что хочу, чтобы все тесты были выполнены некорректно?

1 Ответ

2 голосов
/ 11 мая 2011

Easy peasy:

Вам необходимо добавить команду

<fail message="Something went wrong. Please check the test results." if="testfailure" />

к цели, содержащей вашу команду jmunit, после самой команды jmunit.

Таким образом,Задача jmunit установит переменную testfailure в случае сбоя одного из тестов, а команда fail сделает сборку неудачной, если задано это свойство.

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

...