0

Tsung で名簿の連絡先を削除する際に問題があります。私は彼らに尋ねようとしましたが、誰も私のメールに答えませんでした。私の構成(.xml)のすべてはドキュメントのようですが、連絡先の追加のみが機能し、名前の変更と削除は機能しません。ここに私のセッションコードがあります:

<session bidi="true" probability="100" name="AddRoster" type="ts_jabber">
    <request> <jabber type="connect" ack="local"></jabber> </request>
    <transaction name="authenticate">
        <request> <jabber type="auth_sasl" ack="local"></jabber> </request>
        <request> <jabber type="connect" ack="local"></jabber> </request>
        <request> <jabber type="auth_sasl_bind" ack="local" ></jabber></request>
        <request> <jabber type="auth_sasl_session" ack="local" ></jabber></request>
    </transaction>
    <thinktime value="2"></thinktime>
    <request> <jabber type="iq:roster:get" ack="local"/> </request>
    <thinktime value="2"></thinktime>
    <request> <jabber type="presence:initial" ack="no_ack"/> </request>
    <thinktime value="40"></thinktime>
    <for from="1" to="100" incr="1" var="counter">
        <transaction name="add_roster">
                <request> <jabber type="iq:roster:add" ack="no_ack" destination="online"> </jabber> </request>
                <request> <jabber type="presence:subscribe" ack="no_ack"/> </request>
            </transaction>
    </for>
    <for from="1" to="50" incr="1" var="counter">
        <transaction name="rosterrename">
                <request> <jabber type="iq:roster:rename" ack="no_ack"></jabber> </request>
            </transaction>
    </for>
    <for from="1" to="100" incr="1" var="counter">
            <transaction name="rosterdelete">
                <request> <jabber type="iq:roster:remove" ack="no_ack"></jabber> </request>
            </transaction>
    </for>
    <thinktime value="400"></thinktime>
    <request> <jabber type="presence:final" ack="no_ack"/> </request>
    <thinktime value="1"></thinktime>
    <request> <jabber type="close" ack="local"></jabber> </request>
</session>
4

1 に答える 1

0

ここhttp://tsung.erlang-projects.org/user_manual.html#htoc58からの Tsung のドキュメントの上に、3 つの for ループが原因で問題が発生したと思います!!!

次のように試すことができます:

<for from="1" to="50" incr="1" var="counter">

<transaction name="rosteradd">
  <request>
    <jabber type="iq:roster:add" ack="no_ack" destination="online"></jabber>
  </request>
  <request>
    <jabber type="presence:subscribe" ack="no_ack"/>
  </request>
</transaction>

<!-- ... -->

<transaction name="rosterrename">
  <request> <jabber type="iq:roster:rename" ack="no_ack"></jabber> </request>
</transaction>

<!-- ... -->

<transaction name="rosterdelete">
  <request> <jabber type="iq:roster:remove" ack="no_ack"></jabber> </request>
</transaction>

</for>

Tsung には独自のコンテキストがあるためです。したがって、異なるループで追加/名前変更/削除を行うと、コンテキストも異なります。そのトランザクションを 1 つのループで実行するだけです。

于 2012-03-16T04:28:36.033 に答える