Jacoco覆盖率信息收集2

当一个函数的信息收集完毕,如何将其MethodCoverageImpl添加到类信息中ClassCoverageImpl

//指令for循环完毕,执行MethodAnalyzer coverage.incrementMethodCounter();
[jacoco:report] MethodCoverageImpl incrementMethodCounter   
//计算getCoveredcoune 不等于0,说明该函数有指令被执行,设置base=CounterImpl.COUNTER_0_1
[jacoco:report] CounterImpl getCoveredCount 7
//根据base对methodCounter增量(原来是00)
[jacoco:report] MethodCoverageImpl incrementMethodCounter   methodCounter
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report]  CounterImpl Fix increment missed+covered01
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]01
//对complexityCounter,进行增量
[jacoco:report] MethodCoverageImpl incrementMethodCounter   complexityCounter
[jacoco:report] CounterImpl increment(final ICounter counter) 
//传递过来的是01
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report]  CounterImpl Fix increment missed+covered01
[jacoco:report] CounterImpl getInstance missed covered
//原来是10,之前有个if判断,所以现在变成了11
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]11

//MethodAnalyzerz执行完毕,下面回到ClassaAnalyzer中
//回到visitMethod中,if (methodCoverage.getInstructionCounter().getTotalCount() > 0) 判断调用
[jacoco:report] ClassAnalyzer getCoverage
[jacoco:report] MethodAnalyzer getCoverage
//下面进入ClassCoverageImpl中addMethod(final IMethodCoverage method)函数

//其increment(method)调用SourceNodeImpl中increment(final ISourceNode child)函数
//在SourceNodeImpl中
//下面对各个counter进行increment
//getInstructionCounter
[jacoco:report] CoverageNodeImpl getInstructionCounter
[jacoco:report] CounterImpl getTotalCount   11
[jacoco:report] ClassAnalyzer coverage.addMethod
[jacoco:report] ClassCoverageImpl addMethod
[jacoco:report] SourceNodeImpl iincrement(final ISourceNode child)  
[jacoco:report] CoverageNodeImpl getInstructionCounter
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  4
[jacoco:report] CounterImpl getCoveredCount 7
[jacoco:report]  CounterImpl Fix increment missed+covered47
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]418
//getBranchCounter
[jacoco:report] CoverageNodeImpl getBranchCounter
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  1
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report]  CounterImpl Fix increment missed+covered11
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]11
//getComplexityCounter
[jacoco:report] CoverageNodeImpl getComplexityCounter
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  1
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report]  CounterImpl Fix increment missed+covered11
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]12
//getMethodCounter
[jacoco:report] CoverageNodeImpl getMethodCounter
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report]  CounterImpl Fix increment missed+covered01
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]02
//getClassCounter
[jacoco:report] CoverageNodeImpl getClassCounter
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report]  CounterImpl Fix increment missed+covered00
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]01

//下面是if判断
//判断firstLine != UNKNOWN_LINE
[jacoco:report] SourceNodeImpl getFirstLine 11
[jacoco:report] SourceNodeImpl iincrement(final ISourceNode child)  firstLine != UNKNOWN_LINE
[jacoco:report] SourceNodeImpl getLastLine  
//进入ensureCapacity,更新行数
[jacoco:report] SourceNodeImpl  ensureCapacity else
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
//进入if (newLength > lines.length)
[jacoco:report] SourceNodeImpl  ensureCapacity 更新lines长度
//ensureCapacity函数执行结束
//其实这个child应该是MethodCoverageImpl
//为每一行分别进行increment
[jacoco:report] SourceNodeImpl iincrement(final ISourceNode child)  for
[jacoco:report] SourceNodeImpl getLine  11
[jacoco:report] SourceNodeImpl getFirstLine 11
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] LineImpl ICounter getBranchCounter()
[jacoco:report] SourceNodeImpl incrementLine
[jacoco:report] SourceNodeImpl  ensureCapacity else
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] SourceNodeImpl getLine  11
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] CounterImpl getTotalCount   0
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] LineImpl Fix increment
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 3
[jacoco:report]  CounterImpl Fix increment missed+covered03
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]03
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  1
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report]  CounterImpl Fix increment missed+covered11
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]11
[jacoco:report] LineImpl getInstance
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 3
[jacoco:report] CounterImpl getMissedCount  1
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report] CounterImpl getTotalCount   3
[jacoco:report] CounterImpl getCoveredCount 3
[jacoco:report] 22
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report]  CounterImpl Fix increment missed+covered01
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]05

