zoukankan      html  css  js  c++  java
  • jmeter压力测试(多用户登录、选择商品、选择支付方式、下单)

    1.压力测试工具 jmeter

       版本:Apache JMeter 2.10

    2.运行环境

       1)windows7

       2)java version 1.7.0_80

    3.创建测试计划

        以秒杀活动为例,测试100个用户同时下单时服务器的负载情况

       1)确定请求地址:正常的下单流程:用户登录网站(http://xxxx/login)

                                        =》选择某个商品并点击购买(http://xxx/cart/quick-buy.html)

              =》选择某种支付方式(http://xxxx/checkout/change-payment)

                                        =》下单(http://xxx/checkout/submit)

       2)创建测试计划:

            I.创建线程

              

         II.设置线程组参数

             

             参数说明:

              线程数:100; 启动100个线程

              Ramp-Up Period (in seconds): 1; 1秒内启动100个线程,为0时代表同时启动100个线程

              循环次数: 勾选“永远”时,线程组会一直执行,为x时,代表会执行x次线程数为100的线程组

        III.添加线程组的配置元件

            

       配置元件作用:

            HTTP Cookie管理器:自动保存登录时网站设置的cookie

            HTTP 信息头管理器:可以设置请求头部信息。如可以通过设置user-agent来模拟各种浏览器

        IV.添加http请求

           

          1)用户登录

           确定登录的请求参数:

           

           设置登录的请求参数:

           

           添加数据源:

           

           设置数据源参数:

           

          数据源文件内容为:

          

         2)用户选择商品

          

          3)选择支付方式

          

        4)确认购买(提交订单信息)

        

          5)添加定时器

          

           编辑定时器参数

           

         number of Simulated Users to Group by :100  //线程数达到100个后,再同时访问某个http请求

        6)添加察看结果树和聚合报告

        

        

        聚合报告参数说明:

        Lable:Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值;

        #Samples:表示这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100;【我的是用户有100,只迭代一次,因此也是100】

        Average:平均响应时间——默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,也可以以Transaction 为单位显示平均响应时间;

        Median:中位数,也就是 50% 用户的响应时间;

        90% Line ~ 99% Line:90% ~99%用户的响应时间不大于这个值;

        Min:最小响应时间;

        Maximum:最大响应时间;

        Error%:本次测试中出现的错误率,即 错误的请求的数量/请求的总数;

       Throughput:吞吐量——默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction ;

       Received KB/src:每秒从服务器端接收到的数据量;

       Sent KB/src:每秒从客户端发送的请求的数量。

      7)其它说明

         1.线程组下的HTTP Cookie管理器、HTTP信息头管理器、Synchronizing Timer 定时器、对该线程组下的每个http请求都起作用。

         2.线程组下的http请求会按照顺序依次执行

    4.运行测试计划

        

     

  • 相关阅读:
    第二百一十五节,jQuery EasyUI,DateBox(日期输入框)组件
    第二百一十四节,jQuery EasyUI,Calendar(日历)组件
    onethink 系统函数中 生成随机加密key
    本地开发 localhost链接数据库比127.0.0.1慢
    仿写thinkphp的I方法
    判断数组中有没有某个键 isset 和 array_key_exists 的效率比较
    jquery实时监听某个文本框的输入事件
    js数组去重
    thinkphp3.2.3 版本使用redis缓存的时候无法使用认证
    javascript中使用md5函数
  • 原文地址:https://www.cnblogs.com/indifferent/p/13853697.html
Copyright © 2011-2022 走看看