没有合适的资源?快使用搜索试试~ 我知道了~
单元测试工具Jprobe简明使用手册
需积分: 9 8 下载量 62 浏览量
2010-09-20
15:46:34
上传
评论 1
收藏 372KB DOC 举报
温馨提示
试读
19页
Jprobe Suite是Sitraka公司研制的一组针对Java的单元测试工具,帮助解决Java代码的缺陷以实现Java的最大效能,共包括Memory Debugger、Profiler、Threadalyzer、Coverage等四个独立工具
资源推荐
资源详情
资源评论
单元测试工具 Jprobe 简明使用手册
软件产品部 马金钱
一、 概述
Jprobe Suite 是 Sitraka 公司研制的一组针对 Java 的单元测试工具,帮助解决 Java
代 码 的 缺 陷 以 实 现 Java 的 最 大 效 能 , 共 包 括 Memory
Debugger、Profiler、Threadalyzer、Coverage 等四个独立工具,其中 Threadalyzer 和
Coverage 被称作程序校正(Correctness)工具,Threadalyzer 通过找出程序中的死锁和
空值以检验线程的正确性, Coverage 用来报告程序的测试覆盖率和未测试覆盖 ,
Memory Debugger 和 Profiler 被称作程序性能工具,Memory Debugger 帮助发现因不足
参数管理和对象的过度分配而引起的内存泄漏,Profiler 通过统计程序各部分的运行时
间帮助找出程序的性能瓶颈。Jprobe 的每个工具都可支持两种类型的应用:独立应用
(Standalone Application)和基于应用服务器的应用(Using Application Server)。因四
个工具的参数配置等步骤相同,以下首先就以 Coverage 为重点详解介绍 Jprobe 的安装、
参数配置、建立新应用等过程,然后再分别以图示介绍各工具的不同运行结果。
二、 主要功能
1、 分析本地运行的 J2EE 应用和 J2SE 应用;
2、 分析远程机器上运行的 J2EE 应用和 J2SE 应用;
3、 通过使用过滤器聚焦你的代码;
4、 监控被收集的数据(Jprobe Coverage 除外);
5、 保存数据到快照文件;
6、 以高级图形用户界面回顾快照文件;
7、 在源代码中标识问题的方法或行;
8、 把 快 照 文 件 同 基 线 进 行 比 较 ( 只 针 对 Jprobe Profiler 和 Jprobe Memory
Debugger);
9、 通过触发能自动进行分析(Jprobe Threadalyzer 除外);
10、 通过创建和运行自动化脚本能规则地校验代码;
三、 安装
可以进行 Jprobe Suite 的安装,也可以单独安装某一单一工具,安装过程同一般软
件的安装过程类似,只是在安装最后的注册过程较为繁琐,它实行严格的许可证管理,
注册前,须向 Sitraka 公司发送你本机的一些认证信息,Sitraka 公司再通过 email 寄给
你许可证文件进行注册。登陆 www.sitraka.com
网站,可下载注册一个 10 天的试用版。
具体的安装和注册场景不在此详述,安装完成后,在开始菜单中如图 1 所示:
图 1
四、 应用前提
Jprobe 只是用于做单元测试,而不能进行程序的编译和调试,因此,
使用 Jprobe 做单个程序应用或基于服务器应用测试之前,一定要保证程
序已进行编译并能成功运行。
五、 独立应用(Standalone Application)使用
以下以一个小 Java 程序 myquery.Java 为例,演示如何用 Jprobe Coverage 测试独立
应用程序中方法和代码的覆盖率,该程序功能是向数据库表中查询,源代码如下:
import java.sql.*;
import javax.sql.DataSource;
import javax.naming.*;
import java.lang.*;
import java.util.*;
public class myquery
{
public static void querydata() throws Exception
{
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
String uri = "jdbc:hsqldb:hsql://localhost";
int i=0;
try{
try{
Class.forName("org.hsqldb.jdbcDriver").newInstance();
}
catch(java.lang.ClassNotFoundException e)
{
System.err.print("ClassNotFoundException: ");
}
try{
conn = DriverManager.getConnection(uri,"sa","");
}
catch (SQLException e)
{
System.out.println(e.getMessage().toString());
}
stmt = conn.createStatement();
String sql="select * from wf_task where state=1";
try
{
rs = stmt.executeQuery(sql);
}
catch (SQLException e)
{
System.out.println(e.getMessage().toString());
}
while (rs.next())
{
i++;
System.out.println(rs.getString(1)+" "+rs.getString("task_id"));
}
System.out.println("total "+i+" record!");
System.out.println("Query Sucessful!!");
}catch(Exception e)
{
System.out.println(e.getMessage().toString());
}
finally
{
rs.close();
stmt.close();
conn.close();
}
}
public static void main(String arg[]) throws Exception
{
myquery hello = new myquery();
hello.querydata();
}
}
1、 启动 Coverage
点击图 1 中的 Jprobe Coverage,运行后出现图 2
图 2
2、 设置运行参数(Preferences)
点击 Edit 中的 Preferences,进入图 3
图 3
根据个人喜好及需要可点击每个页签进行设置。
3、 建立新应用设置(Settings)
点击 Session 中的 New Settings…
剩余18页未读,继续阅读
资源评论
zh_xuhui
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功