Как получить и использовать неудавшийся или последний выполненный тестовый случай в сборке junit ant - PullRequest
0 голосов
/ 10 января 2019

У меня есть junit с набором тестов вроде:

public class Test_Job1{
    @Test
    public void test1(){}
    @Test
    public void test2(){}
}

public class Test_Job2{
    @Test
    public void test1(){}
    @Test
    public void test2(){}
}

@RunWith(Suite.class)
@SuiteClasses({Test_Job1.class, Test_Job2.class})
public class AllTests {}

И муравейник:

<target name="junit" depends="build">
    <junit dir="${test.bin}">
        <test name="AllTests" failureproperty="test.failed"/>
    </junit>
</target>

<target name="fail-report" if="test.failed">
    <java classname="ReportGenerator">
    </java>
</target>

<target name="test" depends="junit, fail-report" />

Выход на консоль:

[junit] Testcase: test1(Test_Job2): FAILED
[junit] iterable contents differ at index [63], expected: <Var1=111> but was: <Var1=222> //using assertIterableEquals
[junit] junit.framework.AssertionFailedError: iterable contents differ at index [63], expected: <Var1=111> but was: <Var1=222>
[junit]     at Test_Job2.test1(Test_Job2.java:33)
[junit] Test AllTests FAILED

В target 'fail-report' Я создаю собственный настраиваемый отчет csv для анализа сбоя, вызывая 'ReportGenerator' class.

Как и в консоли, Test_Job2.test1 не удалось, поэтому я хочу создать собственный файл отчета csv (реализован) только для этого теста.

Как перехватить имя / идентификатор из неудачный / последний выполненный Testcase (например: test1 (Test_Job2) ) в junit, чтобы я мог пройти это как аргумент или вызов определенного класса / метода как ReportGenerator ?

У меня есть свобода изменить что-либо в тестовом проекте (junit) соответственно.

Пожалуйста, помогите мне в том же. Заранее спасибо.!

...