回答:如果沒有執行程式碼中的所有分支,則會指出一行為部分涵蓋。
下面是幾個範例:
呼叫 methodA 的行就是部分涵蓋,因為有兩個路徑:不是擲出並捕捉到異常狀況,就是未擲出異常狀況且程式正常執行。在未擲出異常狀況的情況下, 會指出部分涵蓋面,因為 catch 部分永遠不會執行。
在上面的範例中,行 4 被標示為部分涵蓋。請注意,無論是使用哪一個建構子來建立物件實例,都一律會執行實例變數起始設定碼。編譯器會同時在兩個建構子中放入起始設定碼。因此上述程式碼大約相等於:

由於我們僅使用一個建構子,因此並沒有執行另一個執行路徑,也就指出部分涵蓋面。
回答:我們在報告套件中的總行數時會排除在不同方法之間共用的所有行,因此那些行不會重複計數。
回答:如果類別沒有明確的預設建構子,編譯器則會自行產生一個,由於產生的建構子是隱含的,因此可能與該程式碼行相關聯。其次,如果您有任何靜態起始設定碼(例如靜態欄位),編譯器則會產生靜態起始設定區塊,這些區塊也可能與該行相關聯。
回答:設定多個接受準則(例如,方法與區塊)時,如果不符合其中任何一個準則,則指示器就會顯示為紅色。選取程式碼涵蓋面內容,然後啟用指示器和百分比,即可設定接受準則。選取程式碼涵蓋面喜好設定,然後啟用指示器(方法、區塊等等),即可設定顯示的涵蓋面指示器。 顏色將取決於使用「內容」頁而非「喜好設定」頁所設定的準則。
回答:下列各行不計為已涵蓋、未涵蓋或部分涵蓋,也不用來計算涵蓋的百分比:
回答:執行檔單位是從每個基本區塊的起頭開始,且又從原始碼行號與前一個位元組碼不同的每個位元組碼開始。基本區塊是一個位元組碼指令區域,既不能從其中分支出來,也不能分支到其中執行。基本區塊中的第一個指令執行時,會一併執行所有的指令,因此這些指令會被視為單一群組。
基本區塊以諸如 branch、call、throw 和 return 之類的指令而結束。
回答:這是由於程式碼涵蓋面資料收集方式的原因。若要避免發生這個問題,您需要使用逐行過濾器: