`
wuhua
  • 浏览: 2114262 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

如何在服务器端的Java应用程序上使用Rational PurifyPlu

阅读更多

1.        安装 Rational PurifyPlus 的三个工具( Quantify,pureCoverage,Purify

2.        安装 jdk jre ,配置好你的运行环境

3.        设置 JDK,JRE 环境变量

JAVA_HOME:   C:\j2sdk1.4.2_09

Path:        %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

CLASSPATH:   .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar

 

4.        设置 PurifyPlus 环境变量

    _JAVA_OPTIONS:-XrunPureJVMPI:Purify (or Quantify or Coverage)

5.        为了正确的建立允许使用 PurifyPlus Java 运行环境,建立完一个新的 Java 服务后,在第一次开始成型之前你必须执行以下命令行:在你的 quantify (或 coverage purify )的安装目录下

  


pstart
<or qstart, or cstart>/setup



 例:





   D:\Program Files\Rational\PurifyPlus>qstart /setup

   D:\Program Files\Rational\PurifyPlus>pstart /setup

   D:\Program Files\Rational\PurifyPlus>cstart /setup

     不论是否成功,这个命令都不会返回结果,如果配置成功,可以在 C:\j2sdk1.4.2_09\jre\lib\security\java.policy 文件的末尾,找到这样一段内容

/* RATIONAL SOFTWARE. BCI grant */

/* DO NOT EDIT BELOW THIS LINE */

grant {

           permission java.lang.RuntimePermission "loadLibrary.QProfJ";

                  permission java.io.FilePermission "C:/j2sdk1.4.2_09/jre/lib/ext/x86/QProfJ.dll", "read";

};

同时你可以在 C:\j2sdk1.4.2_09\jre\lib\ext\X86 文件夹下找到 QProfJ.dll 文件

 

补充说明:在以下三种情况下必须进行这项配置:

(1)       java 应用服务器在 PurifyPlus 之后安装。

(2)       系统默认的 JVM 在安装 PurifyPlus 之后改变了。

(3)       Java 应用服务器没有使用默认的 JVM

  附原文说明(本人 E 文较烂,担心翻译有错)

  This step has to be performed in case the Java application server is installed on the system after PurifyPlus, or if the default JVM for the system is changed after PurifyPlus installation, or if the Java application server doesn't use the default JVM.

 

6.        设置 Profile.ini 文件中的过滤(也可以在 GUI 中设置, GUI 中设置不能在运行时过滤,只是在结果中过滤),可以在结果中减少和自己的方法无关的数据。

主要过滤以下服务器(找到和你的服务器对应的包过滤就可以了),如果你的服务器不属于这几个,过滤掉你服务器对应的包。

注意:每个包后的“ . ”要写,如果不写,只过滤这个包,不过滤他的子包

IBM WebSphere 4

BEA WebLogic 6.1

ApacheJakartaTomcat 4

Sun J2EE SDK1.3.1

Silverstream 3.7

      例:

     Profile.ini文件在你的rational安装目录的公共目录下

     我的是在D:\Program Files\Rational\PurifyPlus下,找到[PreFilters],象下面那样添加要过滤的包名。
[PreFilters]
java.
javax.
sun.
com.sun
org.omg.
org.xml.
org.w3c.
COM.
com.beasys.
com.adventnet.
weblogic.
bea.
com.bea.
antlr.
bsh.
c8e.
dcom.
db.
org.enhydra.
com.fourthpass.
org.apache.
rational.robot.
com.inprise.
com.linar.
com.ibm.
com.caucho.
ibm.
org.eclipse.
org.modzilla.

7.        都设置完了,运行你的服务器,然后对应的 PurifyPlus 工具会自动运行,直到你停掉你的服务器。接下来就可以分析收集到的数据了。

特别说明:

2003.06.00 版本的 PurifyPlus level 级别运行时不支持 eclipse 的类加载器(在他们的文章里我有看见 level 级的数据,所以我考虑换 JB

原文如下:

PurifyPlus does not work with the Eclipse class loader when attempting to collect profiling information at the line level. The error message that will be seen at run time is the following:
java.lang.NoClassDefFoundError: Rational/QProfJ

To circumvent this problem, you must collect profiling information at the function level. This can be done as follows:
For Purify: In Settings>Executable Settings>Power Check, set the Default Profile Level to function.
For PureCoverage: In Settings>Executable Settings>Power Check, set the Default Coverage Level to function.
For Quantify: In Settings>Executable Settings>Power Check, set the Default Measurement Level to function.

 

如果你在运行 Quantify 的时候出现这些错误:

错误:

Exception in thread "main" java.lang.NoClassDefFoundError: Rational/QProfJ

目前看到的解决思路大部分都是把这些包在 ini 文件里过滤掉。还有一种方法是在 Quantify.java 里修改,但是这个方法我看了觉得有问题(主要是觉得这几个语法 java 里都不成立),列出来大家看看。

补充说明,下面这个方法是针对 Solaris 操作系统

可以在这个链接看到原文:

http://www-1.ibm.com/support/docview.wss?uid=swg21118703

 

If you are using2002a.06 or 2003.06, add the following prefilters list to .quantify.java file. You can modify the default .quantify.java file in Quantify home directory, or create a new one in your home directory.

prefilters * java.
prefilters * javax.
prefilters * org.omg.
prefilters * org.xml.
prefilters * org.apache.
prefilters * rational.robot.
prefilters * com.inprise.
prefilters * com.linar.
prefilters * com.ibm.
prefilters * ibm.
prefilters * org.eclipse.
prefilters * org.modzilla.

If you are using2003a.06.00.Proto.0090 or later, instead of excluding third party packages, include only the packages/classes that you are interested in.

For example, to profile only the package "MyCompany", create .quantify.java file with below lines:

classes_to_profile * selective
include * MyCompany.*

 

 

结束了 ~~~

出现过一堆问题,基本都是在 ibm 的网站上找到答案的,而且都是英文,看的好累啊,不过真正解决了也很有成就感哦,呵呵 ~~~

分享到:
评论

相关推荐

    Windows2000 服务器端应用程序开发设计指南

    存取控制(2) 08-05-01 Windows2000 服务器端应用程序开发设计指南-存取控制(3) 08-05-01 Windows2000 服务器端应用程序开发设计指南-使用者环境 08-05-01 Windows2000 服务器端应用程序开发设计指南-安全连接(1) ...

    Rational 方法 java实现 数据量

    Java是一种多平台的、面向对象的编程语言,被广泛应用于服务器端开发,尤其在大数据处理领域。它的特性如垃圾回收、自动内存管理以及丰富的类库使得处理大量数据变得高效且易于管理。 2. **数据量处理**: 在处理...

    Java程序测试环境配置.doc

    在配置环境变量 _JAVA_OPTIONS 时,可以选择性的配置 Rational PurifyPlus 通过 Java 虚拟机假脱机接口(JVMPI)来收集所有关于 Java 应用程序的信息。 第五步骤:加载 PurifyPlus 共享文件 在加载 PurifyPlus ...

    rational

    本文档的目标是指导用户使用IBM Rational Product Updater来安装Fix Pack 6.0.1.1。通常推荐直接从IBM的更新服务器进行在线安装,但如果没有安装Refresh Pack 6.0.1或更高版本,建议先下载zip文件,再执行本地安装。...

    使用RationalRose进行UML可视化建模.doc

    在Rational Rose中,用户可以使用UML模型生成程序代码。生成的代码可以是Java、C++、VB等编程语言。 创建数据库设计 在Rational Rose中,用户可以使用UML模型创建数据库设计。创建的数据库设计可以是关系型数据库或...

    Rational.java

    Rational类是实现Java进行分数运算时,运算的结果也用分数的形式进行显示,而不是默认的小数进行显示。

    IBM Rational Software Architect(RSA)6.0课件

    综上所述,“Servlet and JSP Development with IBM Rational Application Developer V6”课程为Java开发者提供了一个深入学习服务器端应用程序开发的机会。通过本课程的学习,参与者不仅能掌握必要的技术技能,还能...

    详解IBM Rational Functional Tester 的工作原理.docx

    被测应用程序运行在服务器端进程,而录制、回放、对象查看器和 IDE 等工具运行在客户端进程。这两个进程之间的通信确保了 RFT 能够有效地控制和监控被测应用程序的行为。 8. **RFT 的交互流程**: 在测试过程中,...

    介绍Java和OOP的Web应用程序Introduction to Java and OOP for Web Applications

    关于Java编程语言的介绍,书中讨论了Java的设计目标、如何获取Java环境、编写第一个Java应用程序以及Java程序的基本构成。例如,Java的基础数据类型、字符串处理、数组、流控制、循环等概念都被涉及。此外,书中还...

    面向对象程序设计实验——编写Rational类

    本文可为初学面向对象的读者提供面向对象程序设计实验——编写Rational类的代码样例,代码完整清晰,建议先通过查看本人博客理清思路,自己编写然后看示例检查,有利于学习

    Essentials of IBM Rational Functional Tester, Java Scripting

    - **Java 环境搭建**:讲解如何配置Java开发环境,以便于在RFT中使用Java脚本。 - **Java 语法概览**:提供Java语言的基础知识,包括变量、数据类型、控制结构等。 - **集成RFT与Java**:介绍如何将Java脚本与RFT相...

    如何使用测试工具Rational Purecoverage、Rational Purify、Rational Quantify、Rational Robot

    它可以在应用程序运行时收集性能数据,如CPU使用率、内存消耗等,然后通过可视化的方式展示出来,使用户能快速理解性能问题所在。通过Quantify,你可以模拟不同的负载条件,测试在高并发场景下的系统性能,从而针对...

    IBM rational 使用手册

    它支持多种应用程序和技术环境,包括但不限于 Web、Java、.NET、SAP 和 PeopleSoft。RFT 通过录制用户交互并将其转换为测试脚本来实现自动化。 #### 二、RFT 的主要特点 - **多平台支持**:RFT 支持多种开发环境和...

    rational robot 使用手册

    1. **录制与回放**:Robot 可以通过录制用户在应用程序上的操作来生成测试脚本,然后在后续的测试中回放这些脚本来验证程序行为的一致性。 2. **对象识别**:使用先进的对象识别技术,即使应用程序的对象属性有所...

    Rational Robot使用手册

    Rational Robot 使用手册概述 Rational Robot 是一种自动化测试工具,由 IBM 公司开发,旨在帮助软件开发者和测试工程师自动化测试过程,提高测试效率和质量。下面是对 Rational Robot 使用手册的详细解释和知识点...

    使用RationalRose进行UML可视化建模

    通过以上步骤,开发者可以使用Rational Rose构建出一个详尽的《在线选修课程管理系统》模型,从而更好地理解、设计和实现系统。这种可视化建模方法不仅提高了开发效率,也促进了团队间的沟通和协作。

    Rational Functional Tester for Terminal Application

    Rational Functional Tester (简称RFT) 是一款强大的自动化测试工具,广泛应用于各种应用场景中,包括Web、Java、.NET、Flex以及终端应用程序等。它支持多种脚本语言,并具备智能识别功能,能够帮助测试人员快速创建...

    Rational Robot基础使用手册

    - **GUI脚本**:Rational Robot通过记录用户在应用程序上的操作来创建GUI脚本,这些脚本包含了一系列的点击、输入和导航等动作。 - **预定义**:在录制脚本前,可以预先定义一些变量和对象,使得脚本更具有通用性。 ...

Global site tag (gtag.js) - Google Analytics