51Testing软件测试论坛

标题: Jmeter压测接口 [打印本页]

作者: CallmeJack    时间: 2018-2-8 14:11
标题: Jmeter压测接口
【Apache Jmeter】

    该应用程序是开源软件,旨在为负载测试功能行为和测量性能的100%纯Java应用程序。它最初设计
用于测试Web应用程序,但后来扩展到其他测试功能。

【Jmeter可以做什么】

    Apache JMeter可用于测试静态和动态资源,Web动态应用程序的性能。

    它可用于模拟服务器,服务器组,网络或对象上的重负载,以测试其强度,或分析不同负载类型下
的整体性能。

    Apache JMeter的功能包括:

        1. 能够加载和性能测试许多不同的应用程序/服务器/协议类型:

             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对象

         2. 全功能的测试IDE,允许快速的测试计划记录(从浏览器或本地应用程序),建设和调试。

         3. 从任何Java兼容的操作系统(Linux,Windows,Mac OSX,…)加载测试的命令行模式
(非GUI /无头模式)

         4. 一个完整的,准备呈现动态的HTML报告

         5. 通过从大多数流行的响应格式,HTML,JSON, XML或任何文本格式提取数据的能力,轻
松相关

         6. 完整的可移植性和100%的Java纯度。

         7. 完整的多线程框架允许通过多个线程同时进行采样,并通过单独的线程组同时采样不同的
功能。

         8. 缓存和离线分析/重播测试结果。

         9. 高度可扩展的核心:

             可插拔的采样器允许无限的测试能力。

             可编写脚本的取样器(与Groovy和BeanShell 等JSR223兼容的语言)

             可以使用可插拔定时器来选择多个负载统计信息。

             数据分析和可视化插件允许很好的扩展性和个性化。

             函数可以用来为测试提供动态输入或提供数据操作。

             通过Maven,Graddle和Jenkins的第三方开源库轻松持续集成

【如何使用Jmeter】

    一. 测试脚本录制(通过Jmeter自身设置进行录制)

         1. 创建线程组(右击测试计划→添加→Threads(Users)→线程组)
[attach]110774[/attach]

2. 创建录制控制器(右键线程组→添加→逻辑控制器→录制控制器)
[attach]110775[/attach]

3. 创建HTTP代理服务器(右键工作台→添加→非测试元件→HTTP代理服务器)
[attach]110776[/attach]

  4. 设置HTTP代理服务器的参数
[attach]110777[/attach]

  5. 设置进行测试的浏览器
[attach]110778[/attach]

  6. 启动录制
[attach]110779[/attach]

7. 在浏览器输入要测试的接口地址

         8. 录制结果
[attach]110780[/attach]

二. 进行压测

         1. 为线程组添加监听器(一般会选择查看结果树和聚合报告)
[attach]110781[/attach]

  2. 配置线程组参数
[attach]110782[/attach]

3. 结果分析
[attach]110783[/attach]



上述图片结果大致意思是:5000个线程并发的情况下,99%的线程对这个请求的响应时间在72966毫秒内,
但平均error为81.18%.



作者: 梦想家    时间: 2018-2-28 17:09
谢谢分享
作者: Miss_love    时间: 2020-12-30 08:44
支持分享




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2