Не работает TmsLink в Allure Report и второй вопрос по Listener

Привет, подскажите в тестах указал @TmsLink(“1”) , в allure указал путь

. Когда проходят тесты, номер кейса 1 ведет на http://localhost:8080/job/test15/allure/

И второй вопрос, по Listener:
SelenideLogger.addListener("AllureSelenide", new AllureSelenide().screenshots(true).savePageSource(false));

Куда его вставлять?В @BeforeTest, в клас с драйвером?

  1. Попробуйте такую проперти и формат ссылки:
    allure.link.tms.pattern=https://example.org/tms/{}

  2. Скорее всего в @BeforeSuite.

не помогло(

Версии какие вы используете аллюра, плагина? Обновите на свежие.

Смотрите, я проверил. Переменную allure.link.tms.pattern=https://example.org/tms/{} надо сетить перед запуском тестов. Есть 2 способа:

  1. Просто создаёте параметр для сборки и ставите Inject build variables.
  2. Указываете для maven-surefire-plugin
<systemPropertyVariables>                                     
             <allure.link.tms.pattern>https://lalalal/browse/tms/{}</allure.link.tms.pattern>                       
</systemPropertyVariables>

а в настройках Плагина Аллюр репорта оставьте пустыми эти поля.

1 лайк

Помогло.

Не совсем понял.

 @BeforeSuite void selenideLoger() {

        SelenideLogger.addListener("AllureSelenide",
            new AllureSelenide().screenshots(true).savePageSource(false));

    }

Создал BeforeSuite не помогло( Обновил allure-selenide, allure-testng , тоже не помогло.Скриншоты упавших тестов отстуствуют

А кто вам сказал, что он будет делать скрины когда упал тест?
Я думаю, что он делает скрины только степов или вызванных селенидовских методов.
Действия, что нужно делать перед тестом и после описываются в тестЛистенере для ТестНГ который.

Так зачем тогда этот SelenideLogger ?

Если честно - не в курсе зачем он.
Попробуйте в BeforeClass поставить.

1 лайк

Запихнул в @BeforeMethod в тестовом классе и заработало. Получается нужно будет добавлять в каждый тестовый класс.

Можно написать TestNg листенер, который перед всем сьютом добавит логгер для всех тестов

Есть опыт создания таких листенеров?

public class AllureListener implements ISuiteListener {

@Override
public void onStart(final ISuite suite) {
    SelenideLogger.addListener("AllureSelenide",
            new AllureSelenide().screenshots(true).savePageSource(false));
}

public void onFinish(ISuite suite) {
    
}

}

1 лайк

Уже заработало с @BeforeClass.
Спасибо)