Jmeter_压测1

1.jmeter非GUI界面压测相关参数

-h 帮助
-n 非GUI模式
-t 指定要运行的Jmeter测试脚本
-l 记录结果的文件 (每次运行前要确保xxx.jtl不存在,否则会报错)
-r Jmeter.properties文件中指定所有远程服务器
-e 在脚本运行结束后生成html报告
-o 用于存放html报告的目录(目录需要为空,否则报错)

eg:jmeter -n -t xxx.jmx -l result.jtl -e -o /xx/xx      (xxx代表脚本,/xx代表目录)
   jmeter -n -t /xx/xx/xxx.jmx -l result.jtl -e -o /xx/xx

2.Jmeter压测接口的性能优化(使压测结果更准确)

1.使用非GUI模式进行压测
2.尽量少使用Listener, 使用 -l 参数他们可以被禁用
3."查看结果"或"查看结果树"只在脚本阶段用来调试脚本
4.包含控制器在这里没有帮助,因为他将文件中的所有测试元素添加到测试计划中
5.不要使用功能模式,使用CSV输出而不是XML
6.只保存你需要的数据,尽可能少的使用断言
7.如果测试需要大量数据,可以提前准备好测试数据放到数据文件中,以CSV Read方式读取
8.用内网压测,减少其他带宽影响压测结果
9.如果压测大流量,尽量多用几个节点以非GUI模式向服务器施压

3.Jmeter图形化html压测报告
3.1.dashboard

  1. Test and Report informations
    Source file: jtl文件名
    Start Time: 压测开始时间
    End Time: 压测结束时间
    Filter for display: 过滤器
    Lable: sampler采样器名称
  2. APDEX(Application performance Index)
    apdex: 应用程序性能指标,范围在0-1,1表示所有用户满意
    T(Toleration threshold): 可接受阈值
    F(Frustration threshold): 失败阈值
  3. Requests Summary
    OK: 成功率
    KO: 失败率
  4. Statistics 统计数据
    lable:采样器名称
    samples: 请求总数,并发数*循环次数
    KO: 失败次数
    Error%: 失败率
    Average: 平均响应时间
    Min: 最小响应时间
    Max: 最大响应时间
    90th pct: 90%的用户响应时间不会超过这个值
    95th pct: 95%的用户响应时间不会超过这个值
    99th pct: 99%的用户响应时间不会超过这个值(存在极端值)
    throughtput: Request per Second吞吐量 qps

3.2.charts

  1. Over Time(随着时间的变化)
    Response Times Over Time: 响应时间变化趋势
    Response Time Percentiles Over Time(successful response): 最大,最小,平均,用户响应时间分布
    Active Threads Over Time: 并发用户趋势
    Bytes Throughput Over Time: 每秒接收和请求字节数变化,蓝色表示发送,黄色表示接受
    Latencies Over Time: 平均响应延时趋势
    Connect Time Over Time: 连接耗时趋势
  2. Throughput
    Hits Per Second(excluding embedded resources): 每秒点击次数
    Codes Per Second(excluding embedded resources): 每秒状态码数量
    Transactions Per Second: 每秒事务数,TPS
    Response Time Vs Request: 响应时间和请求数对比
    Latency Vs Request: 延迟时间和请求数对比
  3. Response Times
    Response Time Percentiles: 响应时间百分比
    Response Time Overview: 响应时间概述
    Time Vs Threads: 活跃线程数和响应时间
    Response Time Distribution: 响应时间分布图

你可能感兴趣的:(软件测试)