Apache JMeter是Apache开发的一个开源项目,目的是在多种负载类型下测试和测量各种资源(静态和动态)的性能。最初,它专门针对Web应用程序,但已扩展到支持其他协议,如FTP,邮件,TCP,LDAP,S
Apache JMeter是Apache开发的一个开源项目,目的是在多种负载类型下测试和测量各种资源(静态和动态)的性能。最初,它专门针对Web应用程序,但已扩展到支持其他协议,如FTP,
邮件,TCP,LDAP,SOAP和MongoDB,以命名最重要的协议。它包装在一个可移植的包中,并依赖于Java以正常工作。简单地解压它进来的档案并运行bin文件夹内的JAR文件(或者BAT文件)来启动它。
Apache JMeter依赖于多线程框架,该框架允许您同时对多个线程进行采样,同时保持用户友好的系统资源。 GUI是全面和直观的,几个示例项目可作为未来实现的参考。
有内置的功能可以将动态输入实现到特定的测试中,同时允许无缝操作数据。而且,借助可插拔采样器,您将能够扩展测试过程的功能并个性化应用程序的行为。
每个测试计划都可以在本地保存并在以后使用,同时将两个项目合并也是可能的。此外,随着场景正在测试,演变记录在一个专门的部分,让您查看潜在的错误。
Apache JMeter的一个特殊优势是它可以通过创建脚本(使用正则表达式编写)来帮助进行回归测试,这些脚本可以被评估以验证您的应用程序是否正在输出预期结果。
总体而言,Apache JMeter是一个构建良好且功能强大的应用程序,可帮助开发人员测试其重负载项目,并能够提示您的整体性能。
JMeter不是
浏览器,它在协议级别工作。 就Web服务和远程服务而言,JMeter看起来像一个浏览器(或者更确切地说,是多个浏览器)。 但是JMeter不会执行浏览器支持的所有操作。 特别是,JMeter不会执行在HTML页面中找到的Javascript。 它也不像浏览器那样呈现HTML页面(可以将响应视为HTML等,但定时不包含在任何示例中,并且一次只显示一个线程中的一个示例)。
Apache JMeter的功能包括:
能够加载和性能测试许多不同的应用程序/服务器/协议类型:
Web - HTTP,HTTPS(Java,NodeJS,PHP,ASP.NET ...)
SOAP / REST Web服务
FTP
数据库通过JDBC
LDAP
面向消息的中间件(MOM)通过JMS
邮件 - SMTP(S),POP3(S)和IMAP(S)
本地命令或shell脚本
TCP
Java对象
全功能的测试IDE,允许快速的测试计划记录(从浏览器或本地应用程序),建设和调试。
从任何兼容Java的操作系统(Linux,Windows,Mac OSX ...)加载测试的命令行模式(非GUI /无头模式)
一个完整的,准备呈现动态HTML报告
通过从大多数流行的响应格式,HTML,JSON,XML或任何文本格式中提取数据的能力,轻松实现关联
完整的便携性和100%的Java纯度。
完整的多线程框架允许通过多个线程同时进行采样,并通过单独的线程组同时采样不同的功能。
缓存和离线分析/重播测试结果。
高度可扩展的核心:
可插拔采样器允许无限测试功能。
可编写脚本的取样器(与Groovy和BeanShell等JSR223兼容的语言)
可插拔定时器可以选择多个负载统计。
数据分析和可视化插件允许很好的扩展性和个性化。
函数可用于为测试提供动态输入或提供数据操作。
通过Maven,Graddle和Jenkins的第三方开源库轻松持续集成。