首页 解决方案 使用LoadRunner录制脚本时如何选择合适的协议?

使用LoadRunner录制脚本时如何选择合适的协议?

LoadRunner首先是一个测试工具,其次是一个性能测试工具,然后是该工具是一个基于协议,也就是说LoadRunner测试的对象都需要使用通信协议,对于那些不使用通信协议仅仅进行本地处理的软件例如Microsoft Word,LoadRunner就不适用。

LoadRunner首先是一个测试工具,其次是一个性能测试工具,然后是该工具是一个基于协议,也就是说LoadRunner测试的对象都需要使用通信协议,对于那些不使用通信协议仅仅进行本地处理的软件例如Microsoft Word,LoadRunner就不适用。说到通信协议我们来熟悉一下协议的分层,按照OSI的分层模型,分层结构如下:

 

  按照TCP/IP协议的分层,分层结构如下:

 

  TCP/IP目前广泛使用且被业界认作既定标准的协议分层, LoadRunner协议选择即按TCP/IP协议的分层模型讨论。

  LoadRunner VuGen中的协议与文章开头所说的通信协议还是有一定的区别的,例如像LoadRunner VuGen中的C 模板、Visual Basic 模板、Java 模板、Javascript 和VBScript 类型的脚本均为开发语言,非通信协议。

  一般来说协议选择有如下原则:

  1. 最简单的方法,向应用团队或供应商查询,特别是软件架构师和开发人员。他们应该能够提供这些信息。

       2. 使用WireShark网络分析器来探测应用程序运行时的通信情况。更多的使用细节可以在供应商的网站上找到。在你开始捕获流量后,你应该能在协议栏下看到协议的内容。

       3. 使用netstat -a来确定协议和端口号。例如,协议是TCP,端口号是80,它可能意味着HTTP。需要注意的是,netstat -a只显示IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP或UDPv6中的协议(/?help获取更多信息),这意味着你可能需要根据协议(TCP)和端口号来猜测协议的内容。

       4. 使用Winsock协议,通过数据文件确定协议。Winsock在套接字层面上捕获所有任何类型的流量并将其写入数据文件。从数据文件中,你会发现协议的签名,如HTTP请求和响应在HTTP的背景下。

     例如:

       B/S 结构,选择WEB(HTTP/HTML)协议;

       C/S结构,可以根据后端数据库的类型来选择,如SybaseCTLib协议用于测试后台的数据库为Sybase的应用;MS SQL Server协议用于测试后台数据库为 SQL Server的应用;

       对于一些没有数据库的Windows应用,可选用Windows Sockets底层协议;使用了数据库但使用的是ODBC连接的数据则选择ODBC协议;

       对于有些使用纯JAVA编写的C/S结构的东东,采用JAVA,而且不能录制只能手工编写代码(工作量和难度还是有的)。同样不能录制的还包括C、VB Script、VB、VBNet User协议。

       对于Windows Sockets协议来说,最适合的那些基于Socket开发的应用程序;但是由于网络通讯的底层都是基于Socket的,因此几乎所有的应用程序都能够通过Socket来录制,很多时候一提到不是基于浏览器的应用,很多人就会想到用WinSocket协议来录制,仿佛Form窗体都可以用Winsocket 。

        从道理上讲网络通讯的底层都是基于Socket的,例如TCP、UPD等,似乎所有的程序都可以用Socket协议来录制。但是事实不是这样的,因为选择的协议决定了LoadRunner如何捕获数据包。否则会多捕获很多无用的数据。

      因此,不是所有的程序都是适合WinSocket协议的。实际上,那些基于Socket开发的应用才真正适合Socket协议来进行录制。其他的,例如基于数据库的应用,就不太适用Socket协议,甚至可能录制不到脚本。

       很多C/S程序,一定要选择合适的协议。根据经验,C/S的程序多数需要手工开发很多脚本,因为录制的很多回放时候或多或少都会有些问题,但是可以参考录制的结果。
      所以测试一个程序,一定要搞清楚开发人员用了什么技术、数据流是什么协议封装的。

 

关于苏州华克斯信息科技有限公司

 

专业的测试及安全产品服务提供商

Fortify | Webinspect | AppScan | SonarQube | 极狐GitLab 

LoadRunner | UFT(QTP) | ALM(QC)

 

 Micro Focus 铂金合作伙伴

SonarQube中国总代理

极狐GitLab铂金级合伙伴

HCL中国合作伙伴

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

作者: suifengmianlai

为您推荐

生产制造 | 数控仿真保证“安全” 之 NCSIMUL四轴机床搭建

NCSIMUL 通过上一期对三轴机床搭建的讲解和演示,想必大家已经能够搭建自己专属的三轴机床。

质量管理 | 海克斯康 Q-DAS®与SAP QM的交互应用方案

SAP(System Applications and Product) 软件在企业的部署着眼于中央业务流程的优化。

新能源汽车供应链强力转型,数字化供应链系统订单管理数字化助力企业降本增效

当前,全球新能源汽车产业发展驶入快车道,新产品新技术加快研发运用,技术创新带动产业持续升级。

进度猫甘特图:项目管理中的任务分解工具

项目管理中是将大的项目目标划分为各个小阶段任务,WBS就是化繁为简,将负责非项目拆分为简单的任务,它可让事情依照一定规则或关系,通过一层一层来分解,这样要做的任务可以变为小目标。

查看流程审批历史记录解决方案

作者:黄鹏 审校:李达 适用版本:TC11 用户可以在TC中看到整个流程的历史记录,包括驳回,审批,编制的操作,这样可以方便我们查看哪些人参与了这个流程。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

返回顶部