是什么原因导致java.io.FIleNotFoundException(访问被拒绝)?

时间:2019-03-26 11:14:00

标签: java extentreports

我正在尝试将范围报告保存到我的文档文件夹中。我正在访问被拒绝的问题。

我尝试过通过所有用户组完全控制java。我也给了Jetbrains完全控制权,但仍然无法访问。

这是我尝试保存文件的位置。

    public void beforeSuite() {
        extent = ExtentManager.createInstance("MobileCustomerCare_" + fileName + ".html");
        ExtentHtmlReporter htmlReporter = new ExtentHtmlReporter(System.getProperty("user.home") + "//Documents/ExtentReport//");

        extent.attachReporter(htmlReporter);

我已经添加了创建实例的ExtentManager类

public class ExtentManager {

    private static ExtentReports extent;
    private static String fileName = new SimpleDateFormat("yyyy-MM-dd-HH-mm").format(new Date());


    static ExtentReports createInstance(String fileName) {
        ExtentHtmlReporter htmlReporter = new ExtentHtmlReporter(fileName);
        htmlReporter.config().setTestViewChartLocation(ChartLocation.BOTTOM);
        htmlReporter.config().setChartVisibilityOnOpen(true);
        htmlReporter.config().setTheme(Theme.DARK);
        htmlReporter.config().setDocumentTitle(fileName);
        htmlReporter.config().setEncoding("utf-8");
        htmlReporter.config().setReportName(fileName);

        extent = new ExtentReports();
        extent.attachReporter(htmlReporter);

        return extent;
    }
}

编辑:我现在已更改为使用ExtentHtmlReporter htmlReporter = new ExtentHtmlReporter(System.getProperty("user.home") + "//Documents/ExtentReport//");,但仍然可以访问(访问被拒绝)

我希望它可以将文件保存在指定的位置。它实际上正在做的就是将其保存在我的项目中。

2 个答案:

答案 0 :(得分:0)

我认为文件夹名和文件名之间没有路径分隔符,请在创建ExtentHtmlReporter对象时尝试添加路径分隔符

ExtentHtmlReporter htmlReporter = new ExtentHtmlReporter("C:\\Users\\tom.cockram\\Documents\\ExtentReport\\");

尽量不要在文件名中保留空格,这将对以后有所帮助

public static ExtentReports getInstance() {
    if (extent == null)
        createInstance("MobileCustomerCare_" + fileName + ".html");

        return extent;
    }

答案 1 :(得分:-1)

我生成XML文件时遇到了这个问题 尝试这个 : ExtentHtmlReporter htmlReporter = new ExtentHtmlReporter(“ C://Users//tom.cockram//Documents//ExtentReport”);

相关问题