51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2126|回复: 2
打印 上一主题 下一主题

ab和locust性能测试对比

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-3-26 11:21:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

测试的内容是以ContentType: multipart/form-datapost方式提交的某文件

ab

为了提交命名都费了很大劲:

  1. ab -n 100 -c 100 -p ab-test.mp3 -T "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW"  http://localhost/vo
复制代码

这还没完 需要在ab-test.mp3原始文件里,加上额外信息,即编辑原文件为:

  1. ------WebKitFormBoundary7MA4YWxkTrZu0gW
  2. Content-Disposition: form-data; name="test"; filename="ab-test.mp3"
  3. Content-Type: audio/mp3

  4. /..../ //orginnal content

  5. ------WebKitFormBoundary7MA4YWxkTrZu0gW--
复制代码
locust
  1. locust -f xxx.py --no-web -c 100 -r 1000 -t 5 HttpApiUser  
复制代码

locust是python的工具,测试前需要准备1个lucst.py的脚本

两者比较

locust不能设置总请求数,但是可以讲最大并发数和测试时间设置成和ab一致,并且-r 要超过-c,保证尽快达到最大并发数

ab命令:

  1. ab -t 5 -n 20000 -c 30 -p ab-test.mp3 -T "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW"  http://localhost/v
复制代码

性能:

  1. Concurrency Level:      30                                                                                                                                                                                                                                    
  2. Time taken for tests:   5.001 seconds                                                                                                                                                                                                                        
  3. Complete requests:      3164                                                                                                                                                                                                                                 
  4. Failed requests:        0                                                                                                                                                                                                                                    
  5. Write errors:           0                                                                                                                                                                                                                                    
  6. Total transferred:      626472 bytes                                                                                                                                                                                                                          
  7. Total body sent:        97945275                                                                                                                                                                                                                              
  8. HTML transferred:       155036 bytes                                                                                                                                                                                                                          
  9. Requests per second:    632.61 [#/sec] (mean)                                                                                                                                                                                                                 
  10. Time per request:       47.422 [ms] (mean)                                                                                                                                                                                                                    
  11. Time per request:       1.581 [ms] (mean, across all concurrent requests)                                                                                                                                                                                    
  12. Transfer rate:          122.32 [Kbytes/sec] received
  13.                         19124.26 kb/s sent
复制代码

locust命令:

  1. locust -f xxx_server/tests/perfermance_test.py --no-web -c 30 -r 100 -t 5 HttpApiUser
复制代码

结果:

  1. Name                                                          # reqs      # fails     Avg     Min     Max  |  Median   req/s
  2. --------------------------------------------------------------------------------------------------------------------------------------------
  3. POST /voice                                                     1966     0(0.00%)      60      11     162  |      57  370.33
  4. --------------------------------------------------------------------------------------------------------------------------------------------
  5. Total                                                           1966     0(0.00%)                                     370.33
复制代码



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-23 07:57 , Processed in 0.065196 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表