siege

目录

简介
功能
输入项
输出项
缺陷
版本发布

编辑本段简介

Siege是一个压力测试和评测工具,设计用于WEB开发这评估应用在压力下的承受能力:可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行。[1]

Siege是一个多线程http负载测试基准测试工具。

[2] Siege:这是Linux系统下的一个测试工具,完全使用C语言实现,可以对HTTP和FTP服务器进行负载和性能测试。通过使用Siege 提供的功能,可以很容易的制定测试计划:包括规定使用并发用户数、重复数量,从而可以模拟在服务器、网络或者其它对象上附加负载以测试他们提供服务的受压能力,方便的测试服务器的性能。最后,利用Siege提供的测试结果来分析性能指标或者分析他们提供的服务在不同负载条件下的性能情况,分析测试结果,找出影响系统性能的瓶颈。

编辑本段功能

模拟多用户对Web应用系统进行访问测试,从而达到性能的测试和评价。它有3种操作模式:

1.Regression(when invoked by bombardment) siege 从配置文件中读取URLs,按递归方式,逐个发送请求

2. Internet simulation (Siege从配置文件中读取URLs,随机选取URL发送请求)

3. Brute force (在命令行上写上一个单独的URL,发送请求)

编辑本段输入项

输入名称 解释说明
-V, --version 打印版本信息
-h, --help 打印帮助信息
-C, --config 显示配置信息。
-v, --verbose 打印冗余配置信息。
-g, --get 显示HTTP交易。
-c, --concurrent=NUM 设置并发用户数
-u, --url="URL" 设置被测Web的URL
-i, --internet 用户模拟、随机访问URL
-b, --benchmark . 基准测试。
-t, --time=NUM 设置测试时间。
-r, --reps=NUM 设置测试次数
-f, --file=FILE 更改配置文件存档
-R, --rc=FILE 更改siegerc文件和环境变量
-l, --log 测试日志
-m, --mark="text" 标记测试日志
-d, --delay=NUM 设置时间延迟
-H, --header="text" 增加测试头文件
-A, --user-agent="text" 设置代理测试请求

编辑本段输出项

输出名称 解释说明
Transactions: 访问次数
Availability: 成功次数
Elapsed time: 测试用时
Data transferred: 测试传输数据量
Response time: 平均响应时间
Transaction rate: 每秒事务处理量
Throughput: 吞吐率
Concurrency: 并发用户数
Successful transactions: 成功传输次数
Failed transactions: 失败传输次数
Longest transaction: 最长响应时间
Shortest transaction: 最短响应时间

编辑本段缺陷

在多次的web测试实践中,发现Siege只输出了测试结果。存储了概要测试测试结果。没有详细的测试过程存储。无法分析在何时出现了问题,无法详细了解测试过程的细节问题。使得无法进一步对web的性能进行分析和评价。

Siege 是轻量的测试框架,脚本所处理的测试用例构成简单,其实质就是通过HTTP 协议,发送请求来完成测试用例,所以很困难处理业务逻辑关系强的测试用例,例如,登录测试。

编辑本段版本发布

2012年04月18日,Siege 2.73b2 发布,该版本修复了 Debian 下编号为 #665407 的 bug,另外增加了向后兼容的条件。[3]

2012年07月10日,Siege 2.73b3 发布 - 压力测试工具。[4]

参考资料
siege 压力测试
标签: