lordrunner对数组的处理

  1. 首先在请求前加web_reg_save_param获取欲匹配的信息
    //获取所有匹配返回一个数组
    web_reg_save_param("yuf240", //参数名
        "LB=yuf240\":\"",    //左边界
        "RB=\",\"yuf241\":\"0\"}",  //右边界
        "NOTFOUND=WARNING",  //未匹配到只是警告,不报错
        "ORD=ALL",       //若是ALL返回所有,若是数字返回匹配的第几个值
        "Search=Body",   //匹配对象为响应体
        LAST);
  1. 方法一:随机从数组中取一个值
    lr_save_string(lr_paramarr_random("yuf240"),"yuf240va");  //随机从yuf240取一个值存到参数yuf240va(随意取值)
    
    lr_output_message(lr_eval_string("{yuf240va}"));  //打印查看
  1. 方法二:遍历数组 也可随机取值
//随机取值
        
    int arrSize,i=1;
    int rNum;
    char * yuf240val;
    char * tmp;
    //获取数组长度    
    arrSize=lr_paramarr_len("yuf240");
    lr_output_message("%d",arrSize);
    srand(time(NULL));   //需要在前面使用srand(time(NULL));进行重置,否则依然是假随机 
    //取长度范围内的随机整数值
    rNum=rand() % arrSize+1;
    //取数组数值下标的参数值
    yuf240val = lr_paramarr_idx("yuf240",rNum);
    //转码 打印
    lr_convert_string_encoding(yuf240val,LR_ENC_UTF8 ,LR_ENC_SYSTEM_LOCALE,"yuf240val");
    lr_output_message(lr_eval_string("{yuf240val}"));
// 使用for循环根据数组长度遍历数组内容
    for (;i <=arrSize;i++){
        tmp=lr_paramarr_idx("yuf240",i);
        
        //对内容进行转码,保存到一个数组中进行输出
        lr_convert_string_encoding(
            tmp,
            LR_ENC_UTF8,
            LR_ENC_SYSTEM_LOCALE,
            "p_convert"
        );
        lr_output_message(lr_eval_string("{p_convert}"));
    };

你可能感兴趣的:(lordrunner对数组的处理)