JMeter性能测试基础 (4)-使用JMeter录制测试脚本
在进行压力测试时,由于很多web页面包含了Ajax异步请求等内容,为模拟用户真实输入,除了对html的访问外,还需要将其它的访问考虑入内,这时最好的办法就是对实际访问过程中的所有请求进行录制。
例如,对“百度翻译”进行压力测试,在使用中文输入法的情况下,我们输入“测试”两个字,在实际使用中我们可以看到,我们的实际输入是依次输入 [ceshi 测试] 这样一个过程,而baidu翻译默认对用户的每一次字符输入均发送了请求,实时获取翻译数据。
压力测试过程中,显然不能 只对最后的“测试”字符串进行测试。这时候就需要将[ceshi 测试]中的每次输入均作为压测的一个请求。下面对这一过程进行录制。
1.打开JMeter,点击菜单栏[templates]模版按钮,选择[Recording]模版,点击[Create]创建JMeter录制环境
2.查看录制配置结构,包含有1个TestPlan和一个WorkBench。其中的关键部件为WorkBench下的HTTP(S) Test Script Recorder,该部件是一个HTTP代理服务器,具体配置见图
HTTP代理服务器将JMeter设置为一个代理server,端口为8888。其中包含模式为代理服务器将采集的url类型,排除模式为代理服务器不会进行采集的url类型。当包含模式为空时,将默认采集排除模式之外的所有url。
3.点击[启动]按钮,启动JMeter代理
4.配置浏览器代理,设置代理地址为 localhost:8888,开始进行录制
1)打开fanyi.baidu.com
2) 依次输入 [ceshi 测试]
3)点击[翻译]按钮
5.点击JMeter代理服务器的[停止]按钮,停止脚本录制。
6.在JMeter中打开Recording Controller,观察录制的请求,可以看到,对于参数为 c\ce\ces\cesh\ceshi\测试 的每次请求,均包含在脚本之中,符合实际的输入情况。
7.配置ThreadGroup,进行压测,在监听器中获取测试结果
最新文章
- 問題排查:DataGridView 資料行下拉選單,資料繫結階段顯示 DataGridViewComboBoxCell 值無效
- Linux之RPM安装软件
- sql server使用中遇到的问题记录
- C#-WebForm-★ 上传水印图片 ★
- mysql 将时间戳直接转换成日期时间
- SQL Server 2000 ——系统表和系统视图
- markdown 语法学习
- maven和jdk版本不匹配
- Spring AOP 实现写事件日志功能
- 如何在Android模拟器上安装apk文件
- MYSQL数据库性能调优之八:mysql日志
- apt-get &;dpkg
- 1st_homework_SE--四则运算题目生成器
- K60平台智能车开发工作随手记
- Retrofit 2.0基于OKHttp更高效更快的网络框架 以及自定义转换器
- VS2013编译报错error C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS.
- [转]抛弃jQuery,使用原生JavaScript
- HDU 1506 &; 1505 - Largest Rectangle in a Histogram &; City Game
- dotNetSpider 手记
- TCP三次握手建立关系
热门文章
- 转载 javascript中(function($){...})(jQuery)写法是什么意思
- mafintosh/end-of-stream
- Spark学习之JavaRdd
- 理解WebSocket心跳及重连机制(五)
- PAT A1010 Radix (25 分)——进制转换,二分法
- HTTPS深入理解
- android java.lang.NoClassDefFoundError: cn.yw.lib.viewpagerfragment.ViewPagerFragmentActivity
- mysql无法远程连接到数据库解决方法
- HDMI传输原理:TMDS
- 解析LED发光效率