如何理解Return的返回值?

发表于:2007-11-02来源:作者:点击数: 标签:
如何理解Return的返回值? 问题: 在创建和录制脚本的时候,发现在脚本vuser_init、Action、vuser_end三部分,都会有一条“return 0;”语句,那么我们平时在编写脚本时如何应用return语句,return不同的返回值又有什么含义呢? 问题解答: Return标识一个过程
如何理解Return的返回值?
问题:
  在创建和录制脚本的时候,发现在脚本vuser_init、Action、vuser_end三部分,都会有一条“return 0;”语句,那么我们平时在编写脚本时如何应用return语句,return不同的返回值又有什么含义呢?
问题解答:
Return标识一个过程的结束,在LoadRunner 中用return 不同的返回值根据脚本不同的返回值,表示脚本的成功或者失败。“return + 大于等于零的数字 ;”表示成功,反之,则表示失败。
下面通过一个实例脚本来深入理解一下return语句。
相应脚本代码:
#include "web_api.h"

Action()
{
    LPCSTR user1="悟空";
        LPCSTR user2="八戒";

    if ((user1=="悟空") || (user1=="猴哥"))
      {
                   lr_output_message("悟空和猴哥是同一个人!");
                   return 0;
       }
   else
       {   
             lr_output_message("我是八戒不是悟空!");
         return -1;
        }
     lr_output_message("这句话永远不会被执行!");
}
【脚本分析】
该段脚本事先声明了两个字符串变量user1和user2,而后判断user1变量是否为“悟空”或者“猴哥”,如果是则输出“悟空和猴哥是同一个人!”,否则输出“我是八戒不是悟空!”。因为return 语句执行完成以后,后面的语句将不会被执行,所以最后一句话将永远不会被执行,即:“这句话永远不会被执行!”不会被输出。下面我们看一下上面脚本的执行日志结果为
Running Vuser...
Starting iteration 1.
Starting action Action.
Action.c(10): 悟空和猴哥是同一个人!
Ending action Action.
Ending iteration 1.
Ending Vuser...
如果将上面的脚本“if ((user1=="悟空") || (user1=="猴哥"))”变更为“if ((user2=="悟空") || (user2=="猴哥"))”,则脚本的执行日志结果为,通过【View】>【Test Results...】查看结果,因为返回值为-1.

原文转自:http://www.ltesting.net