LoadRunner脚本编码规范

众所周知,LoadRunner为业界的标准性能测试工具,那么作为一名性能测试工程师,我们应如何运用该工具LoadRunner来开发可读性强、简洁、美观的性能测试脚本呢?其实使用过LoadRunner的朋友都知道,LoadRunner是支持C Vuser、Java Vuser等协议的,因此针对于C语言、Java语言的编码规范也同样适用于LoadRunner。由于自己平时在性能测试工作中,接触更多的是C语言,因此将针对C语言的编码规范进行简单说明。由于LoadRunner的脚本相对简单,C语言编程中的许多特性用不到,因此需要从C语言规范中做适当简化,以下为自己在LoadRunner脚本开发中遵循的部分规范:

1、注释

规则1.1 文件头部应进行注释,注释必须列出:版权说明、文件名、版本号、生成日期、作者姓名、功能说明、与其它文件的关系、修改日志等,如下:

/************************************************* 
*
**Copyright ©:XX公司测试部
**File name:      // 文件名   
**Author:         // 作者
**Version:       //版本号
**Date:         //生成日期
**Description:    // 用于详细说明此程序文件完成的主要功能,与其他模块或函数的接口,输
                     出值、取值范围、含义及参数间的控制、顺序、独立或依赖等关系   
**Others:       // 其它内容的说明 
**History:     // 修改历史记录列表,每条修改记录应包括修改日期、修改者及修改内容简述     
          1. Date: 
                  Author:              
               Modification:    
          2. ... 
**----------------------------------------------------------------------------
*************************************************
*/

规则1.2 函数声明处注释描述函数功能及用法,包括输入和输出参数、返回值等;定义详细描述函数功能和实现要点等,如下:

/*****************************************************************
 ** Function name: 
** Author: 
** Date: 
** Input parameters: a,b,c
 ** a--- 
** b--- 
** c--- 
** Output parameters: x--- 
** x 为 1, 表示...
** x 为 0, 表示... 
** Description:
**History: // 修改历史记录列表,每条修改记录应包括修改日期、修改者及修改内容简述     
          1. Date: 
                  Author:              
               Modification:    
          2. ... 
**-------------------------------------------------------------------
*****************************************************************
*/

规则1.3 程序中的注释模板

/*----------------------------------------------------------*/ 
/* 注释内容  */ 
/*----------------------------------------------------------*/

2、标识符命名与定义

规则2.1 标识符的命名要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解,如下:

int error_number;  
int number_of_completed_connection;

规则2.2 文件命名统一采用小写字符:因为不同系统对文件名大小写处理会不同(如MS的DOS、Windows系统不区分大小写,但是Linux系统则区分),所以代码文件命名建议统一采用全小写字母命名

规则2.3 变量命名规则:命名必须具有一定的实际意义,形式为xAbcFgh,x由变量类型确定,Abc、Fgh 示连续意义字符串,如果连续意义字符串仅两个,可都大写,如OK。
注:全局变量应增加“g_”前缀;静态变量应增加“s_”前缀;

规则2.4 函数命名规则:以函数要执行的动作命名,一般采用动词或者动词+名词的结构。
示例:找到当前进程的当前目录

DWORD GetCurrentDirectory( DWORD BufferLength, LPTSTR Buffer )

注:函数不变参数使用const

3、变量

规则3.1 一个变量只有一个功能,不能把一个变量用作多种用途
规则3.2 不用或者少用全局变量
规则3.3 防止局部变量与全局变量同名
规则3.4 在首次使用前初始化变量,初始化的地方离使用的地方越近越好

示例: 
//不可取的初始化:无意义的初始化 
int speedup_factor = 0; 
if (condition) { 
    speedup_factor = 2; 
}
 else { 
    speedup_factor = -1; 
} 
//不可取的初始化:初始化和声明分离 
int speedup_factor; 
if (condition) { 
    speedup_factor = 2; 
} 
else { 
    speedup_factor = -1; 
}

//较好的初始化:使用默认有意义的初始化
int speedup_factor = -1; 
if (condition) { 
    speedup_factor = 2; 
}  
//较好的初始化使用?:减少数据流和控制流的混合
 int speedup_factor = condition?2:-1;  
//较好的初始化:使用函数代替复杂的计算流 
int speedup_factor = ComputeSpeedupFactor();

规则3.5 在两个以上的关键字、变量、常量进行对等操作时,它们之间的操作符之前、之后或者前后要加空格,如:

//不可取的写法
result=tmp1*tmp2;
//较好的写法 
result = tmp1 * tmp2;

规则3.6 一行最好只写一条语句,包括一行只声明一个变量
规则3.7 数组声明时要显式的标识大小

//不可取的写法
char TempArray[] = “HP Mercurry”;
//较好的写法
char TempArray[11] = “HP Mercurry”;

4、事务名称的定义
规则4.1 为了提升后续的性能指标数据整理效率,事务名称的定义需要按一定的规则进行,
如:01_001_审核提交
01——————–脚本编号
001——————事务编号
审核提交————事务的简要说明

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值