此次为软件工程实践专题—个人博客第四次作业:请使用一些其他平台上的测试工具,并写博客介绍如何在你的项目中具体使用。
一、JMeter 介绍:
Apache JMeter是Apache组织开发的基于Java的压力测试工具,是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能,
2.、JMeter工具作用:
(1)能够对HTTP和FTP服务器进行压力和性能测试, 也可以对任何数据库进行同样的测试(通过JDBC)。
(2)完全的可移植性和100% 纯java。
(3)完全多线程 框架允许通过多个线程并发取样和通过单独的线程组对不同的功能同时取样。
(4)缓存和离线分析/回放测试结果。
3.、JMeter实际运用(http性能测试):
(1) 添加线程组:
右击测试计划,新建一个线程组, jmeter的所有任务都必须由线程处理,所有任务都必须在线程组下面创建。
参数说明:1)线程数:虚拟用户数,一个虚拟用户占用一个进程或线程(设置多少个虚拟用户=设置多少个线程)
2)准备时长(s):设置的虚拟用户数需要多长时间全部启动。eg:线程数为20,准备时长为10,则说明需要10秒钟启动20个进程。
3)循环次数:每个线程发送请求的次数。eg:线程数为20,循环次数为5,那么每个线程发送5次请求,总请求数为20*5=100
(2)右键点击“线程组”->“添加”->“Sampler”->“HTTP请求”
(3)添加聚合报告
右键点击“线程组”->“添加”->“监听器”->“聚合报告”,用以存放性能测试报告。
添加监视器->聚合报告、察看结果树
5.运行脚本:
6.查看聚合报告:
聚合报告解析(响应时间单位:毫秒)
1)Label:每个Jmeter的element都有一个Name属性,这里显示的就是Name属性的值
2)#Sample:表示你这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100
3)Average:平均响应时间-默认情况下是单个Request的平均响应时间当使用了Transaction Controller 时,也可以以Transaction为单位显示平均响应时间
4)Median:中位数,50%用户的响应时间
5)90%Line:90%用户响应时间
6)Min:最小响应时间
7)Max:最大响应时间
8)Error%:本次测试中出现错误的请求的数量/请求的总数
9)Throughput:吞吐量-默认情况下白石每秒的请求数
10)KB/sec:每秒从服务器端接收到的数据量
7.导出聚合报告: