Loadrunner脚本开发规范
Loadrunner脚本开发规范
目录
1.一般约定... 3
2.代码注释约定... 4
3.格式化代码... 5
1.一般约定
1.1具体脚本规则,必须在具体代码中加注释,以便脚本开发人员阅读和理解脚本。
1.2脚本的存放规则:
测试脚本应该存储在指定的库中,例如一个共享的驱动盘或测试管理工具中。为节省空间,便于复用,测试脚本的文件夹下的: result,res,date 文件夹,后缀名为:.idx .log .txt 文件都可不必保留。
1.3脚本中 auction的命名规则:
录制脚本前有个命名规则非常有必要,否则同一动作会有多个事务,会给数据收集、分析带来不必要的麻烦。
假设某J2EE系统实现开户、销户业务,那么自然会有Login、OpenAccount、DestroyAccount和LoginOut动作。那么录制LR脚本时,脚本中的Action列表应该为:
脚本1:初始化-Login-OpenAccount-LoginOut-结束动作
脚本2:初始化-Login-DestoryAccount-LoginOut-结束动作
(即只有一个动作不同)
这样做其目的是创建场景Scene时,在Login、LoginOut的事务只被记录一次
1.4 变量命名规则
变量的命名的基本原则是使得变量的含义能够从名字中直接理解。可以用多个英文单词拼写而成,每个英文单词的首字母要大写,其中英文单词有缩写的可用缩写;变量的前缀表示该变量的类型;对于作用域跨越10行以上的变量名称不能少于4个字符,除循环变量,累加变量外不得使用I、j、k等名称的变量。变量分为取全局变量和局部变量,对于全局变量以加前缀“g_”来区分
1.5 常数名规则
常量所有的字母均为大写。并且单词之间使用下划线”_”隔开。例如:
USER_LIST_MAX
NEW_LINE
1.6 函数名命名规则
函数/过程名称应该尽量使用能够表达函数功能的英文名称,函数名称中应该禁止使用如同function1,function2等含义不清的名称。单词间应该使用大小写分隔。全局函数/过程名称以“g_”前缀开始。代码注释约定
2.代码注释约定
在软件中对每个文件头,自定义函数和变量,重要的处理过程都要有必要的注释。
2.1 源程序头的注释和规范
每个文件头插入注释,标明文件的用途和作者,注释如下:(注释尽量用中文)
//程序名称
//版权说明
//版本号:
//功能:
//开发人:
//开发时间:
//修改者:
//修改时间
//修改简要说明
//其他
2.2 函数的注释
每个函数前面注明函数的功能和输入,输出。注释为:
//名称
//功能:(说明函数的功能)
//输入参数:(说明每个输入参数的用途和取值约定)
//输出参数:(说明每个输出参数的用途和取值约定)
//返回:(说明返回值,返回值的含义和约定)
2.3 变量注释
直接在变量后面注明变量的用途和取值约定,如:
int status; //记录处理状态,0: 成功,1: 错误
2.4 类型定义注释
指类和记录等等定义的注释。在注释中标明定义的用途。
2.5 区的注释
同一个类的成员方法要求排列在一起,共同协作而实现同一个功能的函数和过程要求排列在一起。代码通常使用几个函数和过程来实现某一项功能,这时候需要使用区注释将这些具有共同目的的函数和过程标明出来。
使用整行的”*”作为隔离行,让程序清晰可读。
一般删除的代码不建议直接删除,最好用“//”注释起来。
2.6 代码中的注释
在代码中要求注释的地方有:
代码中的关键部分;
在使用特殊算法或者逻辑性较强的代码;
在修改或删除代码部分,需要加注释;修改/删除人,目的.
3.格式化代码
程序应采用缩进风格编写,每层缩进使用一个制表位(TAB),类定义、方法都应顶格书写;
左花括号要另起一行,不能跟在上一行的行末;
一个变量定义占一行,一个语句占一行;
对独立的程序块之间、变量说明之后必须加空行;
对于较长的语句(>80字符)要分成多行书写,长表达式要在低优先级操作符处划分新行,操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句可读;
循环、判断等语句中若有较长的表达式或语句,则要进行适应的划分;
在结构成员赋值等情况,等号对齐,最少留一个空格;
若函数或过程中的参数较长,则要进行适当的划分。
形参的排序风格:
Ø 最常使用的参数放在第一位;
Ø 输入参数列表应放在输出参数列表的左边;
Ø 将通用的参数放在特殊的参数的左边
Loadrunner脚本开发规范的更多相关文章
- loadrunner 脚本开发-参数化之将内容保存为参数、参数数组及参数值获取
转自:http://blog.sina.com.cn/s/blog_13cc013b50102v49c.html(查看原文) 在VuGen中默认使用{}的字符串称为参数 注意:参数必须在双引号中才能用 ...
- Loadrunner 脚本开发-利用loadrunner开发Windows Sockets协议脚本
脚本开发-利用loadrunner开发Windows Sockets协议脚本 by:授客 QQ:1033553122 欢迎加入软件性能测试交流QQ群:7156436 实践举例 Socket服务端简单实 ...
- Loadrunner脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试
脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试 by:授客 QQ:1033553122 目的 实现基于http协议的流媒体在线视频播放,服务器性能测试脚本,模拟用户浏览器方式在线播放 ...
- Loadrunner 脚本开发-利用Loadrunner生成Web service测试脚本
脚本开发-利用Loadrunner生成Web service测试脚本 1.选择协议--Web Service,如下图 2.导入服务 入口1:点击Manage Services ->弹出窗中选择“ ...
- loadrunner 脚本开发-执行操作系统命令
脚本开发-执行操作系统命令 by:授客 QQ:1033553122 思路: 用loadrunner system()函数 函数原型: int system( const char *string ); ...
- loadrunner 脚本开发-文件下载
脚本开发-文件下载 by:授客 QQ:1033553122 下载简介 对 HTTP协议来说,无论是下载文件或者请求页面,对客户端来说,都只是发出一个GET请求,并不会记录点击后的“保存”.“另存为操作 ...
- loadrunner 脚本开发-基本知识
脚本开发-基本知识 1)编码工具设置 自动补全输入Tools->General Options->Environment->Auto complete word 显示功能语法Tool ...
- Loadrunner 脚本开发-利用web_submit_data函数实现POST请求
脚本开发-利用web_submit_data函数实现POST请求 by:授客 QQ:1033553122 概述 web_link()和web_url()函数都是页面访问型函数,实现HTTP请求中的 ...
- Loadrunner 脚本开发-从文件读取数据并参数化
脚本开发-从文件读取数据并参数化 by:授客 QQ:1033553122 直接上代码: char* testfn() { int count, total = 0; //char buffer[1 ...
随机推荐
- tf.train.batch的偶尔乱序问题
tf.train.batch的偶尔乱序问题 觉得有用的话,欢迎一起讨论相互学习~Follow Me tf.train.batch的偶尔乱序问题 我们在通过tf.Reader读取文件后,都需要用batc ...
- OpenCV---高斯模糊(均值模糊的另一种)
高斯分布: 高斯模糊的原理 一:图像产生高斯噪声循环代码实现(耗时) def clamp(pv): #使我们的随机值在0-255之间 : : return pv import cv2 as cv im ...
- dp+分类讨论 Gym 101128E
题目链接:http://codeforces.com/gym/101128 感觉这个人写的不错的(我只看了题目大意):http://blog.csdn.net/v5zsq/article/detail ...
- spfa+剪枝 或者 dij+手写堆+剪枝 UOJ 111
http://uoj.ac/problem/111 好像NOIP里面的题目...有好多都是...能通过xjbg剪枝来...AC题目的? 得好好学一下这些剪枝黑科技了... 思路:我觉得这位大佬说的很完 ...
- Python学习笔记(补充)Split 用法
>>> u = "www.doiido.com.cn" #使用默认分隔符 >>> print u.split() ['www.doiido.co ...
- Python学习笔记(十)匿名函数
摘抄自:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431843456 ...
- java中集合去重2
1.对集合中的自动定义的对象去重: 自定义Person类,同时复写hashCode和equals方法 package collection; public class Person { private ...
- spring boot(一):入门
Spring Boot的优点 Spring Boot 是伴随着 Spring 4.0 诞生的,从字面理解,Boot是引导的意思,因此 Spring Boot 旨在帮助开发者快速搭建 Spring 框架 ...
- Spring 5.0
Spring 5.0都有什么新功能? 1.最低要求支持JDK8+, J2EE 7+. 2.移除了一些包.类及方法. 3.核心功能加强:全面应用jdk8并兼容jdk9等. 4.SpringMVC:支持s ...
- js获得页面鼠标位置
1.客户区坐标位置:clientX,clientY 鼠标相对于在当前页面可视范围左上角的位置 2.页面坐标位置:pageX,pageY 鼠标相对于页面左上角的位置(受滑动等影响,例如pageY=cli ...