合并 jMeter 结果文件

Merging jMeter result files

我正在尝试使用 jMeter 合并器来合并结果文件 (http://jmeter-plugins.org/wiki/MergeResults/),但该插件似乎仅限于 4 个要合并的文件。 我可以合并更多文件(>100 个)吗?

文件的结构似乎很简单 (https://wiki.apache.org/jmeter/JtlFiles),所以我打算打破 bash 并编写自己的文件,但想知道是否还没有编写任何内容。

根据您的项目创建一个 jMeter 输出文件:

jmeter -n -t ./project.jmx -l testresult.jtl

这将加载文件 project.jmx、运行 测试并将结果保存到 testresult.jtl

一旦您拥有许多这样的结果文件,就可以使用以下脚本合并它们:

#!/bin/bash

echo "Combines all results from files called testresult*.jtl into one file called merged.jtl"
echo "If merged.jtl exists, it will be overridden"

cat testresult*.jtl > merged.jtl

# Remove boundaries between tests
sed 's_<\/testResults>__g' merged.jtl > /tmp/sedmerged1
sed 's_<?xml version=\"1.0\" encoding=\"UTF-8\"?>__g' /tmp/sedmerged1 > /tmp/sedmerged2
sed 's_<testResults version=\"1.2\">__g' /tmp/sedmerged2 > /tmp/sedmerged3

# Add wrappers
echo "</testResults>" >> /tmp/sedmerged3
sed '1i <?xml version="1.0" encoding="UTF-8"?><testResults version="1.2">' /tmp/sedmerged3 > merged.jtl

该脚本将创建一个名为 merged.jtl 的文件。

完成。