【Tsung学习】3.软件使用方法学习

原创 2016年05月30日 15:47:44

基准方法

HTTP/WebDAV

1.Web 服务器的基准测试

(1)记录一个或多个会话 ︰ tsung-recorder开始,然后配置浏览器以使用Tsung代理记录器 (监听端口是 8090)。将创建一个会议文件。For HTTPS recording, use http://- instead of https:// in your browser.;

(2)编辑/组织方案,通过在配置文件中添加记录的会话;

(3)写小代码的动态部分,如果需要将动态标记在场景中;

(4)测试和调整方案来获得一个好的负载进程。这高度依赖于应用程序和目标服务器的大小。计算方案的正常服务期限和用户与相对期限之间的使用时间间隔来估算为每个给定的相位的并发用户数;

(5)首次启动应用程序参数设置基准 ︰ Tsung开始 (运行Tsung查看更多选项);

(6)等待测试结束或用手动停止Tsung (也可以在测试期间生成报告 (请参阅统计和报表) ︰ 每隔 10 秒更新统计信息)。当前活动的摘要,使用Tsung状态。

(7)分析结果、 调整参数,然后测试下一个基准。

2.WebDAV

与HTTP 的方法相同︰ 首先录制一个或多个会话 ︰ tsung-recorder -p webdav开始。

3.代理服务器的基准

默认情况下,HTTP 插件用于测试 HTTP 服务器的基准,但也可以用于测试 HTTP 代理服务器的基准。要做到这一点,必须在选项部分中添加 ︰

<option type= name= value=></option>

 

LDAP

可录制的LDAP插件尚未实现,需要自己定义编写,详细信息可以参阅http://tsung.erlang-projects.org/user_manual/conf-sessions.html#sec-session-ldap-label。

 

PostgreSQL

与HTTP 的方法相同︰ 首先录制一个或多个会话 ︰ tsung-recorder -p webdav开始。这将启动代理服务器监听端口 8090 ,并将请求代理到 127.0.0.0:5432。

选择另一个端口和/或地址 ︰ tsung-recorder -L 5432 -I 10.6.1.1 -P 5433 -p pgsql开始。这将启动代理服务器监听端口 5432 并将请求代理到 10.6.1.1:5433。

 

MySQL

可录制的LDAP插件尚未实现,需要自己定义编写,详细信息可以参阅http://tsung.erlang-projects.org/user_manual/conf-sessions.html#session-mysql-label。

 

Jabber/XMPP

1.概述

这一段解释如何为Jabber/XMPP 写一个会话。

有两个区别 HTTP 与Jabber的测试 ︰

无法为Jabber进行录制,需要手动编写您的会话。Jabber/XMPP 中提供的示例。

Jabber 插件没有解析 XML;替代使用数据包进行确认。

2.信息的确认

由于 Jabber 插件没有解析 XML (从历史上看,它是出于性能原因),需要一种办法确认请求完成。利用ack 属性有3种可能性 ︰

ack ="local"从服务器收到数据包,就认为请求被完成。因此如果你不需要从服务器响应请求来使用本地ack,它将等待永远 (或直到超时)。

ack ="no_ack"请求一旦被发送即视为已经完成 (不等待传入的数据)。

ack ="global"同步用户。其主要用途是等待所有用户在发送邮件之前的连接。要做到这一点,将设置global ack 请求 (可以是第一次出现msg):

<request> <jabber type= ack=/> </request>

指定用户连接数 ︰

<option type= name= value=></option>

为确保完全 global_number 用户已启动,请将 maxnumber 属性添加到用户 ︰

<users maxnumber= interarrival= unit=></users>

如果未指定 maxnumber,global ack 将重置每个 global_number 用户。

双向的存在

1.2.2 中的新增功能 ︰ 此版本增加了新的选项为一个会话。如果你在 <session>标签中设置属性 bidi (用于双向): < 会议...bidi ="true">,然后将分析传入服务器的消息。目前,只有订阅请求的名单可以被处理 ︰ 如果用户收到一个订阅请求 (< 驻留...类型 ="订阅">),它会回应与 < 驻留...类型 ="订阅"> 消息。

状态 ︰ 离线,连接和在线

可以向脱机或联机用户发送消息。用户发出存在︰初始信息(此消息之前,用户状态是已连接的)则认为该用户在线 。

如果你想要切换回连接之前进入脱机状态,您可以使用存在︰终态信息 ︰

存在 ︰ 终态要做两件事情 ︰

从在线用户列表中删除客户端,并将它们移动到已连接用户列表;发送一个类型 ="unavailable"的存在更新的广播。

存在 ︰ 终态是可选的。

警告 ︰ 这是 1.2.0中新增的,在早期版本中,只有 2 种状态可用 ︰ 在线和离线;只要用户已连接即认为是在线的。

认证

