一直在使用LR,对于Html_based script和Url-based script 两种录制方式之间,要如何选择,仍是一知半解。最近测试时遇到同样的业务功能,两种录制方式的脚本,单次执行时间差别很大。html的20多秒,而URL的是3秒。疑问?

Web(HTTP/HTML)协议

录制的是HTTP交互和服务器响应。

Web(HTTP/HTML)可以使用两种方式录制:HTML-based和URL-based。

Web(HTTP/HTML)不直接支持JavaScript,而是把它作为页面资源存储。

Web(Click and Script)协议

对于大部分应用程序,包括那些包含JavaScript的程序,可以使用Web(Click and Script)虚拟用户。对于PeopleSoft Enterprise和Oracle Web Application 11i虚拟用户,也推荐使用这种录制方式,有兴趣可以尝试一下。

对于那些使用applets和vbscript的浏览器应用 程序或非浏览器程序,推荐使用Web(HTTP/HTML)虚拟用户。

Html_based script

  是lr的默认模式,也就是通常说的高层次模式,一般优先选择这种模式这种模式录制的脚本相对简短,便于阅读。它把类属一个页面的请求放在一个web_url中。为每个用户请求生成单独的函数。

  HTML-based 方式对每个页面录制形成一条语句,对LoadRunner来说,在该模式下,访问一个页面,首先会与服务器之间建立一个连接获取页面的内容,然后从页面中分解得到其他的元素(component),然后建立几个连接分别获取相应的元素。

Url-based script

  即通常所说的低层次录制模式,这种模式录制的脚本相对长,不利于阅读,但脚本更直观,它把客户端向服务器端发送的每一个请求都放在一个单独的web_url中,即一个请求对应一个web_url,页面和图片分别生成对应的web_url,相对Html_based script模式把类属一个页面的请求放在一个web_url中的方式,Url-based script模式的脚本更直观。可以捕获所有作为用户操作的结果发送到服务器的HTTP请求,然后一一记录下来。可以捕获非HTML应用程序,例如小程序和非浏览器应用程序。

  URL-based 方式将每条客户端发出的请求录制成一条语句,对LoadRunner来说,在该模式下,一条语句只建立一个到服务器的连接,LoadRunner提供了web_concurrent_start和web_concurrent_end函数模拟的工作方式。

如何从脚本辨别使用哪种模式录制?

  可以从脚本web_url中“mode”的值区分,Html_based script模式下mode的值为“html”,Url-based script模式下mode的值为“http”。从录制时可看出,web_submit_form、web_link一定是HTML模式,web_custom_request一定是URL模式。

web_url,web_submit_data函数两种方式都可能,此时只能通过mode的值来判断。

The Recording Level or Mode for Web scripts. The possible values are: 

HTML level: Instructs VuGen to record HTML actions intuitively, in the context of the current Web page. The actions are recorded as URL steps (web_url), link steps (web_link), image steps (web_image), and form submission steps (web_submit_form). VuGen records only the HTTP requests that return HTML pages, but not scripts or applications. 

HTTP level: Instructs VuGen to record all requests from the server as URL steps (web_url statements). It does not generate the web_link, web_image, or web_submit_form functions. This method is more scalable, but less intuitive when reading a generated script. 

In older versions, the HTTP level is called NORESOURCE. 

html录制可选择项:

两种脚本类型:

1、默认的项,选择描述用户行为的脚本。

web_link是提供一个连接,提供了连接的名称和需要单击的超链接名称,点击就进去,如果链接地址不存在,会出错。模拟用户单击超链接的操作。如果出错了可以选择web_url方式。

2、仅包含明确的URL脚本。

web_url方式不考虑用户做了什么,只在于客户端发送了什么请求,只在于系统做了什么请求。web_url里边是需要访问的超链接地址。

URL录制时可选择项:

两种录制方式优点对比:

(一)HTML 录制

优点:减少了捕获动态值的需要。

(1)资源从内存中取出且在回放时下载。因此,脚本比其他的录制方式更小且更容易阅读。

(2)由于只有较少的硬编码脚本,因此只有较少的动态数值需要关联。

(3)可以插入图片检查之类的语句以检查结果是否正确。

(4)因为HTML模式回放时需要积极地解析返回的信息,因此它可能会比其他录制模式更加占用资源。然而,HTML模式record/replay有相当大的改善,使得差异最小化且微不足道。

(5)HMTL录制级别会为每一个HTML用户动作产生一个单独的步骤。而且HTML方式产生的脚本非常简洁和直述,易于阅读。





(二)URL 录制

优点:脚本具有灵活性和可量测性。

(1)脚本回放过程中,不再搜索内存和Cache。

(2)脚本更具可扩展性。支持页面上的Java Applets和ActiveX对象。

(3)URL录制级别把对服务器每个对象的请求,都录制成一个单独的请求。对业务过程有更好的控制。

如何选择两种模式?

1、基于浏览器的应用程序推荐使用HTML-Based Script。

2、不是基于浏览器的应用程序推荐使用URL-Based Script。

3、如果基于浏览器的应用程序中包含了Java Script,applet、vbscript脚本与等并且该脚本向服务器产生了请求,比如DataGrid的分页按钮等,也要使用URL-Based Script方式录制。

