2010-05-20 51 views
1

我有一个奇怪的场景......在做UT的EMMA覆盖时,我得到的总覆盖区覆盖范围大于线路覆盖范围。Emma - 区块覆盖率vs线路覆盖

对于区域覆盖范围,总大小约为50,000,而线路覆盖范围超出18,000。

报告中我得到(块覆盖值)/ 50,000和(线覆盖值)/ 18,000。

可能吗?块的数量如何超过代码中的行数?

顺便说一句,你可以假设我知道什么块覆盖为:http://emma.sourceforge.net/faq.html#q.blockcoverage

回答

1

可以很容易地得到在同一行的多个块,例如:

int i = j > 0 ? j : -j; 

包含3块(guestimate)。如果你喜欢密集的代码块可以超过这些线。

+0

但很少我们有这个代码。 – 2010-06-09 12:20:35

+1

是的,只是一个例子,还有其他方法可以在一条线上获得多个块。 – iwein 2010-06-12 07:53:29