- 浏览: 2159123 次
- 性别:
- 来自: 合肥
文章分类
- 全部博客 (401)
- Agile (16)
- Apache Commons (3)
- Architecture (8)
- DB.MongoDB (5)
- DB.Mysql (3)
- DB.Oracle (34)
- DirectoryService (1)
- DotNet (1)
- English (3)
- Groovy (0)
- Html (28)
- Java (67)
- Java.Aixs (7)
- Java.Cache (2)
- Java.jPBM (1)
- Java.Resin (6)
- Java.Spring (4)
- Java.Struts2 (5)
- Java.Tomcat (16)
- Javascript (45)
- Javascript.Google Map (2)
- Javascript.Jquery (8)
- Life (15)
- Maven&Ant (4)
- Network (5)
- OS.Linux (45)
- OS.Windows (10)
- OS.Windows.Office (1)
- PlayFramework (15)
- Python (28)
- Reading notes (11)
- Security (13)
- Server.Apache (3)
- Server.Nginx (7)
- Test (6)
- Tool (15)
- Work.Solution (15)
- Other (20)
- SSO&CAS&Identity (13)
最新评论
-
hutuxiansheng123:
防火墙、Iptables、netfilter/iptables、NAT 概述 -
dacoolbaby:
非常棒的正则表达式,非常适用。万分感谢。
用python分析nginx的access日志 -
loot00:
您好! 我也遇到了相同的错误信息。我是用f_link_lob ...
LOB variable no longer valid after subsequent fetch -
feihangchen:
@OnApplicationStop public clas ...
Play framework 1.2.3 Jobs定时任务、异步任务、引导任务、触发任务、关闭任务 -
洞渊龙王:
谢谢了
www.w3.org被qiang导致logback报错:Connect reset
使用https连接时,如果对应站点的CA 证书错误,会直接报连接不到服务器的错误,org.apache.commons.httpclient.NoHttpResponseException,把错误证书删除后【证书发行商,证书有效时间,证书对应的站点3部分信息】,或者使用正确的证书,就可以!
工具栏按钮:
Find, Clear All, Start, Function Helper, Help(鼠标点到某个项目,然后点击该按钮弹出相应帮组)
JMeter录制代理设置(注意这个代理是用来录制脚本的):
WorkBench->right click->Add->Non-Test Elements->Http Proxy Server->Start
Firefox代理设置:
Tools->Options->Advanced->Network->Connection Settings->Manual proxy configuration
HTTP Proxy:127.0.0.1 Port:8080 Use this proxy server for all protocols
注意:No proxy for: localhost, 127.0.0.1
HTTP Proxy Server设置
JMeter执行代理设置(通过代理服务器来执行JMeter,当把代理设置成127.0.0.1 8888,默认就可以和Fiddler集成,即Fiddler会抓到JMeter发出的请求):
-H [proxy server or IP address]
-P [proxy server port]
-u [username for the proxy authentication]
-a [password for the proxy authentication]
jmeter.bat -H 192.168.10.1 -P 8012
jmeter.bat -H 192.168.10.1 -P 8012 -u my_user_name -a my_password
HTTP Request HTTPClient 选项:
基础选项:
Add:
对于POST请求,Content-Type:application/x-www-form-urlencoded;charset=UTF-8;charset=UTF-8,
对于GET请求,Content-Type:charset=UTF-8;charset=UTF-8,
然后选中header?单选框,jmeter就以HTTP Header的形式告诉服务器请求参数编码使用的字符集,而其他没有选上header?单选框的项目以Parameter的形式发送!注意HTTP GET请求,发送的中文字必须选中Encoder?单选框,而作为POST方式发送时,不需要选中,只需要指定编码!
高级选项:
Encoding编码,
Timeout(ms),
Redirect Automatically(自动重定向-服务器内部进行重定向操作时,HTTP Request自动重定向,然后返回Redict后的Response, 如果选择否的话,服务器就不会进行自动重定向操作,这时,默认只显示第一个重定向前的请求,此时,如果把Follow Redirects选择为true时,那边在结果页面View Result Tree中会把所有的请求都列出来)
一般情况下:Redirect Automatically true, Follow Redirects false 否则Redirect Automatically false, Follow Redirects true
有时候在服务器存在多次Redirect或者对POST请求做了Redirect转发的时候,JMeter会处理不正常,这时候可以
1,使用HTTP Request而不是HTTP Request HTTP Client 或者
2,使用GET请求来替换POST请求 或者
3,把Redirect Automatically和Follow Redirects都设置成false,然后用正则表达式Location: (.*)从响应头中提取Redirect的URL,然后根据提取的URL建立新的HTTP请求 ---- 直接从Location中得到的url拼到Path中能正常执行
Use multipart/form-data for POST
Ignore response code
JMeter保存执行结果:
在View Results Tree界面以树状结构保存结果,在该画面上点击Configure的弹出画面中,选择Save Field Names, Save Assertion Failure Message,点击Done【注意:Write results to file不要选中自己的脚本文件,不然就会丢失脚本!! 默认显示所有结果:错误的和正确的】
JMeter日志:执行脚本时,Jmeter错误日志会输出到控制台中!
JMeter使用系统时间作为唯一值:
Add->Pre Precessors->User Parameters->currentTime=${__time(YMD)}${__time(HMS)}, Update Once Per Iteration checked
使用的地方:${__threadNum()}_${currentTime}, 也可以不定义变量直接使用
JDBC数据库连接:
Add --> Logic Controller --> Case
Add --> Config Element --> JDBC Connection Configuration
Database URL:jdbc:oracle:thin:@192.168.0.1:1521:dbinst
JDBC Driver class:oracle.jdbc.driver.OracleDriver
Variable Name Bound to Pool(数据库连接池设置,和下面的JDBC Request中的相应项目的值一致!):prjdata
这里好像必须写死,不能引用properties中的变量
Add --> Sampler --> JDBC Request
sql中不能用分好结尾
输入的sql中可以直接使用变量,如select * from tbl where s ='${currentTime}'
把数据库中查询的值,设置到变量中来使用:
JDBC Request的responseFormat选择xml,然后新建Add->Post Processors->XPath Extractor->在弹出来的界面中,Reference Name为将要被使用的变量名词,XPath query设置为:/RecordSet/Record/ITEMNAME
/RecordSet/Record[2]/ITEMNAME:选取第二行记录中的相应项目的值
Reference Name: refName - set to first (or only) match; if no match, then set to default; refName_matchNr - set to number of matches (may be 0); refName_n - n=1,2,3 etc. Set to the 1st, 2nd 3rd match etc.
Use Tidy:从HTML中提取时,选择Yes,从XHTML或者XML提取时,选择false
使用__StringFromFile函数读取错误,**ERR**,原因是改函数读取的文件是相对与JMeter launch directory目录的,即要把数据文件放到bin目录下! 或者绝对路径
各元素执行顺序:
JMeter调试:
添加Debug Sampler或者Debug PostProcessor 后,在执行结果View Results Tree中可以在相应的Response标签中看到JMeter Properties,JMeter Variables,System Properties,Sampler Properties(Debug PostProcessor) 的值!
Debug PostProcessor:给Sample建立一个子Sample以监听Sampler Properties以及其他的值!
JMeter Cookie值的抓取:
参考页面:JMeter正则表达式提取器
JMeter 脚本录制:
1,它提供了一个利用本地Proxy Server(代理服务器)来录制生成测试脚本的功能,不太好用
2,使用Badboy录制并导出 JMeter 脚本
参考:《JMeter从入门到精通》之一——开始你的第一个JMeter脚本
Response Assertion:
匹配规则 Contains, Matches: Perl5-style 正则表达式; Equals, Substring: 大小写敏感的文本匹配
(?i) - 大小写不区分; (?s) - 多行模式, i.e. "." matches new-line; (?is) - 上面2种模式
jmeter结果保持、JTL文件读取:
JMeterPluginsCMD Command Line Tool
Jmeter: how to create summary report from JTL file?
工具栏按钮:
Find, Clear All, Start, Function Helper, Help(鼠标点到某个项目,然后点击该按钮弹出相应帮组)
JMeter录制代理设置(注意这个代理是用来录制脚本的):
WorkBench->right click->Add->Non-Test Elements->Http Proxy Server->Start
Firefox代理设置:
Tools->Options->Advanced->Network->Connection Settings->Manual proxy configuration
HTTP Proxy:127.0.0.1 Port:8080 Use this proxy server for all protocols
注意:No proxy for: localhost, 127.0.0.1
HTTP Proxy Server设置
JMeter执行代理设置(通过代理服务器来执行JMeter,当把代理设置成127.0.0.1 8888,默认就可以和Fiddler集成,即Fiddler会抓到JMeter发出的请求):
-H [proxy server or IP address]
-P [proxy server port]
-u [username for the proxy authentication]
-a [password for the proxy authentication]
jmeter.bat -H 192.168.10.1 -P 8012
jmeter.bat -H 192.168.10.1 -P 8012 -u my_user_name -a my_password
HTTP Request HTTPClient 选项:
基础选项:
Add:
对于POST请求,Content-Type:application/x-www-form-urlencoded;charset=UTF-8;charset=UTF-8,
对于GET请求,Content-Type:charset=UTF-8;charset=UTF-8,
然后选中header?单选框,jmeter就以HTTP Header的形式告诉服务器请求参数编码使用的字符集,而其他没有选上header?单选框的项目以Parameter的形式发送!注意HTTP GET请求,发送的中文字必须选中Encoder?单选框,而作为POST方式发送时,不需要选中,只需要指定编码!
高级选项:
Encoding编码,
Timeout(ms),
Redirect Automatically(自动重定向-服务器内部进行重定向操作时,HTTP Request自动重定向,然后返回Redict后的Response, 如果选择否的话,服务器就不会进行自动重定向操作,这时,默认只显示第一个重定向前的请求,此时,如果把Follow Redirects选择为true时,那边在结果页面View Result Tree中会把所有的请求都列出来)
一般情况下:Redirect Automatically true, Follow Redirects false 否则Redirect Automatically false, Follow Redirects true
有时候在服务器存在多次Redirect或者对POST请求做了Redirect转发的时候,JMeter会处理不正常,这时候可以
1,使用HTTP Request而不是HTTP Request HTTP Client 或者
2,使用GET请求来替换POST请求 或者
3,把Redirect Automatically和Follow Redirects都设置成false,然后用正则表达式Location: (.*)从响应头中提取Redirect的URL,然后根据提取的URL建立新的HTTP请求 ---- 直接从Location中得到的url拼到Path中能正常执行
Use multipart/form-data for POST
Ignore response code
JMeter保存执行结果:
在View Results Tree界面以树状结构保存结果,在该画面上点击Configure的弹出画面中,选择Save Field Names, Save Assertion Failure Message,点击Done【注意:Write results to file不要选中自己的脚本文件,不然就会丢失脚本!! 默认显示所有结果:错误的和正确的】
JMeter日志:执行脚本时,Jmeter错误日志会输出到控制台中!
JMeter使用系统时间作为唯一值:
Add->Pre Precessors->User Parameters->currentTime=${__time(YMD)}${__time(HMS)}, Update Once Per Iteration checked
使用的地方:${__threadNum()}_${currentTime}, 也可以不定义变量直接使用
JDBC数据库连接:
Add --> Logic Controller --> Case
Add --> Config Element --> JDBC Connection Configuration
Database URL:jdbc:oracle:thin:@192.168.0.1:1521:dbinst
JDBC Driver class:oracle.jdbc.driver.OracleDriver
Variable Name Bound to Pool(数据库连接池设置,和下面的JDBC Request中的相应项目的值一致!):prjdata
这里好像必须写死,不能引用properties中的变量
Add --> Sampler --> JDBC Request
sql中不能用分好结尾
输入的sql中可以直接使用变量,如select * from tbl where s ='${currentTime}'
把数据库中查询的值,设置到变量中来使用:
JDBC Request的responseFormat选择xml,然后新建Add->Post Processors->XPath Extractor->在弹出来的界面中,Reference Name为将要被使用的变量名词,XPath query设置为:/RecordSet/Record/ITEMNAME
/RecordSet/Record[2]/ITEMNAME:选取第二行记录中的相应项目的值
Reference Name: refName - set to first (or only) match; if no match, then set to default; refName_matchNr - set to number of matches (may be 0); refName_n - n=1,2,3 etc. Set to the 1st, 2nd 3rd match etc.
Use Tidy:从HTML中提取时,选择Yes,从XHTML或者XML提取时,选择false
使用__StringFromFile函数读取错误,**ERR**,原因是改函数读取的文件是相对与JMeter launch directory目录的,即要把数据文件放到bin目录下! 或者绝对路径
各元素执行顺序:
- Configuration elements
- Pre-Processors
- Timers
- Sampler
- Post-Processors (unless SampleResult is null)
- Assertions (unless SampleResult is null)
- Listeners (unless SampleResult is null)
JMeter调试:
添加Debug Sampler或者Debug PostProcessor 后,在执行结果View Results Tree中可以在相应的Response标签中看到JMeter Properties,JMeter Variables,System Properties,Sampler Properties(Debug PostProcessor) 的值!
Debug PostProcessor:给Sample建立一个子Sample以监听Sampler Properties以及其他的值!
JMeter Cookie值的抓取:
参考页面:JMeter正则表达式提取器
JMeter 脚本录制:
1,它提供了一个利用本地Proxy Server(代理服务器)来录制生成测试脚本的功能,不太好用
2,使用Badboy录制并导出 JMeter 脚本
参考:《JMeter从入门到精通》之一——开始你的第一个JMeter脚本
Response Assertion:
匹配规则 Contains, Matches: Perl5-style 正则表达式; Equals, Substring: 大小写敏感的文本匹配
(?i) - 大小写不区分; (?s) - 多行模式, i.e. "." matches new-line; (?is) - 上面2种模式
jmeter结果保持、JTL文件读取:
JMeterPluginsCMD Command Line Tool
Jmeter: how to create summary report from JTL file?
发表评论
-
xml 字符串和xml Document相互转换、xml Document内容输出到http response
2012-11-05 10:07 5568import java.io.ByteArrayOutpu ... -
isAssignableFrom & isInstance
2012-11-02 14:34 1228java.lang.Object extended by ja ... -
Struts 1.1 ExceptionHandler(转)
2012-11-02 10:20 1433转自:SSH项目中利用Exce ... -
X.509、数字签名、CA(Certificate Authority)、自签名证书、PKI
2012-10-18 14:22 6327X.509是由国际电联电信委员会(ITU-T)为单点登录(SS ... -
keytool、keystore、jarsigner、生成自签名证书
2012-10-18 10:27 8055Keytool是Java的密钥和数字证书管理工具,位于JDK_ ... -
基于界面自动化测试框架的发展、QTP录制与关键字驱动比较(转)
2012-10-12 10:41 2067基于界面的软件自动化测试经历了4个发展阶段。 (1).无框架阶 ... -
Java 类初始化顺序
2012-08-21 14:07 1107class Parent { // 静态变量 pu ... -
java嵌套类、静态嵌套类、内部类
2012-08-21 10:29 2112官网文档:Nested Classes 什么是嵌套类及内部类 ... -
java静态类、静态方法、静态变量、实例变量、线程本地变量、静态线程本地变量
2012-08-21 10:24 1887静态类: 只有嵌套类才 ... -
Selenium 浏览器自动化测试工具 --- 跨浏览器、跨平台
2012-07-17 15:31 2648官网:http://seleniumhq.org/ 帮助文档: ... -
ProcessBuilder 和 Runtime
2012-07-17 09:26 20944ProcessBuilder.start() 和 Runtim ... -
对称加密、PBE基于密码加密、PKCS
2012-07-05 11:07 7802对称加密:采用单钥密码系统的加密方法,同一个密钥可以同时用作信 ... -
(转)xml schema xsd 入门
2012-06-28 16:05 2472理解XML Schema: XML Schema 初步 (I) ... -
XmlRootElement JAXB注解
2012-06-28 15:23 39094@Retention(value=RUNTIME) @T ... -
jaxb xml数据绑定
2012-06-28 14:22 1323XML Schema编辑工具:XML Spy 常见的XML绑 ... -
(转)jpa 注解
2012-06-25 16:00 1335转自:jpa 注解 1.设置Po ... -
(转)JPA(Java Persistence API)简介
2012-06-25 14:20 1548转自JPA基础(一):全 ... -
Play 内置模板标签(1.2.3版本)
2012-06-18 14:03 5010Play framework 1.2.3 Built-in t ... -
play plugin插件 实现类似Servlet中的拦截器效果
2012-06-15 15:05 3650play plugin和module的区别见:play Mod ... -
Play tag标签,模板、tag中直接调用后台静态java方法
2012-06-15 11:02 2996见Play Framework template engine ...
相关推荐
JMeter技巧篇涉及多个高级功能,如生成测试报告、上传文件、实现网页爬虫、驱动浏览器进行GUI测试、内存溢出解决、服务器性能监控、数据驱动测试、模拟弱网环境、插件扩展、分布式执行脚本等。 ### 容器化的接口...
2. JMeter目录结构及常用元件学习:熟悉JMeter界面和目录结构,掌握线程组、采样器、逻辑控制器等基本元件。 3. JMeter录制方法介绍:了解如何使用JMeter代理服务器或第三方插件进行HTTP/HTTPS测试的录制。 4. ...
JMeter有丰富的第三方插件,可以增强其功能,如监控服务器资源、实现分布式测试、集成持续集成工具等。可以通过JMeter官方网站或其他社区资源获取这些插件。 总结来说,"apache-jmeter-4.0.zip"是性能测试领域的一...
利用JMeter提供的HTTP(S) Test Script Recorder功能,可以通过浏览器进行实际操作,JMeter会自动记录下所有的请求信息,并生成相应的测试脚本。 #### 4.4 执行测试 配置好测试计划后,点击运行按钮开始执行测试。...
在性能监控领域,JMeter分布式压测是常用的一种工具,用于模拟大量用户并发访问系统,以测试其性能和稳定性。然而,在进行分布式压测时,如何有效地监控和分析日志数据,特别是错误响应,成为了一个挑战。传统的日志...
Jmeter提供了远程监控服务器的功能,这可以通过上传特定的jar包到被测试的服务器上实现。远程监控的好处是能够在不影响客户端性能的情况下,更准确地测量服务器的负载和响应情况。 此外,Jmeter还支持数据库测试,...
8. **监控和分析**:测试过程中,你可以使用JMeter的图表和日志记录功能来监控性能指标,如每秒事务数(TPS)、响应时间分布、错误率等,然后根据这些数据进行调优。 综上所述,"JMeter-Rabbit-AMQP-master"插件为...
通过安装Plugins Manager插件,用户可以在JMeter中获得更多的功能和更强大的数据分析能力。 - 插件通常以`.jar`文件的形式提供,需要将它们放置在JMeter的`lib/ext`目录下。如题目中提到的`Plugins-manager-1.3.jar...
JMeter支持日志记录,可以记录测试过程中产生的各种信息,便于后续分析和调试。 #### 九、非GUI模式执行测试计划 非GUI模式可以在没有图形界面的情况下运行测试计划,适用于自动化测试或资源有限的环境。 #### 十...
- **JMeter 上使用监控**:在JMeter中配置相应的监听器来接收并处理监控数据。 - **将监控到的资源情况保存到文件中以供统计**:收集的监控数据可以保存到文件中,便于后期分析。 #### 十四、统计分析 完成测试后...
【JMeter入门教程】 JMeter是一款强大的开源性能测试工具,主要设计用于Web应用的压力测试,但也可用于其他协议。...通过深入学习和实践,你可以充分利用JMeter的强大功能,为你的项目提供可靠和详尽的性能评估。
Java Simon 是一个强大的开源性能监控API,专门为Java应用程序设计,帮助开发者实时监控和分析程序运行时的状态。这个压缩包文件包含了一系列与Java Simon相关的资源,可能是源代码、文档或者示例,以帮助开发者深入...
以下是对标题和描述中提到的一些常用Java jar包的详细解释: 1. **json**: JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。Java中处理JSON的库有很...
5. **监控**:Postman的监控功能可以定期执行集合,检查API性能和可用性,但其压力测试能力有限。 在选择压力测试工具时,如果你需要进行复杂、大规模的并发测试,那么Apache JMeter是理想的选择。而Postman更适合...
1. **WinRunner**: 企业级功能测试工具,支持自动录制、检测和回放,优化测试流程,特别适合检测应用程序功能和运行情况。 2. **QARun**: 自动回归测试工具,相对WinRunner学习成本较低,需安装.NET环境,可与...
工具包含 e-Tester、e-Load 和 e-Monitor,这三种工具分别对应功能测试、压力测试以及应用监控,每一部分功能相互独立,测试过程又可彼此协同。 E-Test Suite 的优点是能够对 web 应用程序进行全面性的测试,能够...