07丨性能测试工具:如何录制脚本?

        对于一个性能测试工具来说,如果能实现以下几大功能,那么就基本上就满足了性能测试工具的功能

  1. 录制或编写脚本功能
  2. 参数化功能
  3. 关联功能
  4. 场景功能
  5. 报告生成功能

        但是除此以外,在工作的细节上还有更多要求,就要看工具的实施能力了。

        有很多性能测试工程师希望工具能做得非常全面,又人性化,而纵观当前的性能工具,真正能够做到傻瓜式录制完脚本,自动设置好参数化、关联、场景,直接产出结果的工具是没有的。不管是云性能测试平台,还是分布式性能测试工具(当然性能测试工具几乎全部具有分布式能力),都需要性能测试人员来定义参数化数据、设置关联、配置场景。

        因此,在性能测试的过程中,对工具的配置就成为了性能测试工程师的基本能力。

        今天,我们就来看下在性能测试工具中,如何录制脚本。今天的文章有些特殊,可能是专栏中少有的,有详细操作的文章。

性能工具的脚本能力

         性能测试工具的脚本编写能力分为两类,一个是录制,另一个是手工编写。

        现在市场上的性能测试工具虽然支持录制功能,但大部分也只是支持 HTTP 协议。在我们熟知的工具中,也只有 LoadRunner 支持更多协议的录制能力。不过幸好,现在我们所面对的应用大部分是 HTTP 协议的应用。

        对手工编写脚本的部分,因为大部分都取决于业务场景,所以很难提出共性。如果有人提出针对性的场景,我们再做相应的示例就行。

        因此今天的文章将着重讲一下测试工具的录制功能。很多人以为性能工具录制功能非常简单,点几下就能生成一个脚本,但是录制完之后,针对脚本的增强完善就做得非常少了。事实上,针对脚本,我们不仅要录制下来,还要了解录制的原理和录制完之后的脚本增强。不然,在场景中还是会遇到各种各样的问题。

性能工具中的录制功能

        录制功能从原理上来说,分成两种:

  1. 本地录制:通过截取并解析与服务器的交互协议包,生成脚本文件。比如说 LoadRunner 调起 IE 的时候,不用修改 IE 的代理设置,就可以直接抓取 HTTP 包,并通过自己的解析器解析成脚本。
  2. 代理录制:通过代理服务器设置,转发客户端和服务器的交互协议包,生成脚本文件。JMeter 中的脚本录制功能就是这样做的。

        这两者的不同点主要在于操作上。本地录制相对简单,但有些场景受限,比如说操作只能在某台服务器上,但是这台服务器又不允许安装工具;代理录制操作复杂一些,但可以满足更多的场景。

        通过这张图,我们可以简单看到代理录制的逻辑:

  1. 我们在 IP 为 2.2.2.2 上的主机上,打开一个代理程序,开 81 端口,所有到 81 端口的都转发到 1.1.1.1 的 80 端口。
  2. 当 3.3.3.3 主机要访问 1.1.1.1 的的 80 端口,可以通过访问 2.2.2.2 的 81 端口进行转发。

        这里需要你注意的是,代理是用来转发数据包的,并不是重定向哦。不管是在本机用代理,还是远程用代理,这个逻辑都是不会变的。

        有了这个逻辑之后,你要明白的一点是,客户机不一定要和代理服务器在同一台机器上

        为什么要强调这一点呢?因为有很多人用工具来录制时,都不知道这个逻辑,只知道工具是那么操作的。这也是很多人不能理解 Port mapping 的原因。

        不同的工具录制方式略有不同。今天我们用常见的两个性能测试工具 LoadRunner 和 JMeter 做为示例工具。

JMeter 的录制功能      

谷歌浏览器:

1. 第一步:添加http代理服务器,在测试计划--》添加--》非测试元件--》http代理服务器

2. 第二步:添加线程组(这个线程组是用来放录制的脚本,不添加也可以,就直接放在代理服务器下)

测试计划--》添加--》线程--》线程组(顺便讲一下线程组执行顺序:setUp --线程组 --tearDown)

3. 第三步:选择录制脚本的存放位置,就选择我们第二步创建的线程组中。

4. 第四步:然后我们点击启动,其他项默认就好,其他选项后期会详细说明

5. 第五步:设置浏览器的代理,设置-网络设置 -选择手动配置代理,点击确定

 6.第六步:火狐浏览器此时会提示风险弹框,我们选择高级--》接受风险并继续

 7. 第七步

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值