【问题标题】:Non UI reports in Jmeter xml format is unreadableJmeter xml 格式的非 UI 报告不可读
【发布时间】:2023-03-17 06:08:01
【问题描述】:

我在 jmeter 报告中遇到问题。 我想每晚运行我的测试计划,并查看它的结果。 我还想显示采样器响应消息(这意味着我必须使用格式 XML,因为在属性文件中提到这仅支持 XML)。 问题是报告不像 CSV 那样可读,无法执行排序或其他任何操作。 如果我通过 UI 手动运行它并放置简单的数据编写器,它可以与 CSV 一起使用,但是如果我在非 UI 中使用它,则必须使用 XML 文件。 提供了我手动运行的 CSV 和来自非 UI 的 xml 文件。 他们的任何方式显示它更好吗?也许是 HTML 格式? 现在我需要在两个选项之间进行选择 1. 没有所有数据的可读格式(CSV)(响应消息) 2. 包含我需要的所有数据的不可读格式 (XML)

#---------------------------------------------------------------------------
# Results file configuration
#---------------------------------------------------------------------------

# This section helps determine how result data will be saved.
# The commented out values are the defaults.

# legitimate values: xml, csv, db.  Only xml and csv are currently supported.
#jmeter.save.saveservice.output_format=csv


# true when field should be saved; false otherwise

# assertion_results_failure_message only affects CSV output
#jmeter.save.saveservice.assertion_results_failure_message=true
#
# legitimate values: none, first, all
#jmeter.save.saveservice.assertion_results=all
#
#jmeter.save.saveservice.data_type=true
#jmeter.save.saveservice.label=true
#jmeter.save.saveservice.response_code=true
# response_data is not currently supported for CSV output
#jmeter.save.saveservice.response_data=false
# Save ResponseData for failed samples
#jmeter.save.saveservice.response_data.on_error=false
#jmeter.save.saveservice.response_message=true
#jmeter.save.saveservice.successful=true
#jmeter.save.saveservice.thread_name=true
#jmeter.save.saveservice.time=true
#jmeter.save.saveservice.subresults=true
#jmeter.save.saveservice.assertions=true
#jmeter.save.saveservice.latency=false
# Only available with HttpClient4
#jmeter.save.saveservice.connect_time=false
#jmeter.save.saveservice.samplerData=true
#jmeter.save.saveservice.responseHeaders=true
#jmeter.save.saveservice.requestHeaders=true
#jmeter.save.saveservice.encoding=false
#jmeter.save.saveservice.bytes=false
# Only available with HttpClient4
#jmeter.save.saveservice.sent_bytes=false
#jmeter.save.saveservice.url=false
#jmeter.save.saveservice.filename=false
#jmeter.save.saveservice.hostname=false
#jmeter.save.saveservice.thread_counts=false
#jmeter.save.saveservice.sample_count=false
#jmeter.save.saveservice.idle_time=false

# Timestamp format - this only affects CSV output files
# legitimate values: none, ms, or a format suitable for SimpleDateFormat
#jmeter.save.saveservice.timestamp_format=ms
#jmeter.save.saveservice.timestamp_format=yyyy/MM/dd HH:mm:ss.SSS

# For use with Comma-separated value (CSV) files or other formats
# where the fields' values are separated by specified delimiters.
# Default:
#jmeter.save.saveservice.default_delimiter=,
# For TAB, since JMeter 2.3 one can use:
#jmeter.save.saveservice.default_delimiter=\t

# Only applies to CSV format files:
# Print field names as first line in CSV
#jmeter.save.saveservice.print_field_names=true

# Optional list of JMeter variable names whose values are to be saved in the result data files.
# Use commas to separate the names. For example:
#sample_variables=SESSION_ID,REFERENCE
# N.B. The current implementation saves the values in XML as attributes,
# so the names must be valid XML names.
# Versions of JMeter after 2.3.2 send the variable to all servers
# to ensure that the correct data is available at the client.

# Optional xml processing instruction for line 2 of the file:
# Example:
#jmeter.save.saveservice.xml_pi=<?xml-stylesheet type="text/xsl" href="../extras/jmeter-results-detail-report.xsl"?>
# Default value:
#jmeter.save.saveservice.xml_pi=

# Prefix used to identify filenames that are relative to the current base
#jmeter.save.saveservice.base_prefix=~/

# AutoFlush on each line written in XML or CSV output
# Setting this to true will result in less test results data loss in case of Crash
# but with impact on performances, particularly for intensive tests (low or no pauses)
# Since JMeter 2.10, this is false by default
#jmeter.save.saveservice.autoflush=false

提供图片

【问题讨论】:

    标签: xml csv jmeter


    【解决方案1】:

    您可以使用默认 JMeter result save configuration 来生成 CSV 输出。

    此外您可以添加即View Results Tree 侦听器以将完整的请求和响应数据保存到一个单独的文件中(您可以通过“文件名”输入指定)

    测试完成后,您将获得 2 个结果文件:

    1. 带有基线指标的 csv 文件
    2. 包含完整请求和响应详细信息的 xml 文件。

    请注意,存储请求和响应数据会产生大量 IO 开销,并且可能会对高负载的测试产生负面影响,因此一旦您对脚本行为感到满意,请关闭此查看结果树侦听器并配置 JMeter只存储那些绝对需要的指标。理想情况下you should be running your test with all the listeners disabled

    【讨论】:

    • Dimity 我还是不明白,如果我从命令行运行 jmeter,我需要像你的图片一样在 UI 中配置报告吗?此外,我标记为保存请求+响应,但它没有以 CSV 显示?这是我的属性配置,在 CSV 中我仍然看到 connect \ idleTime \ Latency \ allThreads \ grpthreads \ sentBytes\Bytes 。如何从 CSV 中删除它们
    【解决方案2】:

    响应消息保存为 CSV 格式,与您显示的黄色字段相同。

    所以你应该可以使用网络报告了:

    【讨论】:

    • 但提到“response_data 目前不支持 CSV 输出”有什么区别?
    • 在你的问题中,你提到了回复信息
    • 是的,我只是不明白我认为这是同一件事的区别
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-26
    相关资源
    最近更新 更多