Loadrunner的Virtual User Generator 提供人脚本的录制功能,对于初学者来说,这大大的降低了编写脚本的门槛,loadrunner提供两种录制脚本的方式:Html_based script和Url-based script ,初学者疑惑这两种方式有什么不同? 在这里我们来做个简单分析。

下面我们来分别通过两种方式来录制百度首页,对比一下他们之间有什么不同。

HTML方式的脚本:

  1. Action()
  2. {
  3.  
  4. web_url("www.baidu.com",
  5. "URL=http://www.baidu.com/",
  6. "Resource=0",
  7. "RecContentType=text/html",
  8. "Referer=",
  9. "Snapshot=t3.inf",
  10. "Mode=HTML",
  11. EXTRARES,
  12. "Url=http://s1.bdstatic.com/r/www/img/i-1.0.0.png", ENDITEM,
  13. "Url=http://s1.bdstatic.com/r/www/img/bg-1.0.0.gif", ENDITEM,
  14. "Url=/favicon.ico", "Referer=", ENDITEM,
  15. "Url=http://suggestion.baidu.com/su?wd=&cb=window.bdsug.sugPreRequest&sid=1440_2031_1945_1788&t=1362056239875", ENDITEM,
  16. "Url=http://suggestion.baidu.com/su?wd=%E8%99%AB%E5%B8%88&p=3&cb=window.bdsug.sug&sid=1440_2031_1945_1788&t=1362056247256", ENDITEM,
  17. "Url=http://suggestion.baidu.com/su?wd=%E8%99%AB%E5%B8%88%20&p=3&cb=window.bdsug.sug&sid=1440_2031_1945_1788&t=1362056247969", ENDITEM,
  18. "Url=http://suggestion.baidu.com/su?wd=%E8%99%AB%E5%B8%88%20%E5%8D%9A%E5%AE%A2%E5%9B%AD&p=3&cb=window.bdsug.sug&sid=1440_2031_1945_1788&t=1362056251016", ENDITEM,
  19. LAST);
  20.  
  21. return 0;
  22. }

URL方式的脚本:

  1. Action()
  2. {
  3.  
  4. web_url("www.baidu.com",
  5. "URL=http://www.baidu.com/",
  6. "Resource=0",
  7. "RecContentType=text/html",
  8. "Referer=",
  9. "Snapshot=t67.inf",
  10. "Mode=HTTP",
  11. LAST);
  12.  
  13. web_concurrent_start(NULL);
  14.  
  15. web_url("shouye_b5486898c692066bd2cbaeda86d74448.gif",
  16. "URL=http://www.baidu.com/img/shouye_b5486898c692066bd2cbaeda86d74448.gif",
  17. "Resource=1",
  18. "RecContentType=image/gif",
  19. "Referer=http://www.baidu.com/",
  20. "Snapshot=t68.inf",
  21. LAST);
  22.  
  23. web_url("gs.gif",
  24. "URL=http://www.baidu.com/cache/global/img/gs.gif",
  25. "Resource=1",
  26. "RecContentType=image/gif",
  27. "Referer=http://www.baidu.com/",
  28. "Snapshot=t69.inf",
  29. LAST);
  30.  
  31. web_url("tangram-1.3.4c1.0.js",
  32. "URL=http://s1.bdstatic.com/r/www/cache/global/js/tangram-1.3.4c1.0.js",
  33. "Resource=1",
  34. "RecContentType=application/javascript",
  35. "Referer=http://www.baidu.com/",
  36. "Snapshot=t71.inf",
  37. LAST);
  38.  
  39. web_url("home-2.5.js",
  40. "URL=http://s1.bdstatic.com/r/www/cache/global/js/home-2.5.js",
  41. "Resource=1",
  42. "RecContentType=application/javascript",
  43. "Referer=http://www.baidu.com/",
  44. "Snapshot=t72.inf",
  45. LAST);
  46.  
  47. web_url("u-1.3.4.js",
  48. "URL=http://s1.bdstatic.com/r/www/cache/user/js/u-1.3.4.js",
  49. "Resource=1",
  50. "RecContentType=application/javascript",
  51. "Referer=http://www.baidu.com/",
  52. "Snapshot=t73.inf",
  53. LAST);
  54.  
  55. web_concurrent_end(NULL);
  56.  
  57. web_url("i-1.0.0.png",
  58. "URL=http://s1.bdstatic.com/r/www/img/i-1.0.0.png",
  59. "Resource=1",
  60. "RecContentType=image/png",
  61. "Referer=http://www.baidu.com/",
  62. "Snapshot=t70.inf",
  63. LAST);
  64.  
  65. web_concurrent_start(NULL);
  66.  
  67. web_url("su",
  68. "URL=http://suggestion.baidu.com/su?wd=&cb=window.bdsug.sugPreRequest&sid=1431_2031_1944_1788&t=1362056977341",
  69. "Resource=1",
  70. "RecContentType=baiduapp/json",
  71. "Referer=http://www.baidu.com/",
  72. "Snapshot=t74.inf",
  73. LAST);
  74.  
  75. web_url("favicon.ico",
  76. "URL=http://www.baidu.com/favicon.ico",
  77. "Resource=1",
  78. "RecContentType=image/x-icon",
  79. "Referer=",
  80. "Snapshot=t75.inf",
  81. LAST);
  82.  
  83. web_concurrent_end(NULL);
  84.  
  85. return 0;
  86. }

