在过去的几周里,我一直在测试结束时使用JMeters自动仪表板生成w / command:
./jmeter -n -t <test JMX file> -l <test log file> -e -o <Path to output folder>
然而,在测试计划结束之前,大约50%的时间终端正好冻结1秒而不生成仪表板。所以我想使用以下方法从我的log.jtl文件手动构建短划线报告:
./jmeter -g <log file> -o <Path to output folder>
但是当我在终端中运行此命令时,我收到错误:
An error occurred: Error while processing samples:Mismatch between expected number of columns:16 and columns in CSV file:15, check your jmeter.save.saveservice.* configuration
我在user.properties中唯一拥有的东西是(直接来自http://jmeter.apache.org/usermanual/generating-dashboard.html):
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.connect_time = true
jmeter.save.saveservice.timestamp_format = ms
jmeter.save.saveservice.timestamp_format = yyyy/MM/dd HH:mm:ss
使用和不添加这些添加到user.properties运行./jmeter -g <log file> -o <Path to output folder>
仍会导致列出相同的错误。
请帮忙!
更新:当我从nongui模式运行测试并完成(&#39;整理...&#39;打印到终端)而不是冻结时,我的仪表板生成./jmeter -g <log file> -o <Path to output folder>
正常工作正确。因此,似乎冻结的问题在于测试结构。测试以命中一天的特定时间结束,例如下午4:00,这被添加到线程组调度程序中的jmeter测试中。有没有人对我如何解决这个问题有任何建议?有没有人遇到类似的问题?
答案 0 :(得分:6)
我知道它有点迟了但我仍然在回答这个问题,以防其他人遇到同样的问题,就像我一样。
在我的例子中,在确保jmeter.properties和user.properties相同之后,我打开了日志文件。你知道,.jtl,删除了最后一行。
然后,只需执行命令行jmeter -g <log file> -o <Path to output folder>
并正常工作。
当执行没有正确结束时会发生。
答案 1 :(得分:0)
根据错误消息,您很可能在lod测试和生成之间不使用相同的jmeter.properties + user.properties。
确保你这样做。
其次,关于第一个问题,请检查您是否遇到了一些磁盘空间问题,或者您没有遇到OutOfMemoryError,如果问题仍然存在,请报告错误。
答案 2 :(得分:0)
确保csv中的每个数据行(以逗号分隔)与列号匹配。因此,我遇到了同样的异常……
timeStamp,已过去,标签,responseCode,responseMessage,连接 1569471061857,3918,200,确定,应力,文本
1569471061857,3918,200,确定,应力,文本
1569471061857,3918,200,确定,应力,文本
1569471061857,3918,200,OK,圣
在这种情况下,标头和大多数数据有6列,但是最后一行不完整(因为我过早地中断了执行),最后一行以5列而不是6列结束,这导致了异常。
祝你好运。