В коде тестов использую Reporter.log() для информативности стандартных отчетов. Подключив Allure данного вывода не увидел.
Его возможно подключить?
См. скриншот:
В коде тестов использую Reporter.log() для информативности стандартных отчетов. Подключив Allure данного вывода не увидел.
Его возможно подключить?
См. скриншот:
Разобрался, реализовал через @Attachment
Attachment получаю в методе afterInvocation листенера IInvokedMethodListener2
А у вас отовсюду эти вложения (@Attachment) подкладываются? А то у меня на проекте они только из одного модуля подкладываются, а от наследованного класса с переопределенным методом - не работает. Чую, что дело в каких-то листенерах и мавене, но пока не докопался до истины.
Вроде отовсюду, у меня так сделано:
UPD:
Добавил в Base тестовый метод и переопределил его в одном из наследников - сработало нормально, аттачмент прикрепился.
У меня фреймворк с другого проекта, через мавен зацеплен в External Libraries, также как и Allure.
Если я даже в отнаследованном классе вызываю базовый метод, который в External Libraries, то отчет подкадывается и все хорошо. А вот если переопределяю в этом классе метод этот или делаю другой, с дополнительными параметрами, то уже не подкладывается. Ну, или из любого своего другого метода если буду просто вызывать @Attachment, то он тоже не сработает. При этом в базовом классе вообще не увидел отсылок к листенерам, только импорт
> import ru.yandex.qatools.allure.annotations.Attachment;
Я бы сделал не так, а вот как-то так. Создал бы allure logger:
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import ru.yandex.qatools.allure.annotations.Step;
public class AllureLogger {
private static final Logger logger = LogManager.getLogger(AllureLogger.class);
@Step("{0}")
public static void logToAllure(String log) {
logger.debug("Logged to allure: " + log);
}
}
и в тесте бы добавлял вот такое:
AllureLogger.logToAllure("Отправляем HELLO");
выглядело бы это как-то так:
Тогда можно было бы управлять и не писать что попало в аттачменты. Только прикрутить твой репортер, а не org.apache.logging.log4j.LogManager;
Если этот респонс - отдельный метод, то сделать их как @Step()
Да, так намного лучше. Спасибо!