天天看点

《LoadRunner 12七天速成宝典》—第2章2.5节参数和变量

本节书摘来自异步社区《loadrunner 12七天速成宝典》一书中的第2章,第2.5节参数和变量,作者陈霁,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.5 参数和变量

云云:接着来说一下关于编程实现的方式,编程实现有两条路径:一个是走纯变量,另一个是走变量转参数。

恋恋:变量和参数有什么区别来着?

云云:前面不是说过么,参数是特殊的变量,参数是lr(loadrunner的缩写)级别的,变量是c级别的。变量是属于语言体系的,所以它需要符合c语言或者当前脚本语言体系的基本语法规范,比如:

这里我用了3种变量,整型、字符串数组、指针型字符串,并且对其进行了赋值以及输出。

恋恋:c语言我懂,当年大学我c语言学的可好了,输出是system.out.print,对吧。

云云:那是java,c语言是sprintf。

恋恋:快讲参数!

云云:在lr中还有一种东西就是参数,其实前面你一直在用,但是用了所谓的参数化的概念,所谓的参数就是你看到可以用“{}”访问的内容,我们通过一个代码可以将参数的值转化为变量,也可以通过另外一个参数把变量转化为参数。

恋恋:貌似好像,也许,确实讲过。

云云:看懂下面的代码,我们就可以准备出门了。

恋恋:让我运行一下看看。

(几分钟过去后)

恋恋:哈哈,以我的聪明才智还能搞不定你这点小问题,这里temp是一个参数,你写了个函数lr_save_string把变量y的值保存到了temp中,然后我记得lr_output_message后面要带字符串,所以你用lr_eval_string把temp参数的值取了出来转成了字符串,所以最后就输出了,对吧。

云云:赞许地点了点头。那么要做大量数据参数化怎么办呢?

恋恋:我来写个代码看看。

奇怪为啥运行不起来呢?

云云:c语言的语法比较严谨,在这里lrsave_string需要把一个字符串保存到一个参数中去,但是_i是一个整型。

恋恋:那该怎么办呢?

云云:其实解决办法很简单,按一下f1键试试!

恋恋:我想偷懒,算了我还是自己试试。

恋恋:我就知道很简单,帮助里面有个lr_save_int函数,这个东西就能把整型放进参数,看代码。

云云:嗯,但是你这个是数字,如果要用字符串呢?

恋恋:是不是还要别的函数啊?

云云:是的,算了这个不考你了,你看看我写的代码就懂了。

看懂我们就出门吃饭!

恋恋:sprintf这个函数好厉害,懂了,快出发吧!

**小结

能够区分变量和参数,熟悉参数变量的转换,对参数的跟踪有一定的了解。**