JProbe生成的单元测试性能分析报告
生成的HTML报告提供了执行摘要,为全部测试定义了下面的度量值:
- 单元测试数量
- 代码覆盖总量(带有类,方法,代码行,和忽略条件的细节)
- 内存改变合计
- 对象改变合计
- 测试时间合计
报告中详细的覆盖部分可以分析到单个的包、类和方法。如果你发现了一个引起你注意的类或方法,需要寻找额外的覆盖信息,可启动JProbe交互式的控制 台,根据已记录的快照,你可以根据每行代码的覆盖提示直接浏览源代码。不需要提供所有的测试结果,并且能很容易地传送到开发机器作更深的诊断。
详细的内存和性能报告部分可以按每个测试用例分析到每个相应的报告。。内存报告显示了测试用例(按照完成后堆中的字节数量排序),并且包括了上层的对象类 型,对象数量,每个对象类型字节数。与覆盖报告类似,所有内存成果都被保存,用于JProbe控制台的交互式浏览。在本用例中,为每一个测试用例都有一套 在堆快照运行之前和之后的数据,可以交互式地跟踪到创建在堆中残留对象的代码行。
最后,详细的性能报告部分显示了每一个测试用例,按照测试用例总时间排序,包括每一个对测试用例响应时间可测量贡献的方法。它包括了单个方法执行时间,累积方法执行时间,还有在异常中结束执行的数量。
图2 展示一个示例的单元测试性能分析报告的执行概要屏幕照片
这个报告的目的是提供一个快速的应用程序性能参考给开发经理、领导小组、首席信息官、或其它任何有兴趣的参与者。它提供了应用性能以业务为核心的概要,并 允许用户为深入诊断下钻到个别的应用组件。理想情况下,一个开发经理或领导小组会评估这份报告,寻找性能缺陷,并将性能问题分派到合适的开发人员。开发人 员可以收到有问题的组件的详细情况,并可获得适当的JProbe快照诊断问题。
通过集中和维护这些报告,开发经理和领导小组可以快速判断应用性能的趋势。然后,他们可以在应用本身出现问题之前,迅速地优先处理糟糕的组件,控制性能问 题恶化。此外一个更有价值的功能是,每份报告可以保存为XML格式,与HTML等同,正阳可以在每次建造之间进行自动作趋势和影响分析。