上面我们介绍了单个数据变量的pvar。如果是矩阵变量,该怎么处理呢?一般来说,我们需要用这种变量来存储一组数据,比如在一个HTML页面里包含的一组URL列表。在EP脚本里,一个pvar变量也可以是一个矩阵变量,你只需要用一个索引(Index)来获取其中的每一个数值。
下面是一个从Google Group Discussion获取到的案例,它显示了在LoadRunner脚本里,如何从一个Http Response里面抓取一组字符串数值,并且把他们打印出来。
web_reg_save_param ("IDValues", "LB=value=\"", "RB=\"", "Ord=All", LAST);
// get number of matches
nCount = atoi(lr_eval_string("{IDValue_count}")); for (i = 1; i <= nCount; i++) {
// create full name of a current parameter
sprintf(szParamName, "{IDValue_%d}", i);
// output a value of current parameter
lr_output_message("Value of %s: %s",szParamName, lr_eval_string(szParamName)); }
在EP脚本里,相同的功能只要简单的用下面语句就可以实现了。
IDValues = substring(http.replyBody, "value=\"", "\"", "all")
i = 0
while i < getSize(IDValues)
logMsg(sprintf("Value of %d is %s\n", i, IDValues))
i ++
endwhile
而在EP脚本里,我们可以通过下面的参数很容易的实现:
http.respCode
http.request
http.replyHeader
http.replyBody
http.finalRespTime : The time it took beween http request and entire http response is received.