0

下面是一个在客户端生成代码的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('');
}
4

1 回答 1

0

重现 LoadRunner 中的代码(如果需要)。由于这是客户端验证码而不是服务器端验证码,您可能无需执行任何操作,因为该值既不会从服务器接收也不会传递给服务器,它所服务的只是在发出下一个请求之前成为本地网守。

由于您已经记录了下一个请求,这将是一个肯定的验证码的结果,那么除了再次运行脚本之外,您可能什么都不做,而不需要承受任何其他需要到位以执行下一个验证码的动态数据页。

于 2013-07-01T00:47:52.243 回答