我爲我的最新Python項目設置了一個CI管道(如果有問題,請提供Gitlab CI),併爲我仍想實現的事件添加了幾個測試用例。在每個測試案例中,我提出了一個NotImplementedError
,因爲它還沒有實現。抑制鼻子中特定類型的異常
import unittest
class GenericTest(unittest.TestCase):
def test_stuff(self):
"""I'll fill this in when I come around to it."""
raise NotImplementedError
通常,我希望這些測試失敗,因爲還沒有正常工作。但是,當我推送到我的存儲庫並且測試在CI系統上運行時,我想跳過這些測試。我已經知道他們會'失敗',他們掩蓋了實際失敗的測試。
是否有辦法抑制這些異常或特定類型的異常(如IKnowThisWillFailError
),以便受影響的測試不計爲「失敗」?
你真的養在測試誤差區分? 如何在應用程序中創建方法並在那裏引發錯誤,然後您可以在測試中除了錯誤之外,直到您實現該功能。 –
@JanZeiseweis我這樣做,因爲它測試的功能需要添加到已經存在的函數中,並且它(應該)測試複雜的邊界情況。因此,爲了提高應用程序中的錯誤,我需要首先實現邊緣案例檢測和處理。我意識到這不是合適的TDD程序,因爲它使得「測試案例」更像是一種「待辦事項」,並且提醒說這個測試仍然缺少實際測試。 – m00am