说明:

PortMapping的这种用法其实早就有了,开始我一直没注意到这点,后面才发现了这个功能,特别在《性能测试进阶指南Loadrunner11实战》第二版中更新。

不是所有的对象都能够被LR启动录制的,例如基于基于特殊浏览器、手机终端或者Linux下的应用,我们无法通过VuGen启动被录制对象,那么这个时候通过Port Mapping的代理模式就可以将它们录制下来。

Port Mapping提供了对于端口映射的处理规则,通过其内置的代理服务器,可以将通过代理服务器的协议内容录制下来,其实现原理如图3.20。

internet 终端1 终端2 终端3 代理服务器VuGen

图3.20  PortMapping实现原理

终端只要设置代理的地址为代理服务器的地址,在访问Internet的时候,VuGen会自动将经过代理服务器的协议请求录制下来,从而实现对任意应用的录制。

这里我们来模拟一个基于远程电脑Chrome访问百度首页的脚本录制,在Port Mapping中新建一个端口映射策略,注意在Allowforwarding to garget server form local port中选中并设置一个代理的端口,如图3.21。

图3.21PortMapping代理设置

该设置的作用是在本机上启动一个端口为2000的代理,将这个端口映射成为本机的80端口访问外网(有点网桥的概念),只能通过HTTP协议和访问www.baidu.com才会被录制。接着我们启动录制,录制的对象为LR安装目录下的bin\wplus_init_wsock.exe程序,使用Win32Applications录制,如图3.22。

图3.22录制代理服务器

启动录制后,我们会看到wplus_init_scock代理服务器会被启动,如图3.23。这个时候所有通过该代理服务器的匹配请求都会被录制下来。

图3.23代理服务器启动

接着我们来设置一下远程的Chrome浏览器,我们知道默认情况下LR11是无法启动录制Chrome浏览器的,现在通过代理模式来录制,就要设置Chrome浏览器的代理地址,让Chrome走的协议通过我们正在录制的代理服务应用,如图3.24。

图3.24代理服务器设置

Chrome使用了IE的代理服务器设置,这里将地址设置为启动代理的服务器IP地址,端口为2000,这样Chrome浏览器的所有协议都会从代理服务器上走过。在Chrome上访问www.baidu.com时就能看到VuGen将这些内容录制下来,停止录制后可以看到对应脚本。注意这个时候回放VuGen会自动将浏览器模拟成IE4.0,浏览器模拟选项参考3.5.8章节。

关注“云层派”了解更多内容

如何录制Chrome或者Linux下的应用的更多相关文章

  1. linux下快速安装chrome

    linux下安装chrome 1.按下 Ctrl + Alt + t 键盘组合键,启动终端 2.在终端中,输入以下命令: (将下载源加入到系统的源列表.命令的反馈结果如图.如果返回“地址解析错误”等信 ...

  2. 环境部署(九):linux下安装python+chrome+Xvfb

    在基于selenium进行的UI自动化测试中,开发调试环境一般都是windows操作系统.完成后需要部署到专门的测试环境. 如要要部署到linux环境的服务器(阿里云.腾讯云)执行,那么测试脚本也需要 ...

  3. 嵌入式Linux下MP4视频录制库MP4V2移植和简单介绍

    **************************************************************************************************** ...

  4. 【教程】linux下安装Google Chrome

    google chrome       google浏览器一直都是深受大家喜爱的一个浏览器,而且其跨平台性比较好,这对于书签同步来说是非常重要的.但是在linux下,默认的是火弧浏览器,而google ...

  5. Linux下利用script命令录制并回放终端会话

    Linux下利用script命令录制并回放终端会话 核心命令 script 和 scriptreplay 录制屏幕 script -t 2>timescript typescript 命令解释: ...

  6. Linux下script命令录制、回放和共享终端操作script -t 2> timing.log -a output.session # 开始录制

    Linux下script命令录制.回放和共享终端操作 [日期:2018-09-04] 来源:cnblogs.com/f-ck-need-u  作者:骏马金龙 [字体:大 中 小]   另一篇终端会话共 ...

  7. Linux下用火焰图进行性能分析【转】

    转自:https://blog.csdn.net/gatieme/article/details/78885908 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原 ...

  8. Linux下的TeXlive 2015 中文问题

    Update: 今日突然发现,我的xeLaTeX编译生成的pdf中文字在TeXMaker内置viewer.evince下查看均无法显示中文,中文字显示为空白,英语正常:但FireFox.Chrome浏 ...

  9. Linux下使用RecordMyDesktop进行屏幕录像

    近期我们在评估给用户提供视频教程的可能性,以此来展示某些用视频才能更好表达的教程.在挖掘这个问题的时候,我们发现极丰富的可用于屏幕录像的工具.这些程序大体上特性的区别有:视频质量,性能,兼容性.这在此 ...

随机推荐

  1. 目标检测:YOLO(v1 to v3)——学习笔记

    前段时间看了YOLO的论文,打算用YOLO模型做一个迁移学习,看看能不能用于项目中去.但在实践过程中感觉到对于YOLO的一些细节和技巧还是没有很好的理解,现学习其他人的博客总结(所有参考连接都附于最后 ...

  2. shell编程 之 test命令

    shell编程里的测试test命令基本可以分为3种数据类型,每种都不一样.个人更倾向于理解为条件语句的写法规则,就是test加条件加判断语句. 1 数值类型 基本可以分为6个判断:-eq等于,-ne不 ...

  3. JDK源码笔记--Object

    public final native Class<?> getClass(); public native int hashCode(); public boolean equals(O ...

  4. PHP反序列化漏洞

    反序列化漏洞利用的条件 1.程序中存在序列化字符串的输入点. 2.程序中存在可以利用的魔术方法. 反序列化漏洞的一个简单DEMO <?php class example { public $ha ...

  5. golang 之 flag.String

    无论是c语言还是golang语言或是其他语言,启动应用程序时都可以带一些参数,然后系统根据传入的参数进行特点的工作.如:./main -b /home/backupdir -d true 那么如何更好 ...

  6. golang interface 转 string,int,float64

    func interface2String(inter interface{}) { switch inter.(type) { case string: fmt.Println("stri ...

  7. C++ 11 snippets , 1

    1->创建7个Thread,跑个非常大的循环.观察CPU void func(string &name) { ;i<0xFFFFFFFF;i++) { //cout << ...

  8. MySQL死锁查询【原创】

    死锁详情查询 SELECT SUM(trx_rows_locked) AS rows_locked, SUM(trx_rows_modified) AS rows_modified, SUM(trx_ ...

  9. Git学习笔记01-安装Git

    学习的资料来自廖雪峰官方网站的Git教程,菜鸟教程的Git教程 Git是一个分布式版本控制工具,在windows上使用Git可以直接从官网下载,然后默认选项安装即可. 安装完成后,在开始菜单中找到找到 ...

  10. Nodejs脚手架搭建基于express的应用

    原文链接:https://www.cnblogs.com/FE-yanyi1993/p/6413042.html 这篇写的非常详细,此处只做记录. 1.安装生成器 $ npm install expr ...