1、注册、登录、获取商品列表lr脚本

Action()
{   
    lr_save_string("192.168.46.129:8080","IP");
    注册
    web_reg_save_param_ex(
        "ParamName=注册结果",
        "LB={\"code\":",
        "RB=,\"msg\":",
        "Ordinal=1",
        SEARCH_FILTERS,
        LAST);

lr_start_transaction("注册");

web_custom_request("注册",
        "URL=http://{IP}/mobile/api/user/register",
        "Method=POST",
        "TargetFrame=",
        "Resource=0",
        "Referer=",
        "Mode=HTTP",
        "EncType=application/json;charset=utf-8",
        "Body={\"mobile\":\"{mobile}\",\"password\":\"{username}\",\"code\":\"3367\",\"platform\":\"windows\",\"username\":\"\",\"sex\":1,\"age\":20,\"email\":\"\"}",
        LAST);
    
    
    if(strcmp(lr_eval_string("{注册结果}"),"0")==0)
    {
    lr_end_transaction("注册", LR_PASS);
    lr_output_message("注册成功,返回响应码%s",lr_eval_string("{注册结果}"));
    }
    else
    {
    lr_end_transaction("注册", LR_FAIL);
    lr_error_message("注册失败,返回响应码%s",lr_eval_string("{注册结果}"));
    }
    
    
    //登录
    web_reg_save_param_ex(
        "ParamName=登录结果",
        "LB={\"code\":",
        "RB=,\"msg\":",
        "Ordinal=1",
        SEARCH_FILTERS,
        LAST);

lr_start_transaction("登录");

web_custom_request("登录",
        "URL=http://{IP}/mobile/api/user/login",
        "Method=POST",
        "TargetFrame=",
        "Resource=0",
        "Referer=",
        "Mode=HTTP",
        "EncType=application/json;charset=utf-8",
        "Body={\"mobile\":\"{mobile}\",\"password\":\"{password}\"}",
        LAST);
    lr_output_message("用户名:%s",lr_eval_string("{mobile}"));
    lr_output_message("密码:%s",lr_eval_string("{password}"));

if(strcmp(lr_eval_string("{登录结果}"),"0")==0)
    {
    lr_end_transaction("登录", LR_PASS);
    lr_output_message("登录成功,返回响应码%s",lr_eval_string("{登录结果}"));
    }
    else
    {
    lr_end_transaction("登录", LR_FAIL);
    lr_error_message("登录失败,返回响应码%s",lr_eval_string("{登录结果}"));
    }

//获取商品列表
    web_reg_save_param_ex(
        "ParamName=获取商品列表结果",
        "LB={\"code\":",
        "RB=,\"msg\":",
        "Ordinal=1",
        SEARCH_FILTERS,
        LAST);

lr_start_transaction("获取商品列表");

web_custom_request("商品列表",
        "URL=http://{IP}/mobile/api/goods/gettypes",
        "Method=GET",
        "TargetFrame=",
        "Resource=0",
        "Referer=",
        "Mode=HTTP",
        "EncType=application/json;charset=utf-8",
        "Body={\"type\":1,\"offset\":\"\",\"size\":\"\"}",
        LAST);

if(strcmp(lr_eval_string("{获取商品列表结果}"),"0")==0)
    {
    lr_end_transaction("获取商品列表", LR_PASS);
    lr_output_message("获取商品列表成功,返回响应码%s",lr_eval_string("{获取商品列表结果}"));
    }
    else
    {
    lr_end_transaction("获取商品列表", LR_FAIL);
    lr_error_message("获取商品列表失败,返回响应码%s",lr_eval_string("{获取商品列表结果}"));
    }

return 0;
}

2、文件参数化、数据库参数化、其它参数化

3、参数化九种取值方式

