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

by:授客 QQ1033553122

----------------接 Part 1---------------


把内容保存到参数数组

这个概念lr9.x后才有

参数数组必须满足以下两个条件:

1.参数必须都是以相同的名字开头,后面接下划线加数字的方式顺序赋值。

2.参数数组必须有一个“参数名_count”的参数来记录数组的长度

相关函数:

lr_paramarr_idx()  
  //获取参数数组中指定编号的参数的值

lr_paramarr_len()    
//获取参数数组的长度

lr_paramarr_random() 
//从参数列表中随机获取一个参数

例子:要创建一个访问网站的参数数组,可以编写以下代码

说明:通过脚本创建了一个名为website的参数数组,并获取编号为2的参数的值,

运行结果:

此处:web_site
= lr_paramarr_idx("website", 2),等同:lr_eval_string(“{website_2}”);

获取参数数组长度

例子:

Action2()

{

int
array_size = 0;

char
*arr_size_str = NULL;

lr_save_string("www.google.com", "website_1");

lr_save_string("www.google.com", "website_2");

lr_save_string("www.google.com", "website_3");

lr_save_string("www.google.com", "website_4");

lr_save_string("4", "website_count");

array_size = lr_paramarr_len("website");

//输出整数

//1.把结果array_size保存为参数

lr_save_int(array_size, "arr_size");

//2.获取参数的字符串表示

arr_size_str = lr_eval_string("{arr_size}");

//输出结果

lr_output_message(arr_size_str);

return 0;

}

运行结果:

从参数列表中随机获取一个参数

例子:

Action2()

{

char
*web_site = NULL;

lr_save_string("www.google.com", "website_1");

lr_save_string("www.google.com", "website_2");

lr_save_string("www.google.com", "website_3");

lr_save_string("www.google.com", "website_4");

lr_save_string("4", "website_count");

web_site = lr_paramarr_idx("website", 2);

return 0;

}

运行结果:

例子:按顺序输出每个参数

Action2()

{

int i
= 0;

lr_save_string("www.google.com", "website_1");

lr_save_string("www.google.com", "website_2");

lr_save_string("www.google.com", "website_3");

lr_save_string("www.google.com", "website_4");

lr_save_string("4", "website_count");

for (i=0; i

{

lr_output_message(lr_paramarr_idx("website", i));

}

return 0;

}

输出结果


 


用指针变量存放参数

Action2()

{

char
*pt = NULL;

lr_save_string("hello world", "param");

pt =
"{param}";

lr_output_message(pt);

lr_output_message(lr_eval_string(pt));

return 0;

}

运行结果:


loadrunner 脚本开发-参数化之将内容保存为参数、参数数组及参数值获取Part 2的更多相关文章

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

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

  2. loadrunner脚本中参数化和返回值输出log到外部文件

    loadrunner脚本中参数化和返回值输出log到外部文件 很多时候,我们在做性能测试之前,需要造数据,但是使用的这些参数化数据和生成的返回数据在后面的测试都会用的,所以我们需要在造数据过程中,将参 ...

  3. loadrunner 脚本优化-参数化之Parameter List参数同行取值

    脚本优化-参数化之Parameter List参数同行取值 by:授客 QQ:1033553122 select next row 记录选择方式 Same line as,这个选项只有当参数多余一个时 ...

  4. Loadrunner脚本开发规范

    Loadrunner脚本开发规范 目录 1.一般约定... 3 2.代码注释约定... 4 3.格式化代码... 5 1.一般约定 1.1具体脚本规则,必须在具体代码中加注释,以便脚本开发人员阅读和理 ...

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

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

  6. loadrunner 脚本优化-参数化方法

    脚本优化-参数化方法 by:授客 QQ:1033553122 方法一 1.确定需要参数化的内容 2.选中需要参数化的内容 3.右键选中的内容->Replace with a Parameter- ...

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

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

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

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

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

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

随机推荐

  1. Bootstrap轮播如何支持移动端左右滑动

    一直觉得bootstrap的轮播用起来很好用,代码简单,又支持响应式,不过从来没想过,也不知道原来bootstrap的轮播竟然不支持在手机上左右滑动 解决方法就是:使用滑动手势js插件:hammer. ...

  2. NHibernate删除数据时遇到deleted object would be re-saved by cascade级联问题

    今天在处理数据时遇到了这个问题,数据是一对多的关系,A包含多个B,想将某个B从A中移除,在保存时抛出如标题的问题,查找了下资料得知:由于在配置文件中设置了cascade为all,A和B存在级联关系,那 ...

  3. C++primer笔记之顺序容器

    最近又重新拾起C++primer,发现每一次看都会有不同的体验,但每一次看后因为不常用,忘记得很快,所以记笔记是很关键的一环,咋一看是浪费时间,实际上是节省了很多时间.下面就把这一节的内容做一个简单的 ...

  4. Maven Optional & Exclusions 使用区别

    Optional和Exclusions都是用来排除jar包依赖使用的,两者在使用上却是相反. Optional定义后,该依赖只能在本项目中传递,不会传递到引用该项目的父项目中,父项目需要主动引用该依赖 ...

  5. 13-部署traefik-ingress插件

    Kubernetes traefik ingress安装 Ingress简介 如果你还不了解,ingress是什么,可以先看下我翻译的Kubernetes官网上ingress的介绍Kubernetes ...

  6. 递归查询区域信息及子区域到advTree

    效果: DataTable dtArea = new DataTable(); private void Form1_Load(object sender, EventArgs e) { Node n ...

  7. Centos 7 安装 rabbitmq

    1.安装erlang rabbitmq 官方下载地址 "http://www.rabbitmq.com/download.html" ,选择"RHEL, CentOS, ...

  8. 持续集成工具-Jenkins 使用介绍

    Jenkins 是一个可扩展的持续集成引擎,可以为我们提供代码自动编译.打包和发布工作,减少部署成本. 一.安装与启动 Jenkins 提供了多种便捷的安装方式,比较推荐使用执行 war 包的方式. ...

  9. Eclipse创建web项目目录结构

    效果图如下: 0 新建Web项目 1.右击项目MyProject进入Java Build Path 2. 点击Add Folder按钮,进入如下界面 3.选择src,点击Add New Folder按 ...

  10. error: device unauthorized —— android studio 链接不上虚拟机

    问题原因: 以前用Eclipse开发的时候在环境变量里配置了ANDRIOD_SDK_HOME. 解决方法: 将电脑环境变量中的ANDRIOD_SDK_HOME删除,重新运行adb devices,手机 ...