package com.aventstack.extentreports.view.extenthtml; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.select.Elements; import org.testng.Assert; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; import com.aventstack.extentreports.Base; import com.aventstack.extentreports.ExtentTest; import com.aventstack.extentreports.Status; import com.aventstack.extentreports.utils.Reader; public class TestMarkupTest extends Base { final String testName = getClass().getName(); ExtentTest test; Elements htmlTest; @BeforeClass public void beforeClass() { test = extent.createTest(testName); test.pass(testName); extent.flush(); String html = Reader.readAllText(htmlFilePath); Document doc = Jsoup.parse(html); htmlTest = doc.select("#test-collection .test"); } @Test public void validatesTestsCountView() { int testCount = htmlTest.size(); Assert.assertEquals(1, testCount); } @Test public void validatesTestIDView() { String testId = htmlTest.attr("test-id"); Assert.assertEquals(String.valueOf(test.getModel().getID()), testId); } @Test public void validatesTestStatusView() { String status = htmlTest.attr("status"); Assert.assertEquals(String.valueOf(test.getStatus()).toLowerCase(), status); } @Test public void validatesIfBdd() { boolean isBdd = Boolean.valueOf(htmlTest.attr("bdd")); Assert.assertEquals(false, isBdd); } @Test public void validatesTestNameView() { String testName = htmlTest.select(".test-name").first().html(); Assert.assertEquals(this.testName, testName); } @Test public void validatesLogSizeView() { Elements log = htmlTest.select(".log"); int logSize = log.size(); Assert.assertEquals(1, logSize); } @Test public void validatesLogStatusView() { Elements log = htmlTest.select(".log"); String logStatus = log.first().select(".status").first().className(); Status logStatusStatus = test.getModel().getLogContext().get(0).getStatus(); Assert.assertTrue(logStatus.indexOf(logStatusStatus.toString().toLowerCase()) > 0); } }