Web服务器压力测试一例
作者:writing for time 发布时间:[ 2016/10/9 17:07:27 ] 推荐标签:WEB测试 压力测试
近期部门新上线一个服务,我们使用ab和locust分别测试
目前项目属于demo阶段,对访问量的支持不要求太高,我们暂且设定在500请求,20并发
工具介绍
ab
ab全称为:Apache HTTP server benchmarking tool
ab是apache自带的压力测试工具。ab非常实用,它不仅可以对apache服务器进行网站访问压力测试,也可以对或其它类型的服务器进行压力测试。比如nginx、tomcat、IIS等。
locust
locust是一个开源负载测试工具,支持python脚本。可仿真百万个用户
locust提供web ui界面,能够方便用户实时监控脚本运行状态。
开始测试
使用ab测试
假设我们的网站域名为:www.example.com
我们需要测试的页面为: /index
ab -n 500 -c 20 https://www.example.com/ #500 访问,20 并发,-n表示请求数,-c表示并发数
之后会生成报表,如何阅读ab的报表,可以参考: Web性能压力测试工具之ApacheBench(ab)详解
使用locust测试
locust是一个python库,我们可以使用pip安装: pip install locustio ,查看帮助: locust --help
我们根据 官方教程 来写一个简单的测试
vim locustfile.py
from locust import Locust, TaskSet, task
class MyTaskSet(TaskSet):
min_wait = 5000
max_wait = 15000
@task
def task1(self):
self.client.get("/")
'''
@task
def task2(self):
self.client.get("/index")
'''
class MyLocust(Locust):
task_set = MyTaskSet
locust -f locustfile.py --host=http://www.example.com
之后打开:127.0.0.1:8089,即可开始测试
模拟登录的测试,下回有空再做.在locust中处理session很容易:
The HttpSession instance will preserve cookies between requests so that it can be used to log in to websites and keep a session between requests.
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11