下面是可能的认证方法的配置示例。注 ︰ 这里使用的正则表达式只是作为例子 — — 它们是否需要改变取决于具体的服务器的构成信息 (请参阅 Websocket 选项的密码设置http://tsung.erlang-projects.org/user_manual/conf-options.html#jabber-options-label)。

简单认证-发送明文密码 ︰

<session probability= name= type=>

 

  <request> <jabber type= ack=></jabber> </request>

 

  <thinktime value=></thinktime>

 

  <transaction name=>

    <request> <jabber type= ack=></jabber> </request>

    <request> <jabber type= ack=></jabber> </request>

  </transaction>

  ...</session>

XMPP JEP-0078中所述摘要式认证︰非SASL 验证 http://www.jabber.org/jeps/jep-0078.html

<session probability= name= type=>

 

  <!-- regexp captures stream ID returned by server -->

  <request>

    <dyn_variable name= re="<stream:stream id="(.*)" xmlns:stream"/>

    <jabber type= ack=></jabber>

  </request>

 

  <thinktime value=></thinktime>

 

  <transaction name=>

    <request> <jabber type= ack=></jabber> </request>

    <request subst=> <jabber type= ack=></jabber> </request>

  </transaction>

  ...</session>

sip 摘要式认证

 <session probability= name= type=>

 

 <request> <jabber type= ack=></jabber> </request>

 

 <thinktime value=></thinktime>

<transaction name=>

  <!-- regexp captures nonce value returned by server -->

  <request>

    <dyn_variable name=

      re="<Nonce encoding="hex">(.*)<\/Nonce>"/>

    <jabber type= ack=></jabber>

  </request>

  <request subst=> <jabber type= ack=></jabber> </request></transaction>

...</session>

保密列表测试

提供两个操作作为基本保密列表的负载测试 ︰

privacy:get_names 获取所有名称列表,存储服务器对给定用户的保密列表;

privacy:set_active为活动设置预定义的名称列表。列表名称确定从 JID,例如如果用户 JID 是"john@average.com",那么该列表名称是"john@average.com_list"。应该妥善处理服务器数据库,以确保存在这样一个列表。

 

 

 

 

 

相关文章推荐

TSUNG测试HTTP协议详解和实例

TSUNG用于多种协议压测   特点: 1.  高性能,支持虚拟100万的轻量级进程。 2.  可用于测试多种协议:目前可以用来测试HTTP, WebDAV, SOAP, PostgreS...
  • shoyer
  • shoyer
  • 2013年05月27日 23:44
  • 1963

【Tsung学习】4.脚本学习

使用代理记录器 记录器有三个插件 ︰ HTTP,WebDAV,PostgreSQL。 运行tsung-recorder -p ,而插件可以是 http,webdav 或 pgsqlPostgreS...

程序压力测试、性能测试AB、Webbench、Tsung

负载生成器是一些生成用于测试的流量的程序。它们可以向你展示服务器在高负载的情况下的性能,以及让你能够找出服务器可能存在的问题。为了得到更加客观和准确的数值,应该从远程访问、局域网访问和本地等多个方面进...

tsung测试http的get和post方法配置

tsung测试HTTP服务器时,GET或POST方法有时需配置参数。 这里只颜色固定参数情况 GET: http url=’http://www.csdn.com/develop/c...

【已上架】tsung开源性能测试工具快速入门

观看地址:http://edu.51cto.com/course/course_id-572.html软件测试自学与分享平台:www.besttest.cn 软件测试吐槽群:64779175(可聊技术...

tsung 初识

tsung的工作原理 (1)    Tsung的每一个虚拟用户就是一个erlang的轻量进程。这点和loadrunner有很大的区别。 (2)    虚拟用户完成session后就消失。 ...

Tsung使用

复制模板到root目录下cd /usr/local/tsung/share/doc/tsung/examples cp http_simple.xml /root运行tsungtsung -f ht...

TSUNG测试HTTP协议详解和实例【原创】

TSUNG用于多种协议压测   特点: 1.  高性能,支持虚拟100万的轻量级进程。 2.  可用于测试多种协议:目前可以用来测试HTTP, WebDAV, SOAP, Postgr...

TSung, 单机用户提高用户的并发数(Improve maximum number of concurrent users in a single PC)

这两个星期一直在研究如何利用TSung这个压力测试工具测试我的OpenFire的性能指标,其中有个Case需要过万的并发用户数,而一开始我写得TSung.xml脚本,单机并发只有800个,为此不得不研...

Tsung简易教程-CentOS版

官网地址:http://tsung.erlang-projects.org/ Tsung压力测试工具的工作原理介绍 (1)  Tsung的每一个虚拟用户就是一个erlang的轻量进程。这点和l...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【Tsung学习】3.软件使用方法学习
举报原因:
原因补充:

(最多只允许输入30个字)