Html_based script是loadrunner的缺省模式,即默认模式,也就是通常说的高层次模式,一般优先选择这种模式这种模式录制的脚本相对简短,便于阅读。它把类属一个页面的请求放在一个web_url中。

  Url-based script即通常所说的低层次录制模式,这种模式录制的脚本相对长,不利于阅读,但脚本更直观,它把客户端向服务器端发送的每一个请求都放在一个单独的web_url中,即一个请求对应一个web_url,页面和图片分别生成对应的web_url,相对Html_based script模式把类属一个页面的请求放在一个web_url中的方式,Url-based script模式的脚本更直观。

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

  我们可以从脚本web_url中“mode”的值区分,Html_based script模式下mode的值为“html”,Url-based script模式下mode的值为“http”。还有Html_based script模式记录为web_submit_form,而Url-based script模式记录为web_submit_data。

两种录制方式优点对比:

)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等并且该脚本向服务器产生了请求,比如DataGrid的分页按钮等,也要使用URL-Based Script方式录制。

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

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

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

http://www.cnblogs.com/fnng/archive/2013/02/28/2937805.html

LoadRunner 技巧之THML 与 URL两种录制模式分析的更多相关文章

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

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

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

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

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

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

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

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

  5. html和url两种录制方式

    在跟使用Loadrunner工具使用者交流的过程中,经常有人提到这个问题,基于HTML(HyperText Markup Language 超文本置标语言)模式录制 与基于URL(Uniform Re ...

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

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

  7. LR 两种录制:html与url

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

  8. Core 导出(流和URL两种)

    1.流 2.URL 两种都是使用Epplus 1. EPPlus的基本介绍 EPPlus是一个使用Open Office XML(xlsx)文件格式,能读写Excel 2007/2010 文件的开源组 ...

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

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

随机推荐

  1. css3的loadding效果

    <!DOCTYPE html> <html> <head> <title>CSS3 loading效果</title> <meta c ...

  2. 基于stm32f103zet6的FAT16文件系统学习1(初识FAT16)

    有了之前读写block的基础之后,准备弄个文件系统,之前没有接触过这东西,所以有很多都晕晕的,但是看到fat的源代码之后还是挺有信心的,因为之前一直过uboot,所以这个文件当然是小巫见大巫了.首先来 ...

  3. T-SQL 语法元素

    一.标识符 在T-SQL语言中,对SQLServer数据库及其数据对象(比如表.索引.视图.存储过程.触发器等)需要以名称来进行命名并加以区分,这些名称就称为标识符. 通常情况下,SQLServer数 ...

  4. Fragment销毁时replace和add两个方法的区别

    这个首先从一个bug说起,如图:   我们都知道fragment切换有两种方式: 1. replace方式 transaction.replace(R.id.content, IndexFragmen ...

  5. 八大排序c++可运行精简版,一目了然

    #include <iostream> using namespace std; // 插入排序开始===================== void insert_sort(int a ...

  6. jquery validationEngine的使用

    1.引入文件 <script src="/js/jquery-1.4.2.min.js" type="text/javascript"></s ...

  7. POJ3026(BFS + prim)

    Borg Maze Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 10554   Accepted: 3501 Descri ...

  8. UVA 100 - The 3n+1 problem (3n+1 问题)

    100 - The 3n+1 problem (3n+1 问题) /* * 100 - The 3n+1 problem (3n+1 问题) * 作者 仪冰 * QQ 974817955 * * [问 ...

  9. SQL 通配符

    在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符.SQL 通配符必须与 LIKE 运算符一起使用,必须放在引号内. 在 SQL 中,可使用以下通配符: %:替代一个或多个字符. _:仅替代 ...

  10. IOS 排序算法

    /** * @brief 冒泡排序法 * * @param arr 需要排序的数组 */ -(void)BubbleSort:(NSMutableArray *)arr { // 取第一个与其邻接的对 ...