Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 未使用以下代码生成Extent4.0报告_Java_Selenium_Extentreports - Fatal编程技术网

Java 未使用以下代码生成Extent4.0报告

Java 未使用以下代码生成Extent4.0报告,java,selenium,extentreports,Java,Selenium,Extentreports,我是Java和Selenium编程新手,有一项重要任务需要尽快完成。我正在使用页面对象模型框架并尝试生成扩展报告。未使用以下代码生成Extent4.0报告。代码运行良好,TestNg报告生成良好。请帮忙 package testcases; import org.testng.annotations.AfterMethod; import org.testng.annotations.BeforeMethod; import org.testng.annotations.BeforeSu

我是Java和Selenium编程新手,有一项重要任务需要尽快完成。我正在使用页面对象模型框架并尝试生成扩展报告。未使用以下代码生成Extent4.0报告。代码运行良好,TestNg报告生成良好。请帮忙

package testcases;    
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.Test;
import com.aventstack.extentreports.ExtentReports;
import com.aventstack.extentreports.ExtentTest;
import com.aventstack.extentreports.reporter.ExtentHtmlReporter;
import com.aventstack.extentreports.reporter.configuration.Theme;
import base.CommonMethods;
import pages.HomePage;

public class BaseTest extends CommonMethods {
    public ExtentHtmlReporter htmlReporter;
    public ExtentReports extent;
    public ExtentTest logger;

    @BeforeSuite
    public void startReport() {
        htmlReporter = new ExtentHtmlReporter(
                System.getProperty("user.dir") + "/test-output/Ruchita/STMExtentReport.html");
        extent = new ExtentReports();
        extent.attachReporter(htmlReporter);
        extent.setSystemInfo("OS", "Windows");
        extent.setSystemInfo("Environment", "QA");
        extent.setSystemInfo("User Name", "Ruchita");
        htmlReporter.config().setDocumentTitle("Automation Report");
        // Name of the report
        htmlReporter.config().setReportName("Functional Tests ");
        // Dark Theme
        htmlReporter.config().setTheme(Theme.DARK);
    }
    @BeforeMethod
    public void setup() {
        instatiateBrowser();
    }
    @AfterMethod
    public void tearDown() {
        extent.flush();
        driver.quit();

    }

    @Test(priority = 1)
    public void validateHomePageTitleTest() {
        // log.info("******************Starting
        // validateHomePageTitleTest****************" );
        HomePage homePage = new HomePage();
        homePage.validateHomePageTitle();
    }
    @Test(priority = 2)
    public void ValidateLogoImageTest() {
        // log.info("******************Starting
        // ValidateLogoImageTest*******************" );
        HomePage homePage = new HomePage();
        homePage.ValidateLogoImage();
    }
}

我知道在某些版本中,它被更改为此

试着改变路线

       ExtentHtmlReporter htmlReporter = new ExtentHtmlReporter("*YourName*");


我已经修改了你的代码如下。它现在应该生成报告了。如果您仍然面临这些问题,请在评论中发表意见,并将为您提供帮助

package testcases;
import com.aventstack.extentreports.Status;
import com.aventstack.extentreports.markuputils.ExtentColor;
import com.aventstack.extentreports.markuputils.MarkupHelper;
import org.openqa.selenium.WebDriver;
import org.testng.Assert;
import org.testng.ITestResult;
import org.testng.annotations.*;
import com.aventstack.extentreports.ExtentReports;
import com.aventstack.extentreports.ExtentTest;
import com.aventstack.extentreports.reporter.ExtentHtmlReporter;
import com.aventstack.extentreports.reporter.configuration.Theme;

public class BasePage {
    public ExtentHtmlReporter htmlReporter;
    public ExtentReports extent;
    public ExtentTest logger;

    WebDriver driver;

