Преобразование функции javascript в функцию c для сценариев loadrunner

Ниже приведена функция javascript для генерации кода на стороне клиента. Затем код, сгенерированный этой функцией, сравнивается с кодом, введенным пользователем, и, если он совпадает, запрос передается на сервер. Я делаю сценарии в Load Runner, где либо мне нужно сопоставить этот динамически сгенерированный код на стороне клиента (что, вероятно, невозможно, поскольку он не возвращается сервером), либо я должен преобразовать функцию javascript в c-функцию и реализовать в скрипте загрузчика.

Пожалуйста помоги.

function DrawCaptcha()
{
    var a = Math.ceil(Math.random() * 10)+ '';
    var b = Math.ceil(Math.random() * 10)+ '';       
    var c = Math.ceil(Math.random() * 10)+ '';  
    var d = Math.ceil(Math.random() * 10)+ '';  
    var e = Math.ceil(Math.random() * 10)+ '';  
    var f = Math.ceil(Math.random() * 10)+ '';  
    var g = Math.ceil(Math.random() * 10)+ '';  
    var code = a + ' ' + b + ' ' + ' ' + c + ' ' + d + ' ' + e + ' '+ f + ' ' + g;
    document.getElementById("txtCaptcha").value = code;
    document.form1.txtInput.value="";
}

function ValidCaptcha()
{
    var str1 = removeSpaces(document.getElementById('txtCaptcha').value);
    var str2 = removeSpaces(document.getElementById('txtInput').value);
   if (str1 != str2) 
    {
    alert("Captcha Does Not Match");
    document.form1.txtInput.focus();
    DrawCaptcha();
    return false;
    } 

}

function removeSpaces(string)
{
    return string.split(' ').join('');
}

person nikhil jain    schedule 29.06.2013    source источник


Ответы (1)


Воспроизведите код в LoadRunner (если необходимо). Поскольку это капча на стороне клиента, а не на стороне сервера, вам, возможно, не придется ничего делать, поскольку значение не получено и не передано на сервер, и все, что оно служит, — это быть локальным привратником до того, как будет сделан следующий запрос.

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

person James Pulley    schedule 01.07.2013
comment
Что вы имеете в виду, говоря о том, что вы не должны противостоять любым другим динамическим данным, не относящимся к капче, которые должны быть на месте для выполнения следующей страницы? Я не могу перейти к следующему запросу, пока значение капчи не будет проверено. Чем здесь может помочь воспроизведение кода в LR? - person nikhil jain; 01.07.2013
comment
Если ваша капча генерируется на 100% локально на клиенте и аутентифицируется локально и не требует проверки подлинности на основе сервера, прежде чем двигаться дальше, вам, вероятно, даже не нужно включать код, потому что вы уже зафиксировали положительный тестовый пример из успешной капчи с помощью ваш следующий набор запросов. Скорее всего, вам нужно только обеспечить достаточное количество времени на размышление для людей, вводящих код проверки (см. google.com). /recaptcha как пример серверного механизма) - person James Pulley; 01.07.2013