Невозможно сгенерировать отчет jmeter html из кода java - PullRequest
0 голосов
/ 07 апреля 2020

При попытке создать отчет html с использованием кода java я вижу только статистику. json сгенерировано, но отчетов html нет.

Мой Java Код -

ResultCollector logger = new ResultCollector(summer);
logger.setFilename(csvFile);
testPlanTree.add(testPlanTree.getArray()[0], logger);

//run
StandardJMeterEngine jMeterEngine = new StandardJMeterEngine();
jMeterEngine.configure(testPlanTree);
jMeterEngine.run();

//Report Generator
ReportGenerator rg = new ReportGenerator(csvFile, null);
rg.generate();

В моем reportgenerator.properties у меня есть следующие записи (только конечная часть)

jmeter.reportgenerator.exporter.html.classname=org.apache.jmeter.report.dashboard.HtmlTemplateExporter
jmeter.reportgenerator.exporter.html.property.template_dir=report-template
jmeter.reportgenerator.exporter.json.classname=org.apache.jmeter.report.dashboard.JsonExporter
jmeter.reportgenerator.exporter.json.property.output_dir=report-output

Я проверил, что CSV-файл создан и содержит действительные данные, потому что я попытался сгенерировать отчет html из командной строки jmeter, используя тот же CSV, и это сработало.

После выполнения мой код java создает только статистические данные. Файл json, но отчеты html не создаются. В журналах нет ошибок (только несколько предупреждений, касающихся некоторых свойств, которые не установлены и используются по умолчанию).

Редактировать Я устанавливаю свойство JMeter jmeter.reportgenerator.outputdir в java код -

properties.put(org.apache.jmeter.JMeter.JMETER_REPORT_OUTPUT_DIR_PROPERTY, "report-path");


Выходные журналы -

   Creating statistics for overall
    Creating statistics for other transactions
    Checking output folder
    Writing statistics JSON to path\to\dir\statistics.json
    Exporting data using exporter:'html' of 
 className:'org.apache.jmeter.report.dashboard.HtmlTemplateExporter'
    Will generate dashboard in folder: path\to\dir

В журналах написано «создаст панель управления в папке», но html не генерируется.
Есть идеи, чего мне не хватает?

1 Ответ

1 голос
/ 07 апреля 2020

Вы упускаете очень очевидную вещь: местоположение сгенерированной HTML панели отчетов

Вам необходимо установить jmeter.reportgenerator.outputdir JMeter Property и укажите полный путь к панели мониторинга в качестве значения, чтобы до инициализации ReportGenerator добавить следующую строку:

JMeterUtils.setProperty(org.apache.jmeter.JMeter.JMETER_REPORT_OUTPUT_DIR_PROPERTY, "/full/path/to/the/dashboard/folder");

Дополнительная информация: Пять способов запустить тест JMeter без использования JMeter GUI

...