性能理论-性能测试工具(六)
日行千里需有千里马,要想做好性能测试也需要一款好的工具来支持。软件性能测试工具分为三类:商业收费工具、开源免费工具、自主开发工具。
工欲善其事必先利其器,性能测试时模拟大量负载需要工具帮忙,市面上可供使用的负载工具繁多,如何选择呢?
首先我们要明白负载工具是帮助我们来模拟负载的,对于性能测试来说,工具并不是核心,分析、评估、找出性能问题才是核心,这些是主观因素;工具是客户因素,自然要降低其对结果的影响,所以工具选择时我们有几个方面要考虑。
- 专业、稳定、高效,比如 LoadRunner, 工业级性能负载工具。
- 简单易上手,在测试脚本上不用花太多时间。
- 有技术支持,文档完善,不用在疑难问题上花费时间,集中精力在性能分析上。
- 要考虑投入产出比,比如我们可以选择免费开源的 JMeter。当然有时候自研或者使用开源不一定比商业工具更省钱,因为要做技术上的投资,时间上的投资。
常见性能工具:
- HP 公司的 LoadRunner;
- Apache JMeter (开源)
- Grinder (开源)
- Compu Ware 公司的 QALoad
- Microsoft 公司的 WAS
- RadView 公司的 WebLoad
- IBM 公司的 RPT
总之我们要认清性能测试的核心是性能分析,重要的是思想,实现方式,不在意工具;大家本着简单、稳定、专业、高效、省钱的原则来选择工具。
1. LoadRunner VS JMeter
比较参数 | LoadRunner | JMeter |
---|---|---|
协议 | Load Runner 支持所有协议 | 主要用于 Web 和 Web 服务应用程序相关协议 |
可用性 | LoadRunner 是一种昂贵的软件测试工具。它最近发布了免费试用版,但不能简单地下载使用。 | Apache JMeter 是一个开源的免费软件测试工具,可以轻松下载该工具以执行任何测试。 |
负荷产生能力 | LoadRunner 的负载生成能力有限。 | JMeter 具有无限的负载生成能力。 |
执行 | 与 JMeter 相比,执行非常复杂。它为每个用户创建一个线程。 | 在 JMeter 中执行起来更容易。只需要安装 Java,下载 JMeter 并上传 JMeter 脚本文件。 |
报告分析 | 由 HP Analysis 解析以生成各种专业图形报告。 | 对于经验不足的工程师来说,结果很容易理解,报告需要更专业的测试人员进行深入分析输出。 |
脚本编写 | LoadRunner 需要脚本知识。 | 可以运行完整的负载测试,而无需了解 JMeter 中的一些代码。 |
建立测试场景 | LoadRunner 更复杂,因为它需要管理不同的代理。 | JMeter 不需要添加开始或结束事务元素。 |
开源和社区支持 | 由一家大型公司所有,限制了用户数量。 | 拥有活跃的社区,并为遇到问题的用户提供支持。 |