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脚本开发规范的更多相关文章

  1. loadrunner 脚本开发-参数化之将内容保存为参数、参数数组及参数值获取

    转自:http://blog.sina.com.cn/s/blog_13cc013b50102v49c.html(查看原文) 在VuGen中默认使用{}的字符串称为参数 注意:参数必须在双引号中才能用 ...

  2. Loadrunner 脚本开发-利用loadrunner开发Windows Sockets协议脚本

    脚本开发-利用loadrunner开发Windows Sockets协议脚本 by:授客 QQ:1033553122 欢迎加入软件性能测试交流QQ群:7156436 实践举例 Socket服务端简单实 ...

  3. Loadrunner脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试

    脚本开发-基于HTTP协议的流媒体视频在线播放服务器性能测试 by:授客 QQ:1033553122   目的 实现基于http协议的流媒体在线视频播放,服务器性能测试脚本,模拟用户浏览器方式在线播放 ...

  4. Loadrunner 脚本开发-利用Loadrunner生成Web service测试脚本

    脚本开发-利用Loadrunner生成Web service测试脚本 1.选择协议--Web Service,如下图 2.导入服务 入口1:点击Manage Services ->弹出窗中选择“ ...

  5. loadrunner 脚本开发-执行操作系统命令

    脚本开发-执行操作系统命令 by:授客 QQ:1033553122 思路: 用loadrunner system()函数 函数原型: int system( const char *string ); ...

  6. loadrunner 脚本开发-文件下载

    脚本开发-文件下载 by:授客 QQ:1033553122 下载简介 对 HTTP协议来说,无论是下载文件或者请求页面,对客户端来说,都只是发出一个GET请求,并不会记录点击后的“保存”.“另存为操作 ...

  7. loadrunner 脚本开发-基本知识

    脚本开发-基本知识 1)编码工具设置 自动补全输入Tools->General Options->Environment->Auto complete word 显示功能语法Tool ...

  8. Loadrunner 脚本开发-利用web_submit_data函数实现POST请求

    脚本开发-利用web_submit_data函数实现POST请求   by:授客 QQ:1033553122 概述 web_link()和web_url()函数都是页面访问型函数,实现HTTP请求中的 ...

  9. Loadrunner 脚本开发-从文件读取数据并参数化

    脚本开发-从文件读取数据并参数化 by:授客 QQ:1033553122   直接上代码: char* testfn() { int count, total = 0; //char buffer[1 ...

随机推荐

  1. Xshell连接Linux服务器总掉线

    Xshell连接linux服务器总掉线,解决办法如下: 1.登录服务器后 [root@test134 ~]# cd /etc/ssh/ [root@test134 ssh]# vim sshd_con ...

  2. [Luogu 1197] JSOI2008 星球大战

    [Luogu 1197] JSOI2008 星球大战 我算是真的沦为联赛选手了. 并查集裸题. 比较麻烦的是删点. 但是从后往前加点就好操作很多. 所以考虑离线,先存图,然后没被删的点之间,有边就合并 ...

  3. python 操作PPT练习

    from pptx import Presentation from pptx.util import Pt, Inches prs = Presentation() slide = prs.slid ...

  4. 您是哪个等级的CSS开发人员?

    我们在不断的学习,追求进步与提高,到底学到什么程度了,到底是 不是真的了解CSS,是哪个层次了呢.我们来对照一下. 第0级:CSS?那不是一个多人射击游戏吗?  CSS? Isn't that a m ...

  5. 【洛谷 P2865】 [USACO06NOV]路障Roadblocks(最短路)

    题目链接 次短路模板题. 对每个点记录最短路和严格次短路,然后就是维护次值的方法了. 和这题一样. #include <cstdio> #include <queue> #in ...

  6. Perl6多线程2: Promise new/keep/bread/status/result

    来源于个人理解的翻译. 创建一个 promise: my $p = Promise.new; 可以打印运行 的Promise 状态: my $p = Promise.new(); $p.then({s ...

  7. 如何将vmworkstation的虚机导成ovf模版

    如何将vmworkstation的虚机导成ovf模版 最近碰见一个事情挺烦的苦恼了我好长一段时间,是这样的公司要进行攻防演练需要搭建一个owaps的靶站练手,环境我在我的电脑上已经搭好了(vmwork ...

  8. 超简便安装mysql

    CentOS7默认数据库是mariadb,配置等用着不习惯,因此决定改成mysql,但是CentOS7的yum源中默认好像是没有mysql的.为了解决这个问题,我们要先下载mysql的repo源. 1 ...

  9. Linux实用命令之git-svn

    近日发现了有一个工具,git-svn,可以打通git svn之间的鸿沟. 很适合习惯于git,却需要维护svn代码的同学. 安装 sudo apt-get install git-svn 具体使用就不 ...

  10. C++ 内联函数inline

    http://blog.csdn.net/u011327981/article/details/50601800 1.  内联函数 在C++中我们通常定义以下函数来求两个整数的最大值: 复制代码 代码 ...