在测试结束时生成仪表板时出现JMeter错误

时间:2017-05-05 23:02:16

标签: jmeter

在过去的几周里,我一直在测试结束时使用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测试中。有没有人对我如何解决这个问题有任何建议?有没有人遇到类似的问题?

3 个答案:

答案 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列结束,这导致了异常。

祝你好运。