1.【了解软件功能和运行环境】
Tsung是指开源的、多协议的、分布式的压力测试工具。
Tsung的设计目的是模拟真实用户测试基于IP的服务器程序的伸缩性和性能,可以分步在多个客户机,并能够模拟成千上万的虚拟用户数并发。
根据erlang语言开发。
Tsung的主要特点:
(1)高性能:负载可以分布在一个集群客户机上;
(2)拆建机制支持多协议:目前支持HTTP、WebDAV、SOAP、PostgreSQL、MySQL、LDAP 、XMPP/Jabber、BOSH、MQTT、AMQP和SSL;
(3)利用OS IP别名技术在单个机器上使用多IP;
(4)服务器监控(CPU,内存,网络流量),支持SNMP、Rrlang、MUnin方式,方便找出瓶颈;
(5)XML方式的配置文件;
(6)模拟真实的流量,虚拟用户的发呆时间和抵达律使用随机的概率分布;
(7)HTML或图表的方式报告测试结果。
HTTP相关的功能:
(1)支持HTTP 1.0和HTTP 1.1;
(2)符合GET, POST, PUT, DELETE, HEAD, OPTIONS和PATCH要求;
(3)全自动片上管理;
(4)“GET if-modified since”式的请求;
(5)WWW基本认证和OAuth 1.0简要;
(6)用户代理支持;
(7)可以添加任何HTTP头部;
(8)使用Web浏览器的记录会话代理模式;
(9)SOAP支持使用HTTP方式;
(10)HTTP服务器或代理服务器的压力测试。
WebDAV(RFC 4918)插件是HTTP插件的一个超集。它增加了以下特点(支持版本扩展至WebDAV(RFC 3253)):
DELETE:删除某个内容;CONNECT:用于代理进行传输(如使用SSL);PROPFIND:查看;PROPPATCH:设置;COPY:复制;MOVE:移动;LOCK:锁定;UNLOCK:解锁;MKCOL:创建集合(文件夹) ;REPORT:报告;OPTIONS:询问可以执行哪些方法;MKACTIVITY:提交信息;CHECKOUT:导出;MERGE:合并。
记录的深度:如果超时会重写目标、URL和 lock-token头。
(1)(纯文本、摘要和SIP摘要)的认证;
(2)存在和登记信息;
(3)聊天信息的在线或离线的用户;
(4)MUC:加入空间,在空间中发送、更改信息;
(5)设置名单和获取请求;
(6)全球用户同步可以设置具体的活动;
(7)BOSH和XMPP在WebSocket;
(8)原始的XML信息;
(9)PubSub;
(10)虚拟主机支持多实例;
(11)隐私列表:获取所有隐私列表名单,将列表设置为活动。
(1)基本认证和MD5认证;
(2)简单协议;
(3)扩展协议(新版本1.4.0);
(4)记录会话的代理模式。
仅适用于MySQL 4.1及更高版本。
(1)只有 (MySQL > = 4.1)可以进行安全认证;
(2)基本查询
目前仅支持RFC 6455。作为服务器的一种,类似TCP和UDP等传输协议,可以发送任一应用特定的协议数据。可以找到作为examples/ websocket.xml会话类型的例子。
作为一个服务器类型和会话型。
目前仅支持AMQP-0.9.1。可以找到作为examples/ websocket.xml会话类型的例子。
(1)基本的发布和占用;
(2)发布确认和用户ACK;
(3)QoS。
仅支持MQTT v3.1。可以找到作为examples/ websocket.xml会话类型的例子。
(1)连接MQTT代理与方案;
(2)发布MQTT的信息到代理;
(3)订阅/退订主题;
(4)支持QoS 0和Qos1。
(1)绑定;
(2)添加、修改和查询;
(3)STARTTLS。
(1)兼容TCP / UDP / SSL;
(2)原始信息;
(3)no_ack,局部或全局的ACK信息。
Tsung的网址:
http://tsung.erlang-projects.org/