3

我在 Jmeter 中生成仪表板报告时遇到问题(通过命令行) 1)将报告生成器属性复制到用户属性文件 2)重新启动 Jmeter 以获取数据 3)在用户属性文件中添加以下内容:

jmeter.save.saveservice.bytes=true
jmeter.save.saveservice.label=true
jmeter.save.saveservice.latency=true
jmeter.save.saveservice.response_code=true
jmeter.save.saveservice.response_message=true
jmeter.save.saveservice.successful=true
jmeter.save.saveservice.thread_counts=true
jmeter.save.saveservice.thread_name=true
jmeter.save.saveservice.time=true
jmeter.save.saveservice.timestamp_format=ms
jmeter.save.saveservice.timestamp_format=yyyy/MM/dd HH:mm:ss

我觉得主要问题是与我拥有的 CSV 文件/JTL 文件不匹配并尝试创建报告。– 给我你的建议

错误 | 发生错误:org.apache.jmeter.report.dashboard.GenerationException:处理样本时出错:预期列数:16 与 CSV 文件中的列数不匹配:6,请检查您的 jmeter.save.saveservice.* 配置。 apache.jmeter.report.dashboard.ReportGeenter code heresun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 的 sun.reflect.NativeMethodAccessorImpl.invoke 的 org.apache.jmeter.JMeter.start(JMeter.java:517) 的 nerator.generate(ReportGenerator.java:246) (Unknown Source ) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.jmeter.NewDriver.main(NewDriver.java:248) 原因:org.apache .jmeter.report.core.SampleException:预期列数:16 与 CSV 文件中的列数:6 不匹配,请检查您的

jmeter.save.saveservice.* configuration
        at org.apache.jmeter.report.core.CsvSampleReader.nextSample(CsvSampleReader.java:183)
        at org.apache.jmeter.report.core.CsvSampleReader.readSample(CsvSampleReader.java:201)
        at org.apache.jmeter.report.processor.CsvFileSampleSource.produce(CsvFileSampleSource.java:180)
        at org.apache.jmeter.report.processor.CsvFileSampleSource.run(CsvFileSampleSource.java:238)
        at org.apache.jmeter.report.dashboard.ReportGenerator.generate(ReportGenerator.java:244)
        ... 6 more
An error occurred: Error while processing samples:Mismatch between expected number of columns:16 and columns in CSV file:6, check your jmeter.save.saveservice.* configuration
errorlevel=1
4

2 回答 2

0

我犯了同样的错误。只需忘记这些属性并仅在 user.properties 文件中复制以下内容:

jmeter.reportgenerator.overall_granularity=60000 jmeter.reportgenerator.apdex_statisfied_threshold=1500 jmeter.reportgenerator.apdex_tolerated_threshold=3000 jmeter.reportgenerator.exporter.html.series_filter=((^s0)|(^s1))(-成功|-失败)?jmeter.reportgenerator.exporter.html.filters_only_sample_series=true

然后从命令行运行:

.\jmeter -n -t sample_jmeter_test.jmx -l test.csv -e -o tmp

在哪里:

.\jmeter - you run the jmeter in \bin directory

sample_jmeter_test.jmx - name of the test that will be run, located in \bin directory

test.csv - located again in the \bin directory, this is the file that all gathered statistics will be written into

tmp is the directory where I create under \bin where the dashboard files will be saved
于 2018-04-13T13:40:44.257 回答
0

文件 csv 或 jtl 可能仍在写入中,因此 jmeter 进程报告尝试读取文件,同时将另一个字段和行添加到同一文件中。事实上,我通过在同一个 jtl 文件上手动运行报告生成命令来解决错误:

jmeter -g <file csv or jtl> -o <path report>

运行加载过程和报告过程后可能会配置延迟,但我不知道是否存在此选项。

于 2021-05-25T16:23:46.833 回答