JProbe使用说明

来源:互联网 发布:穿越火线怎么优化 编辑:程序博客网 时间:2024/05/01 00:50

1.演示环境说明:

11HP个人台式电脑配置:

CPU

奔4,1.8G

Memery

512M

Disk

40G

OS

Windows2000

 

 

Software

①Bea WebLogic 6.1SP3

②Oracle920

③JProbe5.0

④Jbuilder8.0

⑤UltraEdit10.0

⑥Toad7.3

12演示内容

1、 代码覆盖工具JPCoverage(重点说明)

2、 内存调试工具Memory Debugger(粗略说明)

12相关资料

① 数据库(SID:wangbl)中的测试数据

② 测试要素文档(doc)

③ xml文件

④ 测试结果单(xls)

13其他预配置

修改bea/ctais/config.xml,如下:

 

 

UserID="ctais2"

JTS="" //原来为jdbc.ctais

Password="oracle"

DefConnectionNum="5"

MaxConnectionNum="20"

JdbcDriver="oracle.jdbc.driver.OracleDriver"

JdbcUrl="jdbc:oracle:thin:@tinawang:1521:wangbl" >

 

3.JPCoverage详细说明

JPCoverage的主界面:

31单机运行(不启动服务器)

3.1.1创建session

在下拉菜单“session”中点击“new session”,弹出窗口。

 

1、 Program Setting(程序设置)

① 选择“Standalone Application(单机)”

② 在“Main Class(主类)”中填写测试机的完整类名,也可以按旁边的“…”键进行选择。

③ 点击“More”,弹出一个对话框:

Main Class

测试机的完整类名

Tip:ctais.test.

Working Directory

指定测试机后,会缺省自动带出,也可以修改。

Arguments

为测试机的main函数传递变量

CLASSPATH

程序运行需要引用的类的路径

Tip:可以从Jbuilder中直接粘贴过来。

Java Virtual Machime

Java虚拟机

Tip:如果你安装过jdk,这里会显示c:/winnt/system32/java.exe为缺省的java虚拟机,如果不合用,请另外指定。这里选用c:/bea1/jdk131/bin/java.exe

2、 Data Collection Setting(数据收集设置)

指定要“覆盖”和要“排除”的包、类或方法,步骤如下:

① 选择一行,点击旁边出现的“…”按钮,在弹出的对话框中选择一个jar包,右边出现一个类树,选择一个包或类或方法,点“确定”。

② 主窗口中出现了刚才选择的包、类或方法,在旁边选择“exclude(排除)”或“include(覆盖)”。

③ 可以这样指定多个要“覆盖”或要“排除”的包、类或方法。

④ 其他设置,多选:

Take Snapshot at Exit

退出时取一个快照

Ignore abstract method

忽略抽象方法

Start Recording at Program Start

从程序开始时记录

Report Only Method-level Coverage

只覆盖方法,缺省为行

Tip:我们要求覆盖到行。

3、Runtime Settings(运行设置)

① 有三种“View Runtime Data”方法,任选其一:

Not View

在内存小的时候可以选择这种方法

Local

在本地console上显示

Remotely

在远程console上显示,运行时,服务器会一直等待指定的远程 console连接,直到连接成功后才继续运行。

Tip:我们选用“Not View”。

② 指定“快照”保存的位置

4、保存

到这里我们已经完成了Session的设置,点击顶端的“Save”按钮,保存成(jpl)文件。

3.1.2运行

有两种运行方法,任选其一:

1、 在Session窗口点“Run”,或在主界面工作条上点“|>”。

2、 启动command(cmd),在Dos窗口下输入:

jplauncher -Djava.compiler=NONE -jp_input=e:/jprobe/try2.jpl

Tip:使用第二种方式可以不用启动jpcoverage的主界面,这样可以节省内存,程序运行完后,快照会保存在jpl文件中指定的目录下。

3.1.3分析单个快照

在jpcoverage主窗口1中选择一个(jpc)快照文件,对其进行分析,主要步骤如下。

1、 右键单击一个“快照”,在弹出的菜单中选择“”,打开一个独立的窗口2,如下图:

 

 

2、 在新的窗口2中会显示出所有在前边的配置中选择“覆盖”的包、类或方法的情况。这是一个表(table)结构,分纵向和横向说明。

横向

缺省初始显示“包”的覆盖情况,这些包都是树状结构,可以打开以显示其下的类;类也都是树状结构,可以打开以显示其下的方法。

纵向

从左到右依次显示“覆盖的对象”、“被调用的次数”、“未覆盖的方法数”、“全部方法数”、“未覆盖到的代码行数”、“总代码行数”。

Tip:窗口2提供菜单,可以对上面的显示格式进行配置,在这里就不详述了,大家可以自己体会。

3、 我们选择一个包,点开它,显示该包中的所有类;选择一个类,点开树,显示该类中所有非抽象方法;双击一个方法,会弹出一个对话框,让你指定java源文件的位置。指定后,会关闭该对话框,弹出另外一个独立的窗口3(如下图)显示java源文件的内容,光标停在刚才选择的方法的开始处。用红色标明的行,为没有覆盖到的行。在窗口3的右上端有一个下拉列表,可以在这里选择要看的方法。

 

4、 看未覆盖的行的情况,区分以下三种情况:

其他分支

在本快照中无法确定这些分支的覆盖情况,需要组织新的测试。

如上图中的第30行。

本分支内容错行

这不是真正的未覆盖到,可以忽略不计。

如上图中的第37、38行

本分支内冗余行

这才是真正的未覆盖行,继续相关处理。

3.1.4合并多个快照

一个业务可能有多个测试用例,每个测试用例覆盖一些分支,所有测试用例的集合要保证覆盖到所有的分支。每一个测试用例我们取一个快照,这些快照单个来看实际意义不大,只有合并在一起来分析意义才最大。

合并步骤如下:

① 在主窗口1的下拉菜单“SnapShot”中选择“Merge”,会弹出一个对话框。

在对话框的左边会出现所有可用的快照(jpc),选择要进行合并的快照到右边。

② 在对话框上端的“Output File”输入框中指定合并后的快照的名字

③ 点击“OK”,合并完成

④ 对合并后的快照进行分析。

Tip:建议对一个业务的所有快照进行合并,统计该业务的代码覆盖情况。

32联机测试(启动服务器)

3.2.1创建Session

在下拉菜单“session”中点击“new session”,弹出窗口。

1、Program Setting(程序设置)

① 选择“Using Application Server”,选择“weblogic 6.1”

② 点击“more”,在弹出的对话框中配置weblogic6.1

2、Data Collection Setting(数据收集设置)

使用方法同单机运行。

3、Runtime Setting(运行设置)

使用方法同单机运行。

下图显示一个配置好的Session:

3.2.2运行

1、 启动wlserver6.1

有两种运行方法,任选其一:

①在Session窗口点“Run”,或在主界面工作条上点“|>”。

②启动command(cmd),在Dos窗口下输入:

jprun wls61

>input jpl file : e:/test/test1.jpl

2、 局域网内其他PC,均可以启动iexplorer.exe,从前台开始运行。

① 在Http Url中输入:http://tinawang:7001/ctais

② 打开待测业务的前台,完成一个测试用例。

③ 在Jpcoverage的主窗口上点击“Take SnapShot”,抓取快照,保存快照,

④ 在适当的时候选择“清空数据”

3、 分析快照

同“单机运行”

4、 结束

在主窗口的工作条上选择“○”,关闭weblogic服务器。

原创粉丝点击