    @BeforeSuite
    public void startReport() {
        htmlReporter = new ExtentHtmlReporter(
                System.getProperty("user.dir") +"/test-output/testReport.html");
        extent = new ExtentReports();
        extent.attachReporter(htmlReporter);
        extent.setSystemInfo("OS", "Windows");
        extent.setSystemInfo("Environment", "QA");
        extent.setSystemInfo("User Name", "Ruchita");
        htmlReporter.config().setDocumentTitle("Automation Report");
        // Name of the report
        htmlReporter.config().setReportName("Functional Tests ");
        // Dark Theme
        htmlReporter.config().setTheme(Theme.DARK);
    }
    @BeforeMethod
    public void setup() {
        //instatiateBrowser();
    }
    @AfterMethod
    public void getResult(ITestResult result) {

        if(result.getStatus() == ITestResult.FAILURE) {
            logger.log(Status.FAIL, MarkupHelper.createLabel(result.getName() + " is Failed", ExtentColor.RED));
            logger.fail(result.getThrowable());
        }
        else if(result.getStatus() == ITestResult.SUCCESS) {
            logger.log(Status.PASS, MarkupHelper.createLabel(result.getName()+" is Passed", ExtentColor.GREEN));
        }
        else {
            logger.log(Status.SKIP, MarkupHelper.createLabel(result.getName()+" is Failed", ExtentColor.ORANGE));
            logger.skip(result.getThrowable());
        }
    }

    @Test(priority = 1)
    public void validateHomePageTitleTest() {
        logger = extent.createTest("Validate Home Page Title", "Validate Home Page");
        Assert.assertTrue(true);
        logger.log(Status.PASS, "sample test for passed");
    }
    @Test(priority = 2)
    public void ValidateLogoImageTest() {
        logger = extent.createTest("Validate Logo Image ", "Validate Logo Image Test");
        Assert.assertTrue(false);
    }

    @AfterTest
    public void TearDown() {
        extent.flush();
    }
}
报告截图:

package testcases;
import com.aventstack.extentreports.Status;
import com.aventstack.extentreports.markuputils.ExtentColor;
import com.aventstack.extentreports.markuputils.MarkupHelper;
import org.openqa.selenium.WebDriver;
import org.testng.Assert;
import org.testng.ITestResult;
import org.testng.annotations.*;
import com.aventstack.extentreports.ExtentReports;
import com.aventstack.extentreports.ExtentTest;
import com.aventstack.extentreports.reporter.ExtentHtmlReporter;
import com.aventstack.extentreports.reporter.configuration.Theme;

public class BasePage {
    public ExtentHtmlReporter htmlReporter;
    public ExtentReports extent;
    public ExtentTest logger;

    WebDriver driver;

    @BeforeSuite
    public void startReport() {
        htmlReporter = new ExtentHtmlReporter(
                System.getProperty("user.dir") +"/test-output/testReport.html");
        extent = new ExtentReports();
        extent.attachReporter(htmlReporter);
        extent.setSystemInfo("OS", "Windows");
        extent.setSystemInfo("Environment", "QA");
        extent.setSystemInfo("User Name", "Ruchita");
        htmlReporter.config().setDocumentTitle("Automation Report");
        // Name of the report
        htmlReporter.config().setReportName("Functional Tests ");
        // Dark Theme
        htmlReporter.config().setTheme(Theme.DARK);
    }
    @BeforeMethod
    public void setup() {
        //instatiateBrowser();
    }
    @AfterMethod
    public void getResult(ITestResult result) {

        if(result.getStatus() == ITestResult.FAILURE) {
            logger.log(Status.FAIL, MarkupHelper.createLabel(result.getName() + " is Failed", ExtentColor.RED));
            logger.fail(result.getThrowable());
        }
        else if(result.getStatus() == ITestResult.SUCCESS) {
            logger.log(Status.PASS, MarkupHelper.createLabel(result.getName()+" is Passed", ExtentColor.GREEN));
        }
        else {
            logger.log(Status.SKIP, MarkupHelper.createLabel(result.getName()+" is Failed", ExtentColor.ORANGE));
            logger.skip(result.getThrowable());
        }
    }

    @Test(priority = 1)
    public void validateHomePageTitleTest() {
        logger = extent.createTest("Validate Home Page Title", "Validate Home Page");
        Assert.assertTrue(true);
        logger.log(Status.PASS, "sample test for passed");
    }
    @Test(priority = 2)
    public void ValidateLogoImageTest() {
        logger = extent.createTest("Validate Logo Image ", "Validate Logo Image Test");
        Assert.assertTrue(false);
    }

    @AfterTest
    public void TearDown() {
        extent.flush();
    }
}