合并 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
的文件。
完成。
我正在尝试使用 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
的文件。
完成。