Аттач текста#

package org.my.pack;

import ru.tinkoff.qa.neptune.core.api.event.firing.captors.StringCaptor;

public class MyTextCaptor<T> extends StringCaptor< //<- нужно унаследовать данный класс
    T //тип объекта, который может быть превращен в текст
    > {

    @Override
    public T getCaptured(Object toBeCaptured) {
        return // Возвращает объект, с помощью которого формируется текст
        // если такой объект нельзя получить, метод должен возвращать null
    }

    @Override
    public StringBuilder getData(T caught) {
        return // возвращает текст,
        // если такой объект нельзя получить, метод должен возвращать null
    }
}
package org.my.pack;

import ru.tinkoff.qa.neptune.core.api.event.firing.captors.CapturedStringInjector;

//Данная реализация интерфейса будет использована автоматически
public class MyTextInjector implements CapturedStringInjector {

    @Override
    public void inject(StringBuilder toBeInjected, String message) {
        //логика прикрепления картинки к отчету / логу
    }
}

Либо можно воспользоваться следующими готовыми классами:

  • ArrayCaptor - добавляет текстовый аттач, сформированный из массива

  • CollectionCaptor - добавляет текстовый аттач, сформированный из коллекции

  • MapCaptor - добавляет текстовый аттач, сформированный из java.util.Map