【问题标题】:Specify separate data to each user in Tsung在 Tsung 中为每个用户指定单独的数据
【发布时间】:2017-06-01 03:53:11
【问题描述】:

我正在使用 Tsung 进行负载测试。这是 Tsung 的配置文件。

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd" []>
<tsung loglevel="warning">

  <clients>
    <client host="t1" cpu="2" maxusers="30000000"/>
    <client host="t2" cpu="2" maxusers="30000000"/>
  </clients>

  <servers>
    <server host="localhost" port="9200" type="tcp"/>
  </servers>

  <load>
    <arrivalphase phase="1" duration="1" unit="minute">
      <users arrivalrate="5" unit="second"/>
    </arrivalphase>
  </load>
</tsung>

但是,我想要以下内容:

  1. 每个客户端每次只有一个用户
  2. 为每个用户从文件中读取的特定数据。例如,我想从 user1.json 中读取 user1 的数据(在客户端 1 上)和从 user2.json 中为 user2 读取数据(在客户端 2 上)。

在Tsung这可能吗?我浏览了文档,但没有找到任何选项。有人可以帮我解决这个问题吗?

【问题讨论】:

    标签: erlang performance-testing load-testing tsung


    【解决方案1】:

    不完全符合您的要求。但是类似的事情是可能的,只有一个输入文件。

    <options>
      <option name="file_server" id="inputUsers" value="/tmp/users.txt"/>
    </options>
    
    <sessions>
      <session probability="100" name="test" type="ts_http" >
    
        <setdynvars sourcetype="file" fileid="inputUsers" delimiter=";" order="iter">
          <var name="userId"/>
          <var name="deviceMac"/>
          <var name="tKey"/>
        </setdynvars>
    
        <request subst="true">
          <http url="/abc/%%_userId%%/%%_deviceMac%%?arg=%%_tKey%%" version="1.1"></http>
        </request>
    
        <request subst="true">
          <http url="/123/%%_userId%%" version="1.1"></http>
        </request>
    
      </session>
    </sessions>
    

    其中 /tmp/users.txt 包含冒号分隔的用户特定值 - 类似于 (userId;deviceMac;tKey):

    97099;05d4e99de98a;4xrwgyyze54kefnwsd74kj4ghvn5f1
    

    考虑到 setdynvars 的订单值为“iter”,它将遍历每一行,并将输入数据用作请求参数。 在上面的例子中,它会发出这两个请求:

    /abc/97099/05d4e99de98a?arg=4xrwgyyze54kefnwsd74kj4ghvn5f1
    /123/97099
    

    您可以通过这种方式实现“用户特定”的负载测试场景。

    【讨论】:

      猜你喜欢
      • 2011-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-07
      • 1970-01-01
      • 2020-11-27
      • 1970-01-01
      相关资源
      最近更新 更多