zoukankan      html  css  js  c++  java
  • 性能测试工具-jmeter初学(一)

    1.   win环境的安装

    1.1.  jdk的安装

    File : 下载jdk-8u60-windows-x64.exe,双击安装,选择安装路径,例如:

    C:Program FilesJavajdk1.8.0_60

    更改环境变量

     

    在系统变量中:新建

    变量名:JAVA_HOME

    变量值:C:Program FilesJavajdk1.8.0_60

    变量名:CLASSPATH

    变量值:.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar;

    设置path属性,变量名:path

    变量值:%java_home%in;%java_home%jrein;

    此属性一般都是有的,只需添加即可,注意分号的问题

    测试安装是否成功:在doc下输入javac,弹出如下信息,就代表成功了。

     

    1.2.  Jmeter的安装

    1. 下载 apache-jmeter-2.13.zip 解压,放在自己合适的位置。
    2. 插件安装

    直接将JMeterPlugins-Standard-1.3.1.zip解压后,文件放在

    D:jmeterapache-jmeter-2.13libext下。

    1. 启动:

    apache-jmeter-2.13injmeter.bat 运行该脚本,启动图形界面。

     

    2.   Linux的安装

    2.1.  Jdk

    vi /etc/profile 添加如下信息:

    export JAVA_HOME=/export/servers/jdk1.7.0_75

    export JAVA_BIN=/export/servers/jdk1.7.0_75

    export PATH=$JAVA_HOME/bin:$PATH

    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    export  JAVA_OPTS="-Djava.library.path=/usr/local/lib -server -Xms1024m -Xmx2048m -XX:MaxPermSize=256m -Djava.awt.headless=true -Dsun.net.client.defaultReadTimeout=60000 -Djmagick.systemclassloader=no -Dnetworkaddress.cache.ttl=300 -Dsun.net.inetaddr.ttl=300"

    export JAVA_HOME JAVA_BIN PATH CLASSPATH JAVA_OPTS

    2.2.  Jmeter

    直接cp到某一目录即可使用。

    例如:/export/servers/apache-jmeter-2.13 (java的特性:一次编译,到处运行。)

    1.   Jtl的数据处理

    由以下命令产生的 jtl 可以按照如下方法进行数据分析:

    ./bin/jmeter -n -t ./jiaoben/duojiaoyi.jmx  -l ./duojiaoyi1.jtl

    1.1.  把jtl下载到win

    用jmeter的图形界面:聚合报告 打开此文件

     

    1.2.  JMeterPluginCMD

    JMeterPluginCMD命令行工具生成png图片和csv统计文件。(参考脚本:File :  2csv.sh)

    生成png图片:

    java -jar $CMDRunnerPath/CMDRunner.jar  --tool Reporter --generate-png ThreadsStateOverTime.png --input-jtl  1.jtl  --plugin-type ThreadsStateOverTime

    生成csv格式:

    java -jar $CMDRunnerPath/CMDRunner.jar  --tool Reporter --generate-csv ThreadsStateOverTime.csv --input-jtl  1.jtl  --plugin-type ThreadsStateOverTime

    也可以统计指定时间段的数据:

    java -jar $CMDRunnerPath/CMDRunner.jar  --tool Reporter --generate-csv ThreadsStateOverTime.csv --input-jtl  1.jtl  --plugin-type ThreadsStateOverTime  --start-offset 60 –end-offset 300

    整个时间和选择时间的2张图分别如下。

     

    也可以一次性生成两个文件。下面是改命令的参数:

    l  –generate-png 指定png图片文件

    l  –generate-csv 指定csv文件名

    l  –input-jtl 指定要解析的jtl文件

    l  –plugin-type 指定要输出的数据类型,比如响应时间、cpu使用率、错误率等

    l  AggregateReport = JMeter’s native Aggregate Report, can be saved only as CSV 聚合报告

    l  SynthesisReport = mix between JMeter’s native Summary Report and Aggregate Report, can be saved only as CSV

    l  ThreadsStateOverTime = Active Threads Over Time 线程数随时间的变化曲线

    l  BytesThroughputOverTime 流量随时间的变化曲线

    l  HitsPerSecond 点击率随时间的变化曲线

    l  LatenciesOverTime 延迟随时间的变化曲线

    l  PerfMon = PerfMon Metrics Collector 服务器参数随时间变化曲线注意这个需要在jmx脚本中添加,服务器监控,要指定ip、端口、监控项,还需要指定perfMon的输出文件,或者在命令行指定,如sh jmeter.sh -n -t HTTP请求-baidu.jmx -l 2.jtp -JforcePerfmonFile=true,

    l  这样会输出在当前路径

    l  ResponseCodesPerSecond 响应码随时间变化曲线

    l  ResponseTimesDistribution 响应时间分布

    l  ResponseTimesOverTime 响应时间随时间变化曲线

    l  ResponseTimesPercentiles 响应时间的百分比

    l  ThroughputVsThreads 吞吐率随线程变化曲线

    l  TimesVsThreads = Response Times VS Threads 响应时间随线程变化曲线

    l  TransactionsPerSecond 事务随时间变化曲线

    l  PageDataExtractorOverTime

    l  MergeResults

    2.   Server机器资源的监控及数据分析

    2.1.  监控及结果下载

    File : 下载:nmonTool.zip

    File :  Nmon的分析结果项说明:nmon分析文件各sheet含义.docx

    修改 monTooldatasConfig.xml “服务器配置信息”,指定要监控的机器ip, 登录用账户及密码。

    运行 monTooldos.bat, 使用如下命令工作:

    run setup 安装nmon文件(配置文件NmonRoot来修改)

    run start 运行nmon文件(目前默认间隔120秒,执行200次)

    run stop  停止nmon文件

    run download 下载nmon结果(至当前目录下)

    2.2.  结果分析

    File :  monTool mon analyser v34a-64.xls

    选择要分析的文件,得到详细的分析结果。

    File : 请参考结果文件:nmon结果数据及分析demo.zip

     

    3.   接口测试

    File :  TestLength.zip (myeclipse 工程)

    4.   Jconsole & jvisualVM的配置方式

    1. 启动服务的可远程监控端口

    /export/Domains/域名.jd.com/server1/bin/start.sh

    在JAVA_OPTS中添加如下信息:

    -Dcom.sun.management.jmxremote.port=1210 (开放1210端口)

    -Dcom.sun.management.jmxremote.ssl=false

    -Dcom.sun.management.jmxremote.authenticate=false

    -Djava.rmi.server.hostname=192.168.170.39

    重启该server1

    netstat -ano | grep "1210" 查看该端口是否启用

    1. Win上,在jdk的安装目录下例如:C:Program FilesJavajdk1.8.0_60in 下启动 jconsole.exe,界面如下:

     

     

    1. jVisualVM与jconsole的连接方式相同。

     

  • 相关阅读:
    Python爬取Boss直聘,帮你获取全国各类职业薪酬榜
    【深入浅出etcd系列】1. 架构概览
    00041_类与接口的关系
    ASP.NET MVC4 部分视图
    Ueditor编辑器 从word中复制内容带多张图片
    百度Ueditor编辑器 从word中复制内容带多张图片
    百度Ueditor 从word中复制内容带多张图片
    C#.NET实现大文件上传
    .NET实现大文件上传
    asp.net实现大文件上传
  • 原文地址:https://www.cnblogs.com/Apple010/p/5104585.html
Copyright © 2011-2022 走看看