LoadRunner Correlation: получение значения динамического массива из ответа сервера

я пытаюсь сделать корреляцию, чтобы получить значение динамического массива из ответа сервера. Проблема в том, что сервер возвращает список, который я хочу захватить в функции javascript, и я не могу его захватить.

это фрагмент

web_submit_data("planner.do", "Action=https://www.irctc.co.in/cgi-bin/bv60.dll/irctc/booking/planner.do?BV_SessionID={Session_Param}&BV_EngineID={Engine_Param}", "Method= POST", "RecContentType=text/html", "Referer=https://www.irctc.co.in/cgi-bin/bv60.dll/irctc/booking/planner.do?screen=fromlogin&BV_SessionID={Session_Param}&BV_EngineID={ Engine_Param}", "Snapshot=t87.inf", "Mode=HTTP", ITEMDATA, "Name=BV_SessionID", "Value={Session_Param}", ENDITEM, "Name=BV_EngineID", "Value={Engine_Param}", ENDITEM, "Name=submitClicks", "Value=1", ENDITEM, "Name=screen", "Value=trainsFromTo", ENDITEM, "Name=browser", "Value=::: Explorer ::: Версия браузера: :: 6 и Опера Система: Windows :: End of Navigator Info", ENDITEM, "Name=pressedGo", "Value=", ENDITEM, "Name=changetext", "Value=0", ENDITEM, "Name=bookTicket", "Value =", ENDITEM, "Name=stationFrom", "Value={stationFrom_Param}", ENDITEM, "Name=stationTo", "Value={stationTo_Param}", ENDITEM, "Name=CurrentMonth", "Value=3", ENDITEM , "Name=CurrentDate", "Value=2", ENDITEM, "Name=CurrentYear", "Value=2013", ENDITEM, "Name=day", "Value=26", ENDITEM, "Name=month", " Значение=5", ENDITEM, "Имя=год", "Значение=2013", ENDITEM, "Имя=JDatee1", "Значение=26/05/2013", ENDITEM, "Имя=userType", "Значение=0" , ENDITEM, "Name=ticketType", "Value=eticket", ENDITEM, "Name=quota", "Value=GN", ENDITEM, "Name=timedate", "Value=15", ENDITEM, "Name=backRoute" , "Value=true", ENDITEM, "Name=Submit", "Value=Find Trains", ENDITEM, "Name=selectedIndex", "Value e=1", ENDITEM, "Name=userName", "Value=", ENDITEM, "Name=password", "Value=", ENDITEM, LAST);

в результате возвращается список ОС, например, найдено 4 поезда или найдено 7 поездов, я хочу сопоставить это значение. Если нужно что-нибудь, пожалуйста, скажите мне.


person Pulkit    schedule 02.04.2013    source источник


Ответы (2)


Если ваша функция JavaScript не выполняется на сервере и функция не возвращается, вы не можете ее «захватить». Захват зарезервирован исключительно для информации, возвращаемой с сервера.

Если это клиентский JavaScript, который генерирует поток данных обратно на сервер, тогда возьмите функцию JavaScript и перепишите ее как функцию C, чтобы вычислить значение, которое вам нужно включить в свой скрипт. Или переместите свою модель разработки клиентского кода вверх по стеку моделей OSI к типу VUSER, который будет выполнять JavaScript за вас, например TruClient, GUI, Citrix или RDP.

В этом ответе используются базовые навыки, необходимые для подготовки к профессиональному тестированию производительности, в области клиентской архитектуры, серверной архитектуры и навыки разработки на языке вашего инструмента тестирования.

person James Pulley    schedule 02.04.2013
comment
спасибо Джеймс. Я понял вашу идею о преобразовании скрипта в функцию c ... большое спасибо, я получил ответ: D - person Pulkit; 02.04.2013

person    schedule
comment
Хотя этот код может ответить на вопрос, было бы гораздо полезнее, если бы вы объяснили, что делает этот код и как он отвечает на вопрос. Кроме того, отредактируйте код, чтобы он был аккуратно отформатирован. - person AdrianHHH; 25.01.2017
comment
Этот код должен быть очевиден и очевиден для всех, кто прошел обучение по LoadRunner, будь то формальное обучение в классе или самостоятельное обучение, которое поставляется с инструментом. Код предполагает базовый класс навыков, который разумно предположить для любого, кто использует LoadRunner. Здесь есть проблема, поскольку код ссылается на общедоступный веб-сайт, который прямо запрещен лицензией на инструмент, если только конечный пользователь не работает на FEDEX и не имеет разрешения на использование инструментов против выраженного интерфейса. - person James Pulley; 25.01.2017