lr12脚本参数化的更多相关文章

  1. JMeter脚本参数化和断言设置( CSV Data Set Config )

    用Badboy录制了Jmeter的脚本,用Jmeter打开后形成了原始的脚本.但是在实际应用中,为了增强脚本的多样性,就要使脚本参数化.这里我以登录为例,参数化用户账号与用户密码.  图1 :原始脚本 ...

  2. Jmeter_脚本参数化与内存溢出的解决方案

    这一篇文章随便说一下JMETER的脚本参数化 1:Parameters的两种参数化方法 1.1:函数助手参数化 首先准备你的参数数据.我在bin/data中新建了一个dat文件,记事本另存为修改编码为 ...

  3. LoadRunner脚本参数化之设置条件与运行结果说明

    性能测试中为什么需要进行参数化? 1.功能方面:首先要保证脚本的功能完善.可用性.(一般来说,参数化主要针对业务中的具备唯一性的数据.) 2.性能方面:一般来说,如果服务器存在缓存机制,在测试过程中, ...

  4. Jmeter(二十一)_脚本参数化与内存溢出的解决方案

    这一篇文章随便说一下JMETER的脚本参数化 1:Parameters的两种参数化方法 1.1:函数助手参数化 首先准备你的参数数据.我在bin/data中新建了一个dat文件,记事本另存为修改编码为 ...

  5. badboy脚本参数化和检查点

    一.badboy脚本参数化 文本参数化 方式一:直接在Variablesl ist添加参数化变量和值,然后在Script里面找到对应需要参数化的内容-属性,进行替换,参数化名需要用${XX}引用: 方 ...

  6. 持续集成高级篇之Jekins脚本参数化构建

    系列目录 本系列已经很久没有更新了,接前面基础篇,本系统主要介绍jenkins构建里的一些高级特性.包括脚本参数化,Jenkins Pipeline与及在PipeLine模式下如何执行常见的传统构建任 ...

  7. LoadRunner脚本参数化设置

    LoadRunner,是一种预测系统行为和性能的负载测试工具,其中VUG(Virtual User Generator)主要用于虚拟用户生成和脚本编辑.为了实现单用户多次迭代执行脚本,VUG提供了强大 ...

  8. LoadRunner脚本参数化之自动关联和手动关联

    一.关联的意义  1.关联的含义 关联(correlation):在脚本回放过程中,客户端发出请求,通过关联函数所定义的左右边界值(也就是关联规则),在服务器所响应的内容中查找,得到相应的值,以变量的 ...

  9. 性能测试-6.VUG脚本参数化

    前言:(原文地址)版面调整 什么是VUGEN action以及作用 参数化 参数化取值(9种组合,在不同场景中如何运用) 一.VUGEN是 LoadRunner 用于开发 Vuser 脚本的主要工具. ...

随机推荐

  1. future then

    import 'dart:async'; main(){ Future(()=>a1()) .then((x)=>a2(x)) .then((x)=>a3(x)) .then((x) ...

  2. AOP之proceedingjoinpoint和joinpoint区别(获取各对象备忘)、动态代理机制及获取原理代理对象、获取Mybatis Mapper接口原始对象

    现在AOP的场景越来越多,所以我们有必要理解下和AOP相关的一些概念和机制. import org.aspectj.lang.reflect.SourceLocation; public interf ...

  3. net应用程序池自动关闭的解决方法

    while (true) { using (ServerManager sm = ServerManager.OpenRemote("localhost")) { string p ...

  4. Android5.0新特性之——按钮点击效果动画(涟漪效果)

    Android5.0 Material Design设计的动画效果 RippleDrawable涟漪效果 涟漪效果是Android5.0以后的新特性.为了兼容性,建议新建drawable-v21文件夹 ...

  5. 7、Dockerfile详解

    参考: https://www.imooc.com/article/details/id/25229 https://www.cnblogs.com/panwenbin-logs/p/8007348. ...

  6. 类中为什么要定义__init__()方法

    总结一下, 加上__init__()方法后,类才可以实例化,不加类就是个空壳,相当于一个方法集合 学习Python的类,一直不太理解为什么一定要定义init()方法,现在简要谈一下自己的理解吧. 1. ...

  7. [mysql]You must reset your password using ALTER USER statement before executing this statement.

    原因分析: MySQL版本5.6.6版本起,添加了password_expired功能,它允许设置用户的过期时间.这个特性已经添加到mysql.user数据表,但是它的默认值是”N”,可以使用ALTE ...

  8. WebPack命令执行的时候,其内部处理逻辑是什么

    1.首先webpack发现并没有通过命令的形式,给它指定入口和出口 2.向根目录查找“webpack.config.js”配置文件 3.解析这个配置文件,并得到配置文件中导出的配置对象 4.当拿到配置 ...

  9. 使用Keepalived配置主从热备实现Nginx高可用(HA)

    Keepalived 简要介绍 Keepalived 是一种高性能的服务器高可用或热备解决方案,Keepalived 可以用来防止服务器单点故障的发生,通过配合 Nginx 可以实现 web 前端服务 ...

  10. SpringBoot项目打成一个war包

    springboot 带有内置Tomcat 服务器,可以直接将项目打包成jar运行,运行命令为: java -jar demo.jar 但是如果在需要把项目达成war包该怎么办呢?下面是将spring ...