Jmeter 3.0 无法生成 ANT HTML 报告

Jmeter 3.0 can't generate the ANT HTML report

我的头发都快拔出来了,有人帮帮我..

我正在使用 JMeter 3.0 并尝试从我的 jtl 文件生成仪表板报告,但我收到错误 -

result.jtl' does not contain the field names header, ensure the jmeter.save.saveservice.* properties are the same as when the CSV file was created or the file may be read incorrectly

我的 user.properites 文件包含 -

jmeter.save.saveservice.output_format=csv
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
jmeter.save.saveservice.print_field_names=true

这些值在 jmeter.properties 文件中也是相同的,只是为了确保我没有丢失任何东西...

我真的不明白为什么我不能让 jtl 包含 headers,我已经按照我能找到的所有指南进行操作,而且我似乎做得对..

有人可以指出我所缺少的东西,或者包括他们的 jmeter 的压缩版本,我可以尝试将我的 ant 项目指向它吗?

希望有人能提供帮助。

仔细检查 build.xml 文件的 <jmeter> 部分。默认 JMeter Ant Task 假定 .jtl 结果文件的 XML 输出格式,因此如果您有以下行:

<property name="jmeter.save.saveservice.output_format" value="xml"/>

只需将其注释掉或删除,您的问题就会得到解决。

我认为 JMeter Ant Task 不支持通过 user.properties 文件覆盖,最好使用 jmeterproperties 属性或者在 Ant 构建文件中明确指定相关配置,如:

<target name="test">
    <jmeter
        jmeterhome="${jmeter.home}"
        testplan ="${testpath}/${test}.jmx"
        resultlog="${testpath}/${test}.jtl">

        <property name="jmeter.save.saveservice.output_format" value="csv"/>
        <property name="jmeter.save.saveservice.print_field_names" value="true"/>
        <property name="jmeter.save.saveservice.timestamp_format" value="ms"/>
        <!--etc.-->
    </jmeter>
</target>

我还建议选择 jmeter.save.saveservice.timestamp_format 属性之一(msyyyy-MM-dd HH:mm:ss,因为它可能会导致仪表板生成出现问题),具有重复的 属性 名称具有不同的值不是一个很好的做法。

有关 运行 通过 Ant 任务进行 JMeter 测试以及启动 JMeter 测试的其他方式的更多信息,请参阅 Five Ways To Launch a JMeter Test without Using the JMeter GUI 文章

我在你发布之前就注意到了,但它是正确的,XML 类型在 build.xml 中被硬编码,现在我已经改变了它,一切正常:)