4、基于浏览器的应用程序中使用了HTTPS安全协议,使用URL-Based Script方式录制。

5、录制过程中不要使用浏览器的“后退”功能,LoadRunner对其支持不太好。

脚本录制过程中,可以根据需要在HTML级别和URL级别之间灵活地切换,以获得最佳的效果。

LR 两种录制:html与url的更多相关文章

  1. LR两种录制模式的区别

    loadrunner的录制模式分为如下两种录制模式: HTML-based script,也称为高层录制: URL-based script,也称为底层录制. 两种录制模式的区别:1)脚本不同:高层录 ...

  2. LR 两种html与url录制

    一直在使用LR,对于Html_based script和Url-based script 两种录制方式之间,要如何选择,仍是一知半解.最近测试时遇到同样的业务功能,两种录制方式的脚本,单次执行时间差别 ...

  3. 转 LoadRunner 技巧之THML 与 URL两种录制模式分析

    Loadrunner的Virtual User Generator 提供人脚本的录制功能,对于初学者来说,这大大的降低了编写脚本的门槛,loadrunner提供两种录制脚本的方式:Html_based ...

  4. LoadRunner 技巧之THML 与 URL两种录制模式分析

    Loadrunner的Virtual User Generator 提供人脚本的录制功能,对于初学者来说,这大大的降低了编写脚本的门槛,loadrunner提供两种录制脚本的方式:Html_based ...

  5. 转:HTML与URL两种录制模式分析

    Loadrunner的Virtual User Generator 提供人脚本的录制功能,对于初学者来说,这大大的降低了编写脚本的门槛,loadrunner提供两种录制脚本的方式:Html_based ...

  6. [网络转载 ]LoadRunner技巧之THML与URL两种录制模式分析

    loadrunner自带网站的访问 Html_based script模式 Action() { web_url("WebTours", "URL=http://127. ...

  7. LoadRunner中两种录制模式的区别

    决定我们成为什么样人的,不是我们的能力,而是我们的选择. ——<哈利-波特与密室> 一.先看看两种模式的设置和录制脚本的区别 设置HTML录制模式: 设置URL录制模式: HTML脚本: ...

  8. jmeter两种录制方式

    jmeter两种录制方式 一.Badboy Badboy是一款不错web自动化测试工具,利用它来录制脚本,并且录制的脚本可以直接保存为JMeter文件来使用. Badboy  version 2.1. ...

  9. HTML与URL两种录制模式分析(转)

    如何选择两种模式? 1.基于浏览器的应用程序推荐使用HTML-Based Script. 2.不是基于浏览器的应用程序推荐使用URL-Based Script. 3.如果基于浏览器的应用程序中包含了J ...

随机推荐

  1. php连接数据库步骤

    第一步:连接数据库 $link=@mysql_connect('localhost','root','root') or die('数据库连接失败!'); echo '连接成功!'; 这里数据库连接函 ...

  2. 【扬中集训DAY2T2】 机智的AmyZhi

    [题目链接] 点击打开链接 [算法] 据说标算是暴力? 从N-200开始搜 不过我用了搜索+一些奇怪的剪枝,也A了.... [代码] 标程 #include<bits/stdc++.h> ...

  3. Power Crisis

    传送门 这道题被严重恶意评分了,实际应该是绿题. 因为其实我们只需要模拟即可.这里我们引入一种新的东西:约瑟夫环. 它能直接告诉你约瑟夫问题中最后一个存活下来的人是谁.(不过下标是从0开始的,实际使用 ...

  4. ES6 模板编译

    顾名思义,就是用反引号编写一个模板字符串, 用echo将模板转为javascrip表达式字符串, 用正则将基础字符串转为想要字符串 将代码封装在函数中返回: 注: 用到es6属性${} var tem ...

  5. SPOJ FIBOSUM && FIBOSUM2

    Fibonacci数列定义为 $$f_n = f_{n-1}+f_{n-2}, \text{以及初值}f_0=0, f_1=1.$$ 本文之讨论,皆在模$10^9+7$意义下. FIBOSUM 给定$ ...

  6. Electron开发

    [Debug] 1)cmd进入项目所在根目录,输入: $ npm install --save-dev devtron$ npm install --save electron-debug 2)在主j ...

  7. 解决 CentOS 7 添加用户设置家目录出现 useradd cannot set SELinux context for home directory 问题

    问题描述 直接贴下代码吧~ [root@localhost ~]# useradd -d /tmp/heheda4 heheda4 useradd: cannot set SELinux contex ...

  8. 黑客攻防技术宝典web实战篇:攻击会话管理习题

    猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 登录一个应用程序后,服务器建立以下 cookie:Set-cookie: sessid=a ...

  9. SpringBoot自定义参数解析器

    一.背景 平常经常用 @RequestParam注解来获取参数,然后想到我能不能写个自己注解获取请求的ip地址呢?就像这样 @IP String ip 二.分析 于是开始分析 @RequestPara ...

  10. Minimal string CodeForces - 797C

    Minimal string CodeForces - 797C 题意:有一个字符串s和空串t和u,每次操作可以将s的第一个字符取出并删除然后放到t的最后,或者将t的最后一个字符取出并删除然后放到u的 ...