Что может вызвать исключение java.io.FIleNotFoundException (доступ запрещен)? - PullRequest
0 голосов
/ 26 марта 2019

Я пытаюсь сохранить отчет об экстентах в папку с документами. Я получаю доступ отказано в проблеме.

Я пытался предоставить полный контроль над Java через все группы пользователей. Я также дал полный контроль над реактивными мозгами, но доступ к нему по-прежнему запрещен.

Здесь я пытаюсь сохранить файл.

    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 голосов
/ 26 марта 2019

Я думаю, что между именем папки и именем файла нет разделителя пути, попробуйте добавить разделитель пути при создании объекта ExtentHtmlReporter

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

Старайтесь не оставлять пробелы в имени файла, это поможет вам в будущем

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

        return extent;
    }

0 голосов
/ 26 марта 2019

У меня была эта проблема, когда я генерировал файл XML, попробуйте это: ExtentHtmlReporter htmlReporter = new ExtentHtmlReporter ("C: //Users//tom.cockram//Documents//ExtentReport");

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...