t.me/atinfo_chat Telegram группа по автоматизации тестирования

Как в Allure подсунуть свой AllureTestListener ?

Теги: #<Tag:0x00007f9b0267d488> #<Tag:0x00007f9b0267d348>

хочу в AllureTestListener переписать 2 метода (название сюта и название теста) - как подсунуть свой лисенер в репорт ? использую TestNG для test run-а


Согласно етому прописал свой лисенер в surefire-plugin - не работает

использую mvn site для генерации через мавен плагин и также Jenkins plugin allure

Может как то сюда впихнуть можно ?

Этот вики - древючий. На него не стоит ориентироваться. Если нужно что-то дописать / переписать, то можно просто пересобрать testng adaptor. Там всего 1 класс.

Ну и к слову, нет особого смысла сейчас это делать, ибо новый адаптер 2й версии уже почти готов.

куда его впихнуть ? ето listener ?

оно ?

Да, его можно модифицировать и пересобрать.

ну я его extend-нулся от него и подключил в лисенери surefire plugin-a , не работает

2 раза ж уже повторил: eго не экстендить надо, а пересобирать, и подключать в качестве новой зависимости. Ваш слушатель будет срабатывать позже алюровского. И он по факту ничего не будет переопределять. Они будут работать вместе.

омг, то геморой, то отдельное депенденси нужно сиборать типа…

ну как вариант можно сделать свой класс лисснер, заоверрайдить там то что требуется и подключить к аллюру при инициализации фреймворка.
например так: (TestNG)

@BeforeSuite(alwaysRun = true)
public void setUp() {
Allure.LIFECYCLE.addListener(AllureStepListener.getInstance());
}

В данном случае я просто делаю что то еще в начале степа:

public class AllureStepListener extends LifecycleListener {
private static AllureStepListener instance;
public static synchronized AllureStepListener getInstance() {
if (instance == null) {
instance = new AllureStepListener();
}
return instance;
}

@Override
public void fire(StepStartedEvent event) {
    String stepName = " ";
    try {
        stepName = event.getTitle();
        "что то интересное"
    } catch (Exception e) {
        e.getMessage();
    } finally {
        "что то полезное"
    }
}

}