簡體   English   中英

在引發多個異常的測試用例中使用assertRaises()

[英]assertRaises() in a test cases that raises multiple exceptions

是否可以將assertRaises與多種類型的異常一起使用。 就像是

assertRaises(RuntimeError, "error message")
assertRaises(Exception, "exception message")

這兩個錯誤都在同一調用中的不同位置出現在我的代碼中。

我該如何寫一個singel assertRaises語句來處理這兩個問題。

可以想象,當僅提及一種執行時,單元測試用例就會失敗。

直接來自文檔

測試是否使用還傳遞給assertRaises()的任何位置或關鍵字參數調用callable時引發了異常。 如果引發異常,則測試通過;如果引發另一個異常,則測試通過;如果未引發異常,則測試通過。 為了捕獲一組異常中的任何一個,可以將包含異常類的元組作為異常傳遞。

因此,您的代碼應如下所示

assertRaises((RuntimeError, IndexError), "error message")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM