欢迎来到天天文库
浏览记录
ID:23351221
大小:1.85 MB
页数:13页
时间:2018-11-07
《性能测试工具optimizeit使用方法》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、性能测试工具OptimizeIt使用方法一、性能测试基本步骤我们先以一个JAVAApplication为例演示怎样进行测试.1、运行OptimizeIt,如果是安装后第一次运行会自动出现EditSettings对话框。如图1所示图1设置jvm运行参数2、ProgramType中选择Application;3、击ProgrammainclassorJarfile框右边的Browse按钮,选择需要进行性能测试的.class或.jar文档,现选中OptimizeIt中的例程ZXCOMCRV2.5.03_3GVer_2004-05-09umsums-clntrun.jar4、选中VirtualM
2、achines控件,确定列表中是否列出了本机JDK的安装路径,如果没有,则点击Addvirtualmachines..按钮,下面跟着wizard提示一步步把本机的JDK加入到列表中,如图2所示图2jdk设置路径和方法2、在classpath中加入运行所需的jar或路径,对wsf为:ZXCOMCRV2.5.03_3GVer_2004-05-09umsums-clntlibZXCOMCRV2.5.03_3GVer_2004-05-09umsums-clntkernelserverdefaultlibZXCOMCRV2.5.03_3GVer_2004-05-09umsums-c
3、lntkernellibZXCOMCRV2.5.03_3GVer_2004-05-09umsums-clntkernelbinrun.jarsoucepath为空svr类似二、内存性能测试启动测试程序后,OptimizeIt窗口自动打开内存监测器,如图3所示。内存监测器列出了测试程序中包含的所有类以及为每一个类实时分配的对象实例的数量。下面介绍一下怎样使用内存监测器来分析例程中的内存使用情况。图31.点击Instancecount列可以根据对象分配实例的数目对class进行归类2.在窗口下面的Filter框中输入java.util.*,回车,可以将类限制在java.util.*中
4、。3.在内存监测器中可以看到很多对象实例的数目在动态的增加和减少。增加是因为分配了新的对象实例,而减少是由于java的垃圾回收。如果只想看到对象的分配,可以点击窗口右下方的Disablegarbagecollector按钮,这时就可以只看到所有的分配的对象实例数目。4.在堆列表中选中感兴趣的类,现选中java.awt.color类,然后点击按钮,可以转换到对象实例的分配追溯模式,如图4所示。图4我们可以使用内存监测器最小化临时对象的分配。临时对象分配很快,但过多的这种临时对象会使垃圾回收十分繁忙。对于大多的java虚拟机而言,当垃圾回收处于繁忙状态时,相应的会使java程序冻结几百毫妙。如果分
5、配了太多了临时对象,会使用户明显的感觉到程序运行速度变慢。此外,OptimizeIt的内存监测器可以使我们更好的理解为什么有些对象不被垃圾回收,下面步骤描述怎样使用内存监测器确定某一指定对象实例的信息以及是否正在被回收或能否被垃圾回收。1)点击按钮,回到内存监视器的堆模式;2)我们选择显示与图像相关的类,在filter框中输入*Image*,回车,结果如图5所示;图51)选择javax.swing.ImageIcon行2)点击图标,显示对象实例的信息,如图6所示;图6窗口的上面显示了实例的描述信息,中间部分显示了哪些对象引用了选中的实例,以及回归引用该对象实例的对象。对于图中我们选中的类,由于
6、ImageIcon对象被其他对想引用,所以它不能被垃圾回收。最下面的部分显示了中间段选中的实例的分配方法回溯。三、CPU监视器的使用CPU监视器象是一个存放在java虚拟机中的记录设备,可以使我们看到对象消耗的时间,下面步骤介绍怎样使用CPU监视器获得被测程序的CPU利用和时间花费信息。1、点击按钮,如图7所示;图72、点击按钮,开始记录测试程序的CPU使用情况;3、让程序运行大约30秒左右,再次点击刚才的按钮,CPU监测器会显示所记录的时间段的监测信息,如图8所示;图84.点击Timeprofileroutput标题下的下拉框,下拉框中显示了在虚拟机中运行的所有线程,我们选中AWT-Even
7、tQueue-0线程,如图9所示;图95.扩展EventDispatchThread.pumpOneEvent()方法,一直到出现方法methodJComponent.paintWithBuffer().,如图10所示;图10其中表示该方法立刻调用了其他方法;表示该方法真正占用了CPU6.选中JComponent.paintWithBuffer().,如果把鼠标停留在该方法所在位置,过一会儿,可以
此文档下载收益归作者所有