[jacoco:report] SourceNodeImpl iincrement(final ISourceNode child)  for
[jacoco:report] SourceNodeImpl getLine  12
[jacoco:report] SourceNodeImpl getFirstLine 11
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] LineImpl ICounter getBranchCounter()
[jacoco:report] SourceNodeImpl incrementLine
[jacoco:report] SourceNodeImpl  ensureCapacity else
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] SourceNodeImpl getLine  12
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] CounterImpl getTotalCount   0
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] LineImpl Fix increment
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  4
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report]  CounterImpl Fix increment missed+covered40
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]40
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report]  CounterImpl Fix increment missed+covered00
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]00
[jacoco:report] LineImpl getInstance
[jacoco:report] CounterImpl getMissedCount  4
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] CounterImpl getTotalCount   4
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] 11
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  1
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report]  CounterImpl Fix increment missed+covered10
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]15

[jacoco:report] SourceNodeImpl iincrement(final ISourceNode child)  for
[jacoco:report] SourceNodeImpl getLine  13
[jacoco:report] SourceNodeImpl getFirstLine 11
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] LineImpl ICounter getBranchCounter()
[jacoco:report] SourceNodeImpl incrementLine
[jacoco:report] SourceNodeImpl  ensureCapacity else
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] SourceNodeImpl getLine  13
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] CounterImpl getTotalCount   0
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] LineImpl Fix increment
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report]  CounterImpl Fix increment missed+covered00
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]00
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report]  CounterImpl Fix increment missed+covered00
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]00
[jacoco:report] LineImpl getInstance
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] CounterImpl getTotalCount   0

[jacoco:report] SourceNodeImpl iincrement(final ISourceNode child)  for
[jacoco:report] SourceNodeImpl getLine  14
[jacoco:report] SourceNodeImpl getFirstLine 11
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] LineImpl ICounter getBranchCounter()
[jacoco:report] SourceNodeImpl incrementLine
[jacoco:report] SourceNodeImpl  ensureCapacity else
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] SourceNodeImpl getLine  14
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] CounterImpl getTotalCount   0
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] LineImpl Fix increment
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 3
[jacoco:report]  CounterImpl Fix increment missed+covered03
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]03
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report]  CounterImpl Fix increment missed+covered00
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]00
[jacoco:report] LineImpl getInstance
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 3
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] CounterImpl getTotalCount   3
[jacoco:report] CounterImpl getCoveredCount 3
[jacoco:report] 22
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report]  CounterImpl Fix increment missed+covered01
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]16

[jacoco:report] SourceNodeImpl iincrement(final ISourceNode child)  for
[jacoco:report] SourceNodeImpl getLine  15
[jacoco:report] SourceNodeImpl getFirstLine 11
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] LineImpl ICounter getBranchCounter()
[jacoco:report] SourceNodeImpl incrementLine
[jacoco:report] SourceNodeImpl  ensureCapacity else
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] SourceNodeImpl getLine  15
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] CounterImpl getTotalCount   0
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] LineImpl Fix increment
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report]  CounterImpl Fix increment missed+covered00
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]00
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report]  CounterImpl Fix increment missed+covered00
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]00
[jacoco:report] LineImpl getInstance
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] CounterImpl getTotalCount   0

[jacoco:report] SourceNodeImpl iincrement(final ISourceNode child)  for
[jacoco:report] SourceNodeImpl getLine  16
[jacoco:report] SourceNodeImpl getFirstLine 11
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] LineImpl ICounter getBranchCounter()
[jacoco:report] SourceNodeImpl incrementLine
[jacoco:report] SourceNodeImpl  ensureCapacity else
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] SourceNodeImpl getLine  16
[jacoco:report] SourceNodeImpl getFirstLine 4
[jacoco:report] SourceNodeImpl getLastLine  
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] CounterImpl getTotalCount   0
[jacoco:report] LineImpl ICounter getInstructionCounter()
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] LineImpl Fix increment
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report]  CounterImpl Fix increment missed+covered01
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]01
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report]  CounterImpl Fix increment missed+covered00
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]00
[jacoco:report] LineImpl getInstance
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 0
[jacoco:report] CounterImpl getTotalCount   1
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report] 22
[jacoco:report] CounterImpl increment(final ICounter counter) 
[jacoco:report] CounterImpl getMissedCount  0
[jacoco:report] CounterImpl getCoveredCount 1
[jacoco:report]  CounterImpl Fix increment missed+covered01
[jacoco:report] CounterImpl getInstance missed covered
[jacoco:report]  CounterImpl getInstance SINGLETONS[][]17
[jacoco:report] CounterImpl getCoveredCount 2
//整个执行结束,返回ClassCoverageImpl中addMethod函数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值