zoukankan      html  css  js  c++  java
  • LoadRunner脚本开发:关联和检查点(二)

    一. 录制飞机订票系统前期准备:

    1. 启动webTours

      开始 > HP Software > HP LoadRunner > Samples > web > Start HP Web Tours Server

    2. 浏览器访问 webTours

      开始 > HP Software > HP LoadRunner > Samples > web > HP web Tours Application

      账户密码:jojo/bean   Jojo/bean

      用户信息文件:E:programsHP LoadRunner 12.02 Community EditionLoadRunnerWebTourscgi-binusers

    3. 启动 fiddler

    4. 启动 virtual user generator

      add new script

        协议:web-http/html、名称

      Record Options  Ctrl + F7

      Recording   Ctrl + R

    第一行是密码,第二行是用户名

    或者也可以注册一个

    二. 了解WebTours功能

    首页

      > 左侧:用户登录

      > 右侧:sign up now ==> 注册用户入口

          administration ==> 设置页面

    登录

      > Flights ===> 订票航班信息

      > Itineray ===> 订票记录

      > Home

      > Sign off ===> 退出

    三. 录制订票Recording

    1. Start Recording

      URL address:http://127.0.0.1:1080/WebTours/index.htm

    2. 录制

    3. Compile  Shift + F5

      语法检查

    4. Replay   F5

      回放

    开始登录前,插入事务

    登录后,结束事务

    开始订票前,插入事务

    选择航班信息后,结束事务

    选择时间点,插入事务

    选择时间后,关闭事务

    文本检查点

    插入退出事务

    关闭事务,停止录制

     

     

    系统自动关联后的脚本

    /*Correlation comment - Do not change!  Original value='127394.791656541zffcizQpfQfiDDDDDQDVHpcVHfHf' Name ='userSession' Type ='ResponseBased'*/
        web_reg_save_param_regexp(
            "ParamName=userSession",
            "RegExp=name="userSession"\ value="(.*?)"/>\
    <table\ border",              //这里是一个正则
            SEARCH_FILTERS,
            "Scope=Body",
            "IgnoreRedirections=No",
            "RequestUrl=*/nav.pl*",
            LAST);

     

    四. 回放 Replay

    1. Output

      回放日志

        Starting iteration

        红色有错误,回放失败

        Ending iteration

        view summary > The test Results

          Test Results  显示回放内容快照

    F5 回放成功,去掉Summary页面

     

    如果又想看到Summary页面,点击Output日志,View summary

    Test Results中的快照

    设置迭代  F4

    假设迭代3次,3次之后,可以看到三张票的信息完全一致

    五. 参数化

    为了每次迭代都能得到不同的信息,对城市名称做参数化

    选中城市名称,右键,选择Replace with Parameter,然后选择Create New Parameter...

    变量名称自定义,类型为file,然后点击Properties...配置其他城市名

    用{参数}表示参数化,当然也可以自定义参数化符号

    同样,也参数化到达城市

    迭代3次后,发现3张票都是从Denver到London

    查看参数化后的变量值,Tools——Options——Scripting——勾选Collect replay statistics

    可以从Runtime Data中查看参数的变化

    刚刚关联城市没有随机是因为这个地方是固定的,可以猜测021是出发城市id,437是到达城市id,后面是日期时间

    在选择城市的方法上,右键,选择Show Snapshot,可以看到请求参数和响应结果

    将响应的html结果拷贝到Notepad++,打开,可以搜索到刚才的021;437;11/03/2019

    也可以去页面里按F12查看

    这就是关联,前面一个页面的响应结果后面的页面需要,注意这个正则后面有checked=checked,因为后面页面需要的出发到达地点都是已选中的。关联的时候,关联函数要放在前面页面函数的前面,如B依赖A,关联函数要放在A前面。以web_reg开头的函数都是注册函数,要写在被提取函数的前面

    web_reg_save_param_regexp(
            "ParamName=boundFlight",
            "RegExp=name="outboundFlight" value="(.*?)" checked="checked"",
            SEARCH_FILTERS,
            "Scope=Body",
            "IgnoreRedirections=No",
            "Ordinal=1",                //Ordinal需要添加
            LAST );

    有两个方法需要参数化下

    验证结果,可以看到第一组是Denver到Frankfurt,第二组是London到Seattle,第三组是Paris到Sydney,这个其实和jmeter遍历csv是一个道理

    六. 函数

    1. 选中函数名称,按F1,进入函数使用帮助。加*是必传的

    int web_url( const char *StepName, const char *url, <List of Attributes>, 
    [EXTRARES, <List of Resource Attributes>,] LAST );

    const char *StepName,const char *url:必要参数

    <List of Attributes>:属性参数,可以写多个也可以不写,可选

    [EXTRARES, ]:扩展参数,可选

    LAST:结束标记

    Example:可以直接修改案例内容

    2. web_sumit_data函数是不依赖上下文的,也就是上个页面执行出错,不影响这个函数的执行,web_submit_form也是用于post请求,它是依赖上下文的

    3. web_reg_save_param_regexp 实际上是注册函数,有reg的都是注册函数,web_reg_save_param也是正则函数,LR12推荐使用前者

    4. web_reg_text:查找文本函数

  • 相关阅读:
    I.MX6 RGB clock 和 data 重合
    git 一次删除所有删除的文件
    C# ListView 列宽调整 刷新
    I.MX6 dhcpcd 需要指定网卡
    VS 一些用法设置
    Java写的爬虫的基本程序
    jQuery HighchartsTableHTML表格转Highcharts图表插件
    highcharts 去掉打印和链接
    Highcharts选项配置详细说明文档
    Highcharts使用指南
  • 原文地址:https://www.cnblogs.com/my_captain/p/11784673.html
Copyright © 2011-2022 走看看