0

for有人可以告诉我像和这样的循环之间的主要区别是<load loop="">什么?我发现了奇怪的行为。我有配置文件:

<?xml version="1.0"?>
<!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd">
<tsung loglevel="debug" dumptraffic="true" version="1.0">
<clients>
    <client host="localhost" use_controller_vm="true" maxusers="1"/>
</clients>
<servers>
    <server host="example.com" port="443" type="ssl"/>
</servers>
<load loop="100" duration="2" unit="minute">
    <arrivalphase phase="1" duration="1" unit="second">
        <users maxnumber="1" arrivalrate="1" unit="second"/>
    </arrivalphase>
</load>
<sessions>
    <session name="one" type="ts_http" probability="100">
        <request>
            <http url='/Service.asmx' version='1.0' contents_from_file="/home/user/file.xml" content_type='text/xml; charset=UTF-8'  method='POST'>
                <soap action="Retrieve"/>
            </http>
        </request>
    </session>
</sessions>
</tsung>`

它在加载过程中产生大约 1900 个请求。loop="100"但是,如果我从<load>标签中删除属性并添加for循环,请求数将减少到 70 个请求。在这种情况下,配置文件如下所示:

<?xml version="1.0"?>
<!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd">
<tsung loglevel="debug" dumptraffic="true" version="1.0">
<clients>
    <client host="localhost" use_controller_vm="true" maxusers="1"/>
</clients>
<servers>
    <server host="example.com" port="443" type="ssl"/>
</servers>
<load duration="2" unit="minute">
    <arrivalphase phase="1" duration="1" unit="second">
        <users maxnumber="1" arrivalrate="1" unit="second"/>
    </arrivalphase>
</load>
<sessions>
    <session name="one" type="ts_http" probability="100">
        <for var="counter" from="1" to="100" incr="1">
            <request>
                <http url='/Service.asmx' version='1.0' contents_from_file="/home/user/file.xml" content_type='text/xml; charset=UTF-8'  method='POST'>
                    <soap action="Retrieve"/>
                </http>
            </request>
        </for>
    </session>
</sessions>
</tsung>

此外,它创建了 61 个会话,尽管<client maxusers="1"/>and<users maxnumber="1"/>属性没有改变。这是两个报告的屏幕截图:在此处输入链接描述

为什么它以不同的方式工作?从逻辑上讲,它们应该以相同的方式工作,只是重复请求的顺序。

4

1 回答 1

0

Loop on load 部分将生成新用户,因此新会话、cookie 和所有用户相关。在会话中循环将​​重用相同的用户。

于 2015-02-03T11:10:41.513 回答