Я пытаюсь понять, как использовать слушателей, чтобы добавить их в мои тесты после каждого теста, отчеты будут генерироваться автоматически,
моя структура выглядит так:
структура
и где там красный, я хочу добавить слушателей,
мой класс extenetmanager выглядит так:
public class ExtentManager {
public ExtentReports extent;
public ExtentTest test;
public ExtentHtmlReporter htmlReporter;
public String reportDate;
public String filePath;
public void init() {
reportDate = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss").format(new Date());
filePath = ".\\reports\\OrangeHRM Report "+ reportDate;
htmlReporter = new ExtentHtmlReporter(filePath+"/report.html");
new File(filePath).mkdirs();
extent = new ExtentReports();
extent.attachReporter(htmlReporter);
htmlReporter.config().setDocumentTitle("automation report on OrangeHRM");
htmlReporter.config().setReportName("OrangeHRM Test");
htmlReporter.config().setEncoding("windows-1255");
}
public void create_test(String testName, String testDescription)
{
test = extent.createTest (testName, testDescription);
}
public String CaptureScreen() throws AWTException, IOException
{
String picDate = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss").format(new Date());
String imagePath = filePath+"/pic"+picDate+".jpg";
Robot robot = new Robot();
BufferedImage screenShot = robot.createScreenCapture(new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()));
ImageIO.write(screenShot, "jpg", new File(imagePath));
return imagePath;
}
}
и после этого в классе BaseTest я вызвал метод init (); чтобы запустить экстентReports, чем MainRunner расширяет BaseTest и там каждый тез помечается test.pass или test.fail - используя IF.
я хочу избежать этого и использовать слушателей, чтобы eacg test работал с assert, чтобы можно было пометить результат в слушателе, а не в отчете, так как это сделать?
также, какая разница в слушателях?