c 關於throw的unit test 寫法

2021-10-01 16:04:25 字數 717 閱讀 7834

在做unit test時,發現有的try,catch語句中會有throw語句,雖然觀察同事的**中對於這樣的語句通常不做測試,但有時因為特殊要求或者乾脆為了追求測試百分比,還是要學會如何進行測試,記錄一下今天學到的測試方法。

原理:當程式進入需要測試的原**中並執行到throw語句時,如果上一層語句中也有throw語句,那麼將不會直接返回error,而是會跳轉到上一層語句的throw語句中。所以,我們只需要在測試程式的語句中加入throw語句,並設定好應有的assert語句即可。

例子:

原程式:

public

void

test()

catch

(exception ex)

}

unit test:

bool testresult =

true

;try

catch

今天寫test時突然意識到,有的catch後面會跟著exception,也就意味著返回上一層的throw中會有錯誤的詳細資訊,這種情況下,**改為下面的寫法會更為準確。

unit test:

bool testresult =

true

;try

catch(exception ex)

Java異常處理的throw和throws的區別

1.區別 throws是用來宣告乙個方法可能丟擲的所有異常資訊,throws是將異常宣告但是不處理,而是將異常往上傳,誰呼叫我就交給誰處理。而throw則是指丟擲的乙個具體的異常型別。2.分別介紹 throws 用於宣告異常,例如,如果乙個方法裡面不想有任何的異常處理,則在沒有任何 進行異常處理的時...

關於異常處理中throw和throws的關係

1.throw和throws存在於 抓拋模型 的異常處理模式中。2.throw是異常生成的一種方式,存在於異常物件的產生,一般寫在方法體內。throws是異常處理的一種方式,一般寫在方法頭上,宣告異常的丟擲。自我理解 1.也可以說throw和throws存在配合關係,先有throw生成異常,然後通過...

C 函式後面的throw

看智慧型指標auto ptr實現的時候發現了這麼個東東 explicit auto ptr ty ptr 0 throw0 myptr ptr 巨集 throw0 define throw0 throw 函式後面的這個throw 代表什麼意思呢?它是函式提供者和使用者的一種君子協定,標明該函式不丟擲...