2013-06-21 2 views
4

Я очень новичок в ERLANG и TSung, я никогда не работал в этой области, но я очень заинтересован в том, чтобы знать основы и выполнять распределенный тест нагрузки для своего веб-приложения. Я нахожусь на полпути, но у меня большое препятствие и не могу двигаться вперед, пожалуйста, прочтите ниже tsung.xml и сообщите мне, где & что мне не хватает?Проблема Tsung с Dyn_Variable

**===> tsung.xml (this file perfectly working without any errors)** 

*<?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" weight ="1" maxusers="40000" cpu = "1" > 
     <ip value = '127.000.000.111'/> 
</client> 
</clients> 
<servers> 
     <server host="127.000.000.112" port="80" type="tcp"></server> 
</servers> 
<load duration="1" unit="minute"> 
     <arrivalphase phase="1" duration="1" unit="minute"> 
     <users arrivalrate="10" unit="second"></users> 
    </arrivalphase> 
</load> 

<sessions> 
<session name="mySession" probability="100" type="ts_http"> 
<transaction name="trx"> 
     <request> 
      <dyn_variable name="myId" re="&lt;myId&gt;(\.*)\&lt;/myId&gt;"/> <-- Trying with RegExp option, not getting the value myId 
      <!--dyn_variable name="myId" xpath="//response/myId" /--> <-- Trying with xpath option, not getting the value myId 
      <!--dyn_variable name="myId" jsonpath="response.myId" /--> <-- Trying with jsonpath option, not getting the value myId 
      <http url='http://127.000.000.112/Create_Rec' method='POST' version='1.1' content_type='text/xml'/> 
     </request> 
     <request subst="true"> 
     <http url='http://999.000.000.999/Get_Rec/myId=%%_myId%%' method='GET' version='1.1' content_type='application/xml'/> 
</request> 
</transaction> 
</session> 
</sessions> 
</tsung>* 

Когда я запускаю этот адрес (это веб-сервис вызова) «http://_127.000.000.112/Create_Rec» в веб-браузере, я получаю аналогичный ответ от сервера (в заднем месте, он создает запись в базе данных и генерирует новый идентификатор т.е. myId). Когда я запускаю над tsung.xml, первый запрос работает отлично, как я и ожидал.

===> ответ (реакция браузера)

<response id="SomeWebService"> 
    <status> 
     <statusCode>1</statusCode> 
     <statusMsg>SomeMessage</statusMsg> 
     <statusTime>2013-06-20 02:52:25</statusTime> 
    </status> 
    <myId>298346728934734987</myId> 
</response> 

То, что я ищу здесь, мне нужно, чтобы захватить MyId из первого запроса и передать в второй запрос MyId = %% _ MyId %%, но никогда не работает, а myId всегда пустая строка. Я за пределами dyn_variable с двух дней, никаких подсказок и правильных примеров/документации на нем. Пожалуйста, предложите мне, что мне не хватает.

+0

У меня есть та же проблема, вы нашли ответ на свой вопрос? – Paniz

ответ

1

Вам потребуется настроить subst = "true" в вашем запросе на замещение на работу. Таким образом, ваш запрос должен измениться ..

<request subst="true"> 

Если все еще не работает, то я хотел бы предложить вам посмотреть файл tsung.dump и проверить ответ, который вы получаете от сервера

+0

@ jack-daniels это решение не решило мою проблему. Есть ли у вас другое предложение